Add a script to initialize external repos manually
Here is the full sequence implemented to handle external package.
- if the source is directly git cloned. CMake directly uses git submodule command assuming internet is available in this case.
- if the build is using tarball and there is internet. CMake handles git init and fetch the source based on submodule_commit_hash_records
- if git fetch failed because of no internet or other reasons. Users can execute initialize_external_repos.sh to manually initialize all the files of external repos. If needed, transfer "external" folder from a machine with internet to a machine without.
Hopefully this covers all use cases.
I also tried first "initialize_external_repos.sh" to initialize all external packages and then use configure. There is no conflict with the pre-initialized devxlib. If we can add the same logic 1,2,3 in configure, we can fully avoid storing source code in archive.
closes #331 (closed)
Edited by Ye Luo