Updating CMake files to latest trunk. Added dependency information for regression tests and a few new macros for internal use.

[SVN r49627]
This commit is contained in:
Michael A. Jackson 2008-11-07 17:02:56 +00:00
parent 631632fb94
commit 9a856769ee
73 changed files with 158 additions and 73 deletions

View file

@ -38,7 +38,7 @@ message(STATUS " BJAM BASED SYSTEM INSTEAD. IF YOU STILL WANT TO TRY IT OUT PLEA
message(STATUS " OUT THE LINE 'message(FATAL_ERROR \"\")' THAT APPEARS IN THE FILE ")
message(STATUS " ${Boost_SOURCE_DIR}/CMakeLists.txt FILE.")
message(STATUS "##########################################################################")
message(FATAL_ERROR "")
#message(FATAL_ERROR "")
##########################################################################
# Version information #
@ -56,6 +56,7 @@ set(BOOST_VERSION "${BOOST_VERSION_MAJOR}.${BOOST_VERSION_MINOR}.${BOOST_VERSION
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
if (FALSE)
# ---------- Setup output Directories -------------------------
SET (LIBRARY_OUTPUT_PATH
${PROJECT_BINARY_DIR}/lib
@ -69,7 +70,7 @@ SET (EXECUTABLE_OUTPUT_PATH
CACHE PATH
"Directory for all Executables."
)
endif(FALSE)
##########################################################################
@ -241,6 +242,6 @@ add_subdirectory(${BOOST_LIBS_DIR})
# Add build rules for all of the Boost tools
# TODO: On hold while I work on the modularity code
# add_subdirectory(tools)
add_subdirectory(tools)
##########################################################################

View file

@ -41,6 +41,10 @@ add_subdirectories(" + " ${BOOST_SUBPROJECT_DIRS})
set(BOOST_DEPENDENCY_GRAPHVIZ_FILE "${Boost_BINARY_DIR}/dependencies.dot")
file(WRITE ${BOOST_DEPENDENCY_GRAPHVIZ_FILE} "digraph boost {\n")
foreach(SUBDIR ${BOOST_SUBPROJECT_DIRS})
string(TOUPPER "BOOST_${SUBDIR}_COMPILED_LIB" BOOST_COMPILED_LIB_VAR)
if (${BOOST_COMPILED_LIB_VAR})
file(APPEND ${BOOST_DEPENDENCY_GRAPHVIZ_FILE} " \"${SUBDIR}\" [style=\"filled\" fillcolor=\"#A3A27C\" shape=\"box\"];\n ")
endif (${BOOST_COMPILED_LIB_VAR})
string(TOUPPER "BOOST_${SUBDIR}_DEPENDS" DEPENDS_VAR)
if(DEFINED ${DEPENDS_VAR})
foreach(DEP ${${DEPENDS_VAR}})
@ -49,4 +53,5 @@ foreach(SUBDIR ${BOOST_SUBPROJECT_DIRS})
endforeach()
endif()
endforeach()
file(APPEND ${BOOST_DEPENDENCY_GRAPHVIZ_FILE} " \"test\" [style=\"filled\" fillcolor=\"#A3A27C\" shape=\"box\"];\n ")
file(APPEND ${BOOST_DEPENDENCY_GRAPHVIZ_FILE} "}\n")

@ -1 +1 @@
Subproject commit 750e5d3e2774f57c42fc2e1b081552d2d166ebda
Subproject commit bbc210b07b299c89cbc31942911a6f575fa109b9

@ -1 +1 @@
Subproject commit bff2a1e1128fcaf898e8a0f2d6b766893a298152
Subproject commit 1188575e7beb1face3284462aeed75db463da6b5

@ -1 +1 @@
Subproject commit e5c34bdf1a53160f93b4487a9d934644158dac6e
Subproject commit cd038b4f8dc7b26d49ce55fd3a2feb69b08ed971

@ -1 +1 @@
Subproject commit a6b531b5b1a7a2ef2d770096b5ae557671ac1ff0
Subproject commit b3ace9fb6ebbea9d44a3ef720f4983884c34ae77

@ -1 +1 @@
Subproject commit 2825aaaff611cdbc23feab2429a23ac056f1129f
Subproject commit 02ac45ba963d929cb1be5ba9edd22d527bb34a07

@ -1 +1 @@
Subproject commit 025ef7678d9310b6bbdc847ec5469d7a68403d08
Subproject commit 4169acc6c652a438dfd253409665154cb3ca1bfc

@ -1 +1 @@
Subproject commit eb5c91bdb3aa0bac9a9fe42faf209e28f7a99907
Subproject commit 645d9d6901fba109fa936adf0f5ebf50e0e21939

@ -1 +1 @@
Subproject commit 61519fcae29b2ea9e86732aed4f7adf7fb735a25
Subproject commit 0b72bfbd9ba52a48a363c8be7aca43b1266a7b46

@ -1 +1 @@
Subproject commit 9ff6fa759ac306980e499b3cab6e0c0325be3e34
Subproject commit 83d617f9e4523eaae48d94cca3aa4ed09fd243a1

@ -1 +1 @@
Subproject commit 80de3d1903d7f89ad5855a3025062c9f7622fb85
Subproject commit 30dc63f52f14babbf67bc2900fa976e7fc2c1662

@ -1 +1 @@
Subproject commit e4d4157b5aab60bdd13bc88554259f9145af1209
Subproject commit 99052817e287980577bc2ed9de69ea24bd8976f6

@ -1 +1 @@
Subproject commit 4217a354f5c48ac557c162716a82a5ac6aed553f
Subproject commit b72cb10ae69867e11b54b0767e30c580795f79b4

@ -1 +1 @@
Subproject commit 7f6c27631705b16777898bfc8a2c29de5903cb83
Subproject commit 84fdd8b1a42bd4674c577497380fcd4d3538bd8a

@ -1 +1 @@
Subproject commit ac3a5b489ace5ea91882e1b54ca025a525f082ca
Subproject commit e68bd489a6c8cd0107eeb1848ec0bca1adc32c72

@ -1 +1 @@
Subproject commit 59825bc8db26ce66bc50c5b8fe2179025f5e4264
Subproject commit a143af6e2fd0f490a1aa8f2a05d687db59f1392d

@ -1 +1 @@
Subproject commit 8e75a12330ba2b1174e7f60795f2a547ae2527c0
Subproject commit 5d92a68e687b7872b15af3e72fd4b5a8863e465a

@ -1 +1 @@
Subproject commit 5cde8da58783032095fe0a9d6f7cf568f9d20dbf
Subproject commit 7e43b381e4b051f7d9e3c3dc487edb4f965896ff

@ -1 +1 @@
Subproject commit 7ce53a230783b8170c383200fcd55aaae575f22d
Subproject commit f8dc734a174b842638ba0f3b90bc9f95cd59ecaa

@ -1 +1 @@
Subproject commit 9eb939261e665af7871c85bd41da40f1b00ffb35
Subproject commit e2d59110923c4b2d50276de6833a1cee93b18663

@ -1 +1 @@
Subproject commit 07800455a89babc061e3dc72b75a6cb03048a7d5
Subproject commit e8504c1777dcad593c2e01ceaaab6fc8a462ebe5

@ -1 +1 @@
Subproject commit e60e1b82aaeb1e053d0776d4aa4d515997a189e8
Subproject commit ee8ed76bc519af1eda7a6c66fc2aca18f54d19b4

@ -1 +1 @@
Subproject commit 2a964ed2a66c5b48518773388ef231f5b5ef4ca5
Subproject commit 9912c9f90a0a7d8cafed8040dd786f8ee707ed4f

@ -1 +1 @@
Subproject commit 143f65c464cbf5a8930cf280479df8da59f7232e
Subproject commit 7057c056856d74dbb3d0941bc659a4fd3d9d429c

@ -1 +1 @@
Subproject commit 5c899afa22257a2de6844c33fe486bbb77c3d77a
Subproject commit 4f9ce0c88d3fb6a8362119c1eb6f5ea95b2844c6

@ -1 +1 @@
Subproject commit c7e9da65513d7f86adf1659a33bc6e7aed167d36
Subproject commit 768023af1ad3aad4c5336977fa6f992ee325642f

@ -1 +1 @@
Subproject commit 96f9913aa8a55aa625c6509bcccad7c22d4946ca
Subproject commit 74c8c4439251f5fd7d9e6f7e4ea9f93c3072cab1

@ -1 +1 @@
Subproject commit 3b31c330d5a1daaf187136306e67350ad28147fc
Subproject commit 25d1746f8aefc91fd63fe7881f761a5be48e8b50

@ -1 +1 @@
Subproject commit d9b4ac9da4ea80e1389dacd23e9dfe72c08acd5a
Subproject commit 3943ddbd10aac60612a6622c71ae5a64cfba7bce

@ -1 +1 @@
Subproject commit b0ec5a759b074c7f6129a60f41d1adbf1bcb78ca
Subproject commit 835498603d4fd2aaa413d9f6aad840b516779a83

@ -1 +1 @@
Subproject commit d56abd61ce1a00a3e271e5eed2bafecfcbb47ef0
Subproject commit ec350abf0605aa25f19f6620a623ea025a7ccc66

@ -1 +1 @@
Subproject commit 9df9f3daf6edff385a3cac5edad7f1be81009c56
Subproject commit 84313760a57d9029543b12abfe0c121e4fe1b0c5

@ -1 +1 @@
Subproject commit abc4d313b44d719aa964c73cf65c62697a68d7ec
Subproject commit 4829421fad85951cc5cc5d8b39d8bcb11553c612

@ -1 +1 @@
Subproject commit 627df8a3e495ab463dc1a5f6af87f37f7a709ea5
Subproject commit 47ef4abb7567ac75b555aa2ca45312397b6bec0d

@ -1 +1 @@
Subproject commit 74bdc378eaa8b3c55d9b2dd50852beb32ff324f0
Subproject commit 59b2f369d161dcb4543d5dfa5136e35834d1eec5

@ -1 +1 @@
Subproject commit 32bc9b2c3fbad23051e49a4480c953c0c354e0c5
Subproject commit 475516baca77bf06168be8ba42faf8298e86dfea

@ -1 +1 @@
Subproject commit 03ebcdd0f4fae40d264c6bb45c202329c0e120b7
Subproject commit 11f09a35587410b127503cd38f326aab20e9cc70

@ -1 +1 @@
Subproject commit d6e932c038998d4451147755bb039aa24de6cbd1
Subproject commit 3c72670b7f9502ead808488d407249e4bee118eb

@ -1 +1 @@
Subproject commit 35b7d664dc0c1941c3a61d038218980f3ebf02a3
Subproject commit 30bd0eab6440ca76e54898a727d6f473e6eaca7d

@ -1 +1 @@
Subproject commit cbc0a9357d4b3750f0907237df8f20c83868809b
Subproject commit 7a2ef17bd731ab7e43832d5379203f1247c9d57a

@ -1 +1 @@
Subproject commit 2af3ec341bdc7075242731a02f4b731383b7f2b5
Subproject commit e7d7b014d2db71085436149a6edfbdc25c26d636

@ -1 +1 @@
Subproject commit 55792af45f96f240002457a6be637935d84baf1c
Subproject commit f9a2fba9ab37406d7ac6016cccd3b4ce9d03cbc8

@ -1 +1 @@
Subproject commit d8ae450285e3fac3f53054dfab447382af5cd08d
Subproject commit e7fa10f428e0283ad997fa9a21173b532b9a10a3

@ -1 +1 @@
Subproject commit c213502e2c4786ede533dd89d2001805142bbd73
Subproject commit 8ed342548ef835328aaa3443881f654101a8aa27

@ -1 +1 @@
Subproject commit 23019ff2ef79b36cf29ce30a519433e08ab65c46
Subproject commit ea2b3099940761263dcb1cf82cf560370e7a53bc

@ -1 +1 @@
Subproject commit dcb61a53a33dfb76527c40c1a3bb3b2b6af3e484
Subproject commit 180bebbe1c3c8f62f5b2f31dff9a2a834ae7d666

@ -1 +1 @@
Subproject commit 41c994af2a95043fdcc15b5578a7120c8059c43e
Subproject commit f30d00f62c861a0af06f32e145950ed90ee64241

@ -1 +1 @@
Subproject commit a23b21efd658e66cdd13421b5b25ae2a88be7655
Subproject commit d02069ce177004f5c5d56621396bc7f221c07fda

@ -1 +1 @@
Subproject commit f7e2e3bf5ac354c81d24b95c701a4688050639be
Subproject commit 6db7919bed5527bb7f7a547d65f85f2b4e624bbb

@ -1 +1 @@
Subproject commit 5cda75ebe702c89ef5d757795cc6211be4d2ca3b
Subproject commit 7d2f44b21e3933c1cfec8f34f503fac177bed3c7

@ -1 +1 @@
Subproject commit b641e0b484c3b6c4bdacbd411aeaf477f63c4cd6
Subproject commit dce702454b6675e9b32cb3152f708ea5739fbf8e

@ -1 +1 @@
Subproject commit a65512ed5c5a6f2f2ea7f78a23d8382deae2ff87
Subproject commit 5e7948667e983c2b165afea66b1650dd30431d44

@ -1 +1 @@
Subproject commit ac4f2e9484802316acc04bd167978c1815d36c5e
Subproject commit c199efeaa31c3ffc56df0f9eb337e3e2e290f9a8

@ -1 +1 @@
Subproject commit 85192b703d4909068d002c8baa0d7a008de22e32
Subproject commit 330f23e84c2663f0b663e2383c1369d1874f5fcb

@ -1 +1 @@
Subproject commit bd53f9b877a7f9c01a4c767f6817c36acdb02678
Subproject commit 93e0f250931349937f389405d9a5737cebc11359

@ -1 +1 @@
Subproject commit 56c1df4e61151c05f58bbbcde94137613d790963
Subproject commit c7ecbb6814c9d56747304bd83c72a8dfb4995744

@ -1 +1 @@
Subproject commit d9b9921d236f43d3d1f01521224ae044d0845b71
Subproject commit c40b30664750da870f97be7c616e6c4ba5186f20

@ -1 +1 @@
Subproject commit 16fa9c543936ab63387a16bd84386ed19966d3a4
Subproject commit 01e11a8481322fd590e40a993865b35827249cb9

@ -1 +1 @@
Subproject commit 5439ddd9cce3e476323619a80e14b6b819f541ee
Subproject commit 4f0949106fde7c52b209f91c51e1cee9784a62b1

@ -1 +1 @@
Subproject commit 9e0550d1403e46d63008171add0e3ef2d7c44600
Subproject commit f4dab6aac5e183563486317460f0fe506a6c1df7

@ -1 +1 @@
Subproject commit f1998ed0e0904d425e8b7ae7ac3d247028ff58a0
Subproject commit 4d1432733e5086160ac70d40150b7f898d2e86e8

@ -1 +1 @@
Subproject commit 3dbdc0c6a3cdfa6fee90b63383a21d578191d900
Subproject commit ea00b485b9f7d7c0d317a826187df242e466520a

@ -1 +1 @@
Subproject commit 36a4d1dcb7fb98ae415ae3394ce4251bc8a8de81
Subproject commit e4ff3b23353d1d4c57aa7e7d1dccd51c7e00e1b7

@ -1 +1 @@
Subproject commit 776be602e508e609222c8cb122e4ea7caf8d2641
Subproject commit 4e452cb734c1dde597cf46dc09492348cef1bd1e

@ -1 +1 @@
Subproject commit f2a646b417957bff84185fd9d5677ed0e94ec141
Subproject commit 2d046d3f9f4c91b098109e9c28f3ca7909536122

@ -1 +1 @@
Subproject commit 403c6f5cc6c35affd116df24f86bf3b3386ee1c9
Subproject commit 2b38c9f32c566083bc3d9c4887e66e3dd24b33a5

@ -1 +1 @@
Subproject commit 366c09f199ed16b9d286ca9718b6d5fcee301d14
Subproject commit 1f4d8e7c21b326052282b3af678cb39b9903dbb3

@ -1 +1 @@
Subproject commit ebe853ff2f4c0419c12ad084b18bbdd6ea056617
Subproject commit 53f6d106527b0293a98dbdf05f7619f7fc294fcd

@ -1 +1 @@
Subproject commit 7df722ef6e9aaa3dae920a89aaea91da961c9047
Subproject commit 0fe5e2e874023202fd399bd5342fe7c827b09e48

@ -1 +1 @@
Subproject commit b42287c8e9fd44cf70d5f39c63c4ae72d7aa7471
Subproject commit d1bc9aba82b471c3eda097cc36832723fbff3fad

View file

@ -1,3 +1,82 @@
# return a list of directories that we should add_subdirectory()
macro(boost_collect_lib_dependencies varname filename)
#message(STATUS "boost_collect_lib_dependencies.... ${Boost_SOURCE_DIR}/libs")
file(GLOB BOOST_LIBRARY_CMAKE_FILES
RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${Boost_SOURCE_DIR}/libs/*/${filename}")
foreach(BOOST_LIB_CMAKE_FILE ${BOOST_LIBRARY_CMAKE_FILES})
#message(STATUS "-- BOOST_LIB_CMAKE_FILE: ${BOOST_LIB_CMAKE_FILE}")
get_filename_component(BOOST_LIB_DIR ${BOOST_LIB_CMAKE_FILE} PATH)
set(${varname} ${${varname}} ${BOOST_LIB_DIR})
endforeach(BOOST_LIB_CMAKE_FILE ${BOOST_LIBRARY_CMAKE_FILES})
endmacro(boost_collect_lib_dependencies varname)
# Find all of the subdirectories with .cmake files in them. These are
# the libraries with dependencies.
boost_collect_lib_dependencies(BOOST_MODULE_DIRS "module.cmake")
foreach(subdir ${BOOST_MODULE_DIRS})
# message(STATUS "${Boost_SOURCE_DIR}/libs/${subdir}/module.cmake")
include("${Boost_SOURCE_DIR}/libs/${subdir}/module.cmake")
endforeach(subdir)
###############################################################################
# This macro is an internal utility macro
# TODO: Document this if it stays around
#
#
# example usage:
# boost_tool_dependencies( BOOST_DEPENDS test)
#
macro(boost_tool_dependencies)
parse_arguments(BOOST_TEST
"BOOST_DEPENDS"
""
${ARGN}
)
set (THIS_TEST_DEPENDS_ALL "")
# message (STATUS "BOOST_TEST_BOOST_DEPENDS: ${BOOST_TEST_BOOST_DEPENDS}")
foreach(libname ${BOOST_TEST_BOOST_DEPENDS})
# message(STATUS "libname: ${libname}")
string(TOUPPER "BOOST_${libname}_DEPENDS" THIS_PROJECT_DEPENDS)
# message(STATUS "${THIS_PROJECT_DEPENDS}: ${${THIS_PROJECT_DEPENDS}}")
# set(THIS_TEST_DEPENDS_ALL ${libname} ${${THIS_PROJECT_DEPENDS}} )
# message(STATUS "${THIS_TEST_DEPENDS_ALL}: ${${THIS_TEST_DEPENDS_ALL}}")
list(FIND THIS_TEST_DEPENDS_ALL ${libname} DEPDEP_INDEX)
if (DEPDEP_INDEX EQUAL -1)
list(APPEND THIS_TEST_DEPENDS_ALL ${libname})
set(ADDED_DEPS TRUE)
endif()
string(TOUPPER "BOOST_${libname}_DEPENDS" THIS_PROJECT_DEPENDS)
# message(STATUS "${additional_lib}: ===> ${${THIS_PROJECT_DEPENDS}}")
set(ADDED_DEPS TRUE)
while (ADDED_DEPS)
set(ADDED_DEPS FALSE)
foreach(DEP ${THIS_TEST_DEPENDS_ALL})
string(TOUPPER "BOOST_${DEP}_DEPENDS" DEP_DEPENDS)
foreach(DEPDEP ${${DEP_DEPENDS}})
list(FIND THIS_TEST_DEPENDS_ALL ${DEPDEP} DEPDEP_INDEX)
if (DEPDEP_INDEX EQUAL -1)
list(APPEND THIS_TEST_DEPENDS_ALL ${DEPDEP})
set(ADDED_DEPS TRUE)
endif()
endforeach()
endforeach()
endwhile()
# message(STATUS "-> Dependencies for ${libname}")
# message(STATUS "-> THIS_TEST_DEPENDS_ALL: ${THIS_TEST_DEPENDS_ALL}")
endforeach(libname ${BOOST_TEST_BOOST_DEPENDS})
foreach (include ${THIS_TEST_DEPENDS_ALL})
#message(STATUS "include: ${include}")
include_directories("${Boost_SOURCE_DIR}/libs/${include}/include")
endforeach (include ${includes})
endmacro(boost_tool_dependencies)
#
###############################################################################
# add_subdirectory(quickbook)
# add_subdirectory(wave)
add_subdirectory(bcp)

@ -1 +1 @@
Subproject commit fa0c4930b89b1efea35ca10b0cf5d0b4995df6f1
Subproject commit 8d502ac840d87be247cad31f1da96bcab3d13061