Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
public:user_software:reorganization_of_the_software_collection [2011-11-04 11:29] – Lars Bahren | public:user_software:reorganization_of_the_software_collection [2017-03-08 15:27] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 7: | Line 7: | ||
- [[# | - [[# | ||
- [[#Summary of current status]] | - [[#Summary of current status]] | ||
+ | - [[# | ||
- [[# | - [[# | ||
Line 12: | Line 13: | ||
* [[http:// | * [[http:// | ||
+ | * [[http:// | ||
==== Summary of current status ==== | ==== Summary of current status ==== | ||
Line 42: | Line 44: | ||
* Uncertain of their CMake knowledge capabilities. | * Uncertain of their CMake knowledge capabilities. | ||
- | ==== Changelog | + | ==== Suggested changes |
+ | __Design goals__ | ||
+ | |||
+ | - Better modularity: split collection into smaller sub-projects. | ||
+ | - (Optional) common core: allow sharing of build environment. | ||
+ | - Enable stand-alone development of individual software packages. | ||
+ | |||
+ | ==== Changelog ==== | ||
+ | * Demonstration of how to handle package in the case the source code is not part of the original checkout from the repository: the RM-Synthesis package now can be build both as part of a full check-out from the LUS code repository as well as being dynamically fetched in case the sources reside in another repository. <code cmake> | ||
+ | if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/ | ||
+ | ## | ||
+ | ## Package is part of the current code tree | ||
+ | ## | ||
+ | ExternalProject_Add (rm | ||
+ | PREFIX ${CMAKE_CURRENT_BINARY_DIR}/ | ||
+ | DOWNLOAD_DIR download | ||
+ | SOURCE_DIR source | ||
+ | URL ${CMAKE_CURRENT_SOURCE_DIR}/ | ||
+ | CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DRM_WITH_ITPP=${RM_WITH_ITPP} -DRM_WITH_ARMADILLO=${RM_WITH_ARMADILLO} | ||
+ | ) | ||
+ | else (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/ | ||
+ | ## | ||
+ | ## Package is not part of current code tree - fetch sources from repository | ||
+ | ## | ||
+ | ExternalProject_Add (rm | ||
+ | PREFIX ${CMAKE_CURRENT_BINARY_DIR}/ | ||
+ | DOWNLOAD_DIR download | ||
+ | SOURCE_DIR source | ||
+ | SVN_REPOSITORY http:// | ||
+ | CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DRM_WITH_ITPP=${RM_WITH_ITPP} -DRM_WITH_ARMADILLO=${RM_WITH_ARMADILLO} | ||
+ | ) | ||
+ | endif (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/ | ||
+ | </ | ||
+ | * Merged contents of '' | ||
+ | * Moving contents of '' | ||
\\ | \\ |