WIP: Move dynamic dependencies to separate files
This is the first of many merge requests and script which move the dynamic dependencies from Git controlled Makefiles and into temporary files created by srcbuild and calling Makefiles. When cleaning the files are likewise deleted.
- Git tools, such as
git gui
will not show the Makefiles as modified and offer to commit the changes. - It will be possible checkout different versions without cleaning the source tree and recompiling from scratch.
- It will be possible to build RISC OS with a security policy that does not allow modification of source files.
How to apply these changes:
- Apply this merge request.
- Consider other srcbuild merge requests.
- Compile and add to RiscOS/Library>.
- Apply RiscOS/Env!3 (closed)
- Checkout an IOMD build tree.
- Checkout the branches in the submodules using
git submodule foreach 'branch="$(git config -f /dev/fd/4/.gitmodules "submodule.$name.branch")"; git checkout "${branch:-master}"' 4<.
- Run
move_dependencies.py RiscOS
from https://gitlab.riscosopen.org/snippets/5 - Add the changes
git submodule foreach git add -A
- Run the build.
- Create needed .gitignore files:
git submodule foreach 'git status --porcelain | sed -n "s:^?? :/:p" >> .gitignore'
This also adds entries for other built files. - Delete
RiscOS/Export/.gitignore
. - Add the .gitignore files:
git submodule foreach add .gitignore
. - Commit the changes
git submodule foreach git commit -m 'Commit message'
- Test and push changes.
- Apply any other merge requests (I have about 9 more merge request in the IOMD build to-do for this).
- Repeat for other products.
This an improved resubmission of changes sent by email.