Boost logo

Boost-Commit :

From: troy_at_[hidden]
Date: 2007-05-20 15:18:16


Author: troy
Date: 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
New Revision: 4149
URL: http://svn.boost.org/trac/boost/changeset/4149

Log:

reimplementation of usage requirements. Form is now:

boost_library(c
  lib.cpp
  STATIC_COMPILE_FLAGS ...
  SHARED_COMPILE_FLAGS ...
  STATIC_COMPILE_REQUIREMENTS ...
  SHARED_COMPILE_REQUIREMENTS ...
  DEPENDS a b d ...
)

where the shared/static "requirements" from a, b, d will be added to
the compile line for 'c' as appropriate. They're added in the order
they appear in the DEPENDS line. shared/static link requirements not
there yet.

Caveat #1: the CMakeLists for the DEPENDS must have already been
scanned! What exactly those compile requirements are must be known
already.

Caveat #2: the requirements don't recurse! Nothing in cmakeland
recurses. The list of DEPENDS must be exhaustive.

On the other hand, this does appear to reliably work.

Text files modified:
   sandbox/troy/boost_1_34_0/CMakeLists.txt | 7 +++--
   sandbox/troy/boost_1_34_0/tools/build/CMake/boost-core.cmake | 31 +++++++++++------------
   sandbox/troy/boost_1_34_0/tools/build/CMake/boost-testing.cmake | 6 +++
   sandbox/troy/boost_1_34_0/tools/build/CMake/boost.cmake | 13 ---------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/CMakeLists.txt | 19 +++++++++-----
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/lib.cpp | 3 --
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_shared.cpp | 5 +++
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_static.cpp | 7 +---
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/CMakeLists.txt | 11 +++----
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/ashared_bstatic.cpp | 16 ++++++------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/astatic_bshared.cpp | 16 ++++-------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/lib.cpp | 7 +---
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_shared.cpp | 16 ++++++------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_static.cpp | 16 ++++++------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/CMakeLists.txt | 19 ++++++-------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/ashared_cstatic.cpp | 16 ++++++------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/astatic_cshared.cpp | 16 ++++++------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/lib.cpp | 9 +-----
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_shared.cpp | 24 +++++++++---------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_static.cpp | 24 +++++++++---------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/CMakeLists.txt | 18 ++++++------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/lib.cpp | 32 ++++++-----------------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_shared.cpp | 44 +++++++++++---------------------
   sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_static.cpp | 53 ++++++++++++++++++++++-----------------
   24 files changed, 195 insertions(+), 233 deletions(-)

Modified: sandbox/troy/boost_1_34_0/CMakeLists.txt
==============================================================================
--- sandbox/troy/boost_1_34_0/CMakeLists.txt (original)
+++ sandbox/troy/boost_1_34_0/CMakeLists.txt 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -69,9 +69,10 @@
 include(CPack)
 ##########################################################################
 
+option(BOOST_SELFTEST "Build internal testing projects... not the boost libraries" OFF)
 # Subdirectories of Boost
-if (RUN_SELFTESTS)
+if (BOOST_SELFTEST)
   add_subdirectory(tools/build/CMake/testing)
-else (RUN_SELFTESTS)
+else (BOOST_SELFTEST)
   add_subdirectory(libs)
-endif(RUN_SELFTESTS)
\ No newline at end of file
+endif(BOOST_SELFTEST)
\ No newline at end of file

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/boost-core.cmake
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/boost-core.cmake (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/boost-core.cmake 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -214,7 +214,7 @@
   
 macro(boost_library)
   parse_arguments(THIS_LIB
- "DEPENDS;LIBRARIES;COMPILE_FLAGS;STICKY_COMPILE_FLAGS;STATIC_COMPILE_FLAGS;SHARED_COMPILE_FLAGS;STICKY_STATIC_COMPILE_FLAGS;STICKY_STATIC_LINK_FLAGS;STICKY_SHARED_COMPILE_FLAGS;STICKY_SHARED_LINK_FLAGS"
+ "DEPENDS;LIBRARIES;STATIC_COMPILE_FLAGS;STATIC_COMPILE_REQUIREMENTS;STATIC_LINK_FLAGS;STATIC_LINK_REQUIREMENTS;SHARED_COMPILE_FLAGS;SHARED_COMPILE_REQUIREMENTS;SHARED_LINK_FLAGS;SHARED_LINK_REQUIREMENTS"
     "NO_STATIC;NO_SHARED;STATIC_TAG"
     ${ARGN}
     )
@@ -223,7 +223,7 @@
 
   ADD_CUSTOM_TARGET(${libname})
 
- IF(NOT "${THIS_LIB_NO_STATIC}" STREQUAL "TRUE")
+ if(NOT "${THIS_LIB_NO_STATIC}" STREQUAL "TRUE")
     # If the STATIC_TAG option was provided, we append "-s" to the end
     # of the target's name, so that it does not conflict with the
     # dynamic library.
@@ -243,26 +243,26 @@
       DEBUG_OUTPUT_NAME "${libname}${BOOST_LIBRARY_VERSION_STRING_DEBUG}${THIS_LIB_STATIC_TAG}"
       RELWITHDEBINFO_OUTPUT_NAME "${libname}${BOOST_LIBRARY_VERSION_STRING_DEBUG}${THIS_LIB_STATIC_TAG}"
       CLEAN_DIRECT_OUTPUT 1
- COMPILE_FLAGS "${THIS_LIB_COMPILE_FLAGS} ${THIS_LIB_STICKY_COMPILE_FLAGS} ${THIS_LIB_STATIC_COMPILE_FLAGS} ${THIS_LIB_STICKY_STATIC_COMPILE_FLAGS}"
- STICKY_COMPILE_FLAGS "${THIS_LIB_STICKY_COMPILE_FLAGS} ${THIS_LIB_STICKY_STATIC_COMPILE_FLAGS}"
- STICKY_LINK_FLAGS "${THIS_LIB_STICKY_STATIC_LINK_FLAGS}"
+ COMPILE_FLAGS "${THIS_LIB_STATIC_COMPILE_FLAGS}"
+ COMPILE_REQUIREMENTS "${THIS_LIB_STATIC_COMPILE_REQUIREMENTS}"
       )
- ADD_DEPENDENCIES(${libname} "${libname}-static")
- trace("sticky statics(${libname}): ${THIS_LIB_STICKY_STATIC_COMPILE_FLAGS}")
+
+ add_dependencies(${libname} "${libname}-static")
+# trace("sticky statics(${libname}): ${THIS_LIB_STICKY_STATIC_COMPILE_FLAGS}")
     target_link_libraries("${libname}-static" ${THIS_LIB_LIBRARIES})
     foreach(dependency ${THIS_LIB_DEPENDS})
       target_link_libraries("${libname}-static" "${dependency}-static")
       propagate_property(FROM_TARGET "${dependency}-static"
- FROM_PROPNAME STICKY_COMPILE_FLAGS
+ FROM_PROPNAME COMPILE_REQUIREMENTS
         TO_TARGET ${libname}-static
         TO_PROPNAME COMPILE_FLAGS
         )
     endforeach(dependency "${THIS_LIB_DEPENDS}")
 
     install(TARGETS "${libname}-static" DESTINATION lib)
- ENDIF(NOT "${THIS_LIB_NO_STATIC}" STREQUAL "TRUE")
+ endif(NOT "${THIS_LIB_NO_STATIC}" STREQUAL "TRUE")
 
- IF(NOT "${THIS_LIB_NO_SHARED}" STREQUAL "TRUE")
+ if(NOT "${THIS_LIB_NO_SHARED}" STREQUAL "TRUE")
     add_library("${libname}-shared" SHARED ${sources})
     set_target_properties("${libname}-shared"
       PROPERTIES
@@ -270,22 +270,21 @@
       DEBUG_OUTPUT_NAME "${libname}${BOOST_LIBRARY_VERSION_STRING_DEBUG}"
       RELWITHDEBINFO_OUTPUT_NAME "${libname}${BOOST_LIBRARY_VERSION_STRING_DEBUG}"
       CLEAN_DIRECT_OUTPUT 1
- COMPILE_FLAGS "${THIS_LIB_COMPILE_FLAGS} ${THIS_LIB_STICKY_COMPILE_FLAGS} ${THIS_LIB_SHARED_COMPILE_FLAGS} ${THIS_LIB_STICKY_SHARED_COMPILE_FLAGS}"
- STICKY_COMPILE_FLAGS "${THIS_LIB_STICKY_COMPILE_FLAGS} ${THIS_LIB_STICKY_SHARED_COMPILE_FLAGS}"
- STICKY_LINK_FLAGS "${THIS_LIB_STICKY_SHARED_LINK_FLAGS}"
+ COMPILE_FLAGS "${THIS_LIB_SHARED_COMPILE_FLAGS}"
+ COMPILE_REQUIREMENTS "${THIS_LIB_SHARED_COMPILE_REQUIREMENTS}"
       SOVERSION "${BOOST_VERSION}"
       )
- ADD_DEPENDENCIES(${libname} "${libname}-shared")
+ add_dependencies(${libname} "${libname}-shared")
     target_link_libraries("${libname}-shared" ${THIS_LIB_LIBRARIES})
     foreach(dependency ${THIS_LIB_DEPENDS})
       target_link_libraries("${libname}-shared" "${dependency}-shared")
       propagate_property(FROM_TARGET "${dependency}-shared"
- FROM_PROPNAME STICKY_COMPILE_FLAGS
+ FROM_PROPNAME COMPILE_REQUIREMENTS
         TO_TARGET ${libname}-shared
         TO_PROPNAME COMPILE_FLAGS
         )
     endforeach(dependency ${THIS_LIB_DEPENDS})
     install(TARGETS "${libname}-shared" DESTINATION lib)
- ENDIF(NOT "${THIS_LIB_NO_SHARED}" STREQUAL "TRUE")
+ endif(NOT "${THIS_LIB_NO_SHARED}" STREQUAL "TRUE")
 endmacro(boost_library)
 

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/boost-testing.cmake
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/boost-testing.cmake (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/boost-testing.cmake 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -77,6 +77,8 @@
   endif(NOT BUILD_TESTING)
 endmacro(boost_test_parse_args)
 
+
+
 macro(boost_test_run testname)
   boost_test_parse_args(${testname} ${ARGN})
   if (BOOST_TEST_OKAY)
@@ -92,7 +94,7 @@
     foreach(_depend ${BOOST_TEST_DEPENDS})
       trace("propagate from ${BOOST_TEST_DEPENDS}")
       propagate_property(FROM_TARGET ${_depend}
- FROM_PROPNAME STICKY_COMPILE_FLAGS
+ FROM_PROPNAME COMPILE_REQUIREMENTS
         TO_TARGET ${testname}
         TO_PROPNAME COMPILE_FLAGS
         )
@@ -101,6 +103,8 @@
   endif(BOOST_TEST_OKAY)
 endmacro(boost_test_run)
 
+
+
 macro(boost_test_run_fail testname)
   boost_test_parse_args(${testname} ${ARGN})
   if(BOOST_TEST_OKAY)

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/boost.cmake
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/boost.cmake (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/boost.cmake 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -7,7 +7,7 @@
 include(boost-core)
 include(boost-testing)
 
-set(DEBUG FALSE)
+OPTION(DEBUG "Print lots of gnasty trace output from makefile generation stage" OFF)
 macro(TRACE)
   if (DEBUG)
     MESSAGE("~~ " ${ARGN})
@@ -21,15 +21,4 @@
   endif (NOT ${value})
 endmacro(ASSERT value)
     
-SET(RUN_SELFTESTS FALSE)
-
-if(RUN_SELFTESTS)
- trace("Start selftests")
- file (GLOB testfiles_ "${CMAKE_SOURCE_DIR}/tools/build/CMake/tests/*.cmake")
- foreach(file_ ${testfiles_})
- trace("### ${file_}")
- include(${file_})
- endforeach(file_ ${testfiles_})
- trace("End selftests")
-endif(RUN_SELFTESTS)
 

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/CMakeLists.txt
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/CMakeLists.txt (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/CMakeLists.txt 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,16 +1,21 @@
+#
+# This one has the STATIC_TAG to test static/shared compiling differently
+#
+
 boost_library_project(
   A
 )
 
 boost_library(a
   lib.cpp
- COMPILE_FLAGS -DA_COMPILE_FLAGS
- STICKY_COMPILE_FLAGS "-I${CMAKE_CURRENT_SOURCE_DIR} -DA_STICKY_COMPILE_FLAGS"
- STATIC_COMPILE_FLAGS "-DA_STATIC_COMPILE_FLAGS -DLINKTYPE=static"
- STICKY_STATIC_COMPILE_FLAGS -DA_STICKY_STATIC_COMPILE_FLAGS
- SHARED_COMPILE_FLAGS "-DA_SHARED_COMPILE_FLAGS -DLINKTYPE=shared"
- STICKY_SHARED_COMPILE_FLAGS -DA_STICKY_SHARED_COMPILE_FLAGS
+ STATIC_COMPILE_FLAGS "-DA_COMPILE_FLAGS -DA_STATIC_COMPILE_FLAGS -DLINKTYPE=static"
+ SHARED_COMPILE_FLAGS "-DA_COMPILE_FLAGS -DA_SHARED_COMPILE_FLAGS -DLINKTYPE=shared"
+
+ STATIC_COMPILE_REQUIREMENTS "-I${CMAKE_CURRENT_SOURCE_DIR} -DA_COMPILE_REQUIREMENTS -DA_STATIC_COMPILE_REQUIREMENTS"
+ SHARED_COMPILE_REQUIREMENTS "-I${CMAKE_CURRENT_SOURCE_DIR} -DA_COMPILE_REQUIREMENTS -DA_SHARED_COMPILE_REQUIREMENTS"
+ STATIC_TAG # tds: without STATIC_TAG (append -s to lib name) this fails on darwin.
+ # also true for windows?
 )
 
-boost_test_run(test_shared DEPENDS a-shared)
 boost_test_run(test_static DEPENDS a-static)
+boost_test_run(test_shared DEPENDS a-shared)

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/lib.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/lib.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/lib.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -4,9 +4,6 @@
 #ifndef A_COMPILE_FLAGS
 #error A_COMPILE_FLAGS
 #endif
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
-#endif
 
 // dont check (sticky)static/shared here, this gets compiled twice.
 // tests check that things worked right via LINKTYPE

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_shared.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_shared.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_shared.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,5 +1,10 @@
+#ifndef A_SHARED_COMPILE_REQUIREMENTS
+#error A_SHARED_COMPILE_REQUIREMENTS
+#endif
+
 #include "a.hpp"
 #include <cassert>
+
 int main(int argc, char**argv)
 {
   assert(a_linktype() == "shared");

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_static.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_static.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/a/test_static.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,11 +1,8 @@
 #include "a.hpp"
 #include <cassert>
 
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
-#endif
-#ifndef A_STICKY_STATIC_COMPILE_FLAGS
-#error A_STICKY_STATIC_COMPILE_FLAGS
+#ifndef A_STATIC_COMPILE_REQUIREMENTS
+#error A_STATIC_COMPILE_REQUIREMENTS
 #endif
 
 int main(int argc, char**argv)

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/CMakeLists.txt
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/CMakeLists.txt (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/CMakeLists.txt 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -4,12 +4,11 @@
 
 boost_library(b
   lib.cpp
- COMPILE_FLAGS -DB_COMPILE_FLAGS
- STICKY_COMPILE_FLAGS "-I${CMAKE_CURRENT_SOURCE_DIR} -DB_STICKY_COMPILE_FLAGS"
- STATIC_COMPILE_FLAGS -DLINKTYPE=static
- STICKY_STATIC_COMPILE_FLAGS -DB_STICKY_STATIC_COMPILE_FLAGS
- SHARED_COMPILE_FLAGS -DLINKTYPE=shared
- STICKY_SHARED_COMPILE_FLAGS -DB_STICKY_SHARED_COMPILE_FLAGS
+ STATIC_COMPILE_FLAGS "-I${CMAKE_CURRENT_SOURCE_DIR} -DB_COMPILE_FLAGS -DLINKTYPE=static"
+ SHARED_COMPILE_FLAGS "-I${CMAKE_CURRENT_SOURCE_DIR} -DB_COMPILE_FLAGS -DLINKTYPE=shared"
+
+ STATIC_COMPILE_REQUIREMENTS "-I${CMAKE_CURRENT_SOURCE_DIR} -DB_COMPILE_REQUIREMENTS -DB_STATIC_COMPILE_REQUIREMENTS"
+ SHARED_COMPILE_REQUIREMENTS "-I${CMAKE_CURRENT_SOURCE_DIR} -DB_COMPILE_REQUIREMENTS -DB_SHARED_COMPILE_REQUIREMENTS"
   DEPENDS a
 )
  

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/ashared_bstatic.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/ashared_bstatic.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/ashared_bstatic.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,15 +1,15 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef A_STICKY_SHARED_COMPILE_FLAGS
-#error A_STICKY_SHARED_COMPILE_FLAGS
+#ifndef A_SHARED_COMPILE_REQUIREMENTS
+#error A_SHARED_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifndef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
-#ifndef B_STICKY_STATIC_COMPILE_FLAGS
-#error B_STICKY_STATIC_COMPILE_FLAGS
+#ifndef B_STATIC_COMPILE_REQUIREMENTS
+#error B_STATIC_COMPILE_REQUIREMENTS
 #endif
 
 #include "a.hpp"

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/astatic_bshared.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/astatic_bshared.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/astatic_bshared.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,17 +1,13 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_STATIC_COMPILE_REQUIREMENTS
+#error A_STATIC_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef A_STICKY_STATIC_COMPILE_FLAGS
-#error A_STICKY_STATIC_COMPILE_FLAGS
+#ifndef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef B_STICKY_COMPILE_FLAGS
-#error static flags not here
-#endif
-
-#ifndef B_STICKY_SHARED_COMPILE_FLAGS
-#error static flags not here
+#ifndef B_SHARED_COMPILE_REQUIREMENTS
+#error B_SHARED_COMPILE_REQUIREMENTS
 #endif
 
 #include "a.hpp"

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/lib.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/lib.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/lib.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -6,12 +6,9 @@
 #ifndef B_COMPILE_FLAGS
 #error B_COMPILE_FLAGS
 #endif
-#ifndef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
-#endif
 
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
 
 /// should NOT see these

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_shared.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_shared.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_shared.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,15 +1,15 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef A_STICKY_SHARED_COMPILE_FLAGS
-#error A_STICKY_SHARED_COMPILE_FLAGS
+#ifndef A_SHARED_COMPILE_REQUIREMENTS
+#error A_SHARED_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifndef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
-#ifndef B_STICKY_SHARED_COMPILE_FLAGS
-#error B_STICKY_SHARED_COMPILE_FLAGS
+#ifndef B_SHARED_COMPILE_REQUIREMENTS
+#error B_SHARED_COMPILE_REQUIREMENTS
 #endif
 
 

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_static.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_static.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/b/test_static.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,15 +1,15 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef A_STICKY_STATIC_COMPILE_FLAGS
-#error A_STICKY_STATIC_COMPILE_FLAGS
+#ifndef A_STATIC_COMPILE_REQUIREMENTS
+#error A_STATIC_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifndef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
-#ifndef B_STICKY_STATIC_COMPILE_FLAGS
-#error B_STICKY_STATIC_COMPILE_FLAGS
+#ifndef B_STATIC_COMPILE_REQUIREMENTS
+#error B_STATIC_COMPILE_REQUIREMENTS
 #endif
 
 #include "a.hpp"

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/CMakeLists.txt
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/CMakeLists.txt (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/CMakeLists.txt 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -4,17 +4,16 @@
 
 boost_library(c
   lib.cpp
- COMPILE_FLAGS -DC_COMPILE_FLAGS
- STICKY_COMPILE_FLAGS -DC_STICKY_COMPILE_FLAGS
- STATIC_COMPILE_FLAGS -DLINKTYPE=static
- STICKY_STATIC_COMPILE_FLAGS -DC_STICKY_STATIC_COMPILE_FLAGS
- SHARED_COMPILE_FLAGS -DLINKTYPE=shared
- STICKY_SHARED_COMPILE_FLAGS -DC_STICKY_SHARED_COMPILE_FLAGS
+ STATIC_COMPILE_FLAGS "-I${CMAKE_CURRENT_SOURCE_DIR} -DC_COMPILE_FLAGS -DLINKTYPE=static"
+ SHARED_COMPILE_FLAGS "-I${CMAKE_CURRENT_SOURCE_DIR} -DC_COMPILE_FLAGS -DLINKTYPE=shared"
+
+ STATIC_COMPILE_REQUIREMENTS "-I${CMAKE_CURRENT_SOURCE_DIR} -DC_COMPILE_REQUIREMENTS -DC_STATIC_COMPILE_REQUIREMENTS"
+ SHARED_COMPILE_REQUIREMENTS "-I${CMAKE_CURRENT_SOURCE_DIR} -DC_COMPILE_REQUIREMENTS -DC_SHARED_COMPILE_REQUIREMENTS"
   DEPENDS a
 )
-
+
 boost_test_run(test_shared DEPENDS c-shared a-shared)
 boost_test_run(test_static DEPENDS c-static a-static)
-
-boost_test_run(astatic_cshared DEPENDS c-shared a-static)
-boost_test_run(ashared_cstatic DEPENDS c-static a-shared)
+
+boost_test_run(astatic_cshared DEPENDS a-static c-shared)
+boost_test_run(ashared_cstatic DEPENDS a-shared c-static)

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/ashared_cstatic.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/ashared_cstatic.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/ashared_cstatic.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,15 +1,15 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef A_STICKY_SHARED_COMPILE_FLAGS
-#error A_STICKY_SHARED_COMPILE_FLAGS
+#ifndef A_SHARED_COMPILE_REQUIREMENTS
+#error A_SHARED_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
+#ifndef C_COMPILE_REQUIREMENTS
+#error C_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_STATIC_COMPILE_FLAGS
-#error C_STICKY_STATIC_COMPILE_FLAGS
+#ifndef C_STATIC_COMPILE_REQUIREMENTS
+#error C_STATIC_COMPILE_REQUIREMENTS
 #endif
 
 #include "a.hpp"

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/astatic_cshared.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/astatic_cshared.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/astatic_cshared.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,9 +1,9 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef A_STICKY_STATIC_COMPILE_FLAGS
-#error A_STICKY_STATIC_COMPILE_FLAGS
+#ifndef A_STATIC_COMPILE_REQUIREMENTS
+#error A_STATIC_COMPILE_REQUIREMENTS
 #endif
 
 #ifdef B_STICKY_COMPILE_FLAGS
@@ -14,12 +14,12 @@
 #error B_STICKY_SHARED_COMPILE_FLAGS
 #endif
 
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
+#ifndef C_COMPILE_REQUIREMENTS
+#error C_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef C_STICKY_SHARED_COMPILE_FLAGS
-#error C_STICKY_SHARED_COMPILE_FLAGS
+#ifndef C_SHARED_COMPILE_REQUIREMENTS
+#error C_SHARED_COMPILE_REQUIREMENTS
 #endif
 
 #include "a.hpp"

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/lib.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/lib.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/lib.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -6,16 +6,12 @@
 #ifndef C_COMPILE_FLAGS
 #error C_COMPILE_FLAGS
 #endif
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
-#endif
 
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
 
 /// should NOT see these
-
 #ifdef A_COMPILE_FLAGS
 #error A_COMPILE_FLAGS
 #endif
@@ -31,4 +27,3 @@
 
 std::string c_linktype() { a_linktype(); return BOOST_PP_STRINGIZE(LINKTYPE); }
 
-

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_shared.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_shared.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_shared.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,22 +1,22 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef A_STICKY_SHARED_COMPILE_FLAGS
-#error A_STICKY_SHARED_COMPILE_FLAGS
+#ifndef A_SHARED_COMPILE_REQUIREMENTS
+#error A_SHARED_COMPILE_REQUIREMENTS
 #endif
 
-#ifdef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifdef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
-#ifdef B_STICKY_SHARED_COMPILE_FLAGS
-#error B_STICKY_SHARED_COMPILE_FLAGS
+#ifdef B_SHARED_COMPILE_REQUIREMENTS
+#error B_SHARED_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
+#ifndef C_COMPILE_REQUIREMENTS
+#error C_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_SHARED_COMPILE_FLAGS
-#error C_STICKY_SHARED_COMPILE_FLAGS
+#ifndef C_SHARED_COMPILE_REQUIREMENTS
+#error C_SHARED_COMPILE_REQUIREMENTS
 #endif
 
 

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_static.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_static.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/c/test_static.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,22 +1,22 @@
-#ifndef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef A_STICKY_STATIC_COMPILE_FLAGS
-#error A_STICKY_STATIC_COMPILE_FLAGS
+#ifndef A_STATIC_COMPILE_REQUIREMENTS
+#error A_STATIC_COMPILE_REQUIREMENTS
 #endif
 
-#ifdef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifdef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
-#ifdef B_STICKY_STATIC_COMPILE_FLAGS
-#error B_STICKY_STATIC_COMPILE_FLAGS
+#ifdef B_STATIC_COMPILE_REQUIREMENTS
+#error B_STATIC_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
+#ifndef C_COMPILE_REQUIREMENTS
+#error C_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_STATIC_COMPILE_FLAGS
-#error C_STICKY_STATIC_COMPILE_FLAGS
+#ifndef C_STATIC_COMPILE_REQUIREMENTS
+#error C_STATIC_COMPILE_REQUIREMENTS
 #endif
 
 #include "a.hpp"

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/CMakeLists.txt
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/CMakeLists.txt (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/CMakeLists.txt 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -4,15 +4,15 @@
 
 boost_library(d
   lib.cpp
- COMPILE_FLAGS -DD_COMPILE_FLAGS
- STICKY_COMPILE_FLAGS "-I${CMAKE_CURRENT_SOURCE_DIR} -DD_STICKY_COMPILE_FLAGS"
- STATIC_COMPILE_FLAGS -DLINKTYPE=static
- STICKY_STATIC_COMPILE_FLAGS -DD_STICKY_STATIC_COMPILE_FLAGS
- SHARED_COMPILE_FLAGS -DLINKTYPE=shared
- STICKY_SHARED_COMPILE_FLAGS -DD_STICKY_SHARED_COMPILE_FLAGS
- DEPENDS b c
+ STATIC_COMPILE_FLAGS "-DD_COMPILE_FLAGS -DD_STATIC_COMPILE_FLAGS -DLINKTYPE=static"
+ SHARED_COMPILE_FLAGS "-DD_COMPILE_FLAGS -DD_SHARED_COMPILE_FLAGS -DLINKTYPE=shared"
+
+ STATIC_COMPILE_REQUIREMENTS "-DD_COMPILE_REQUIREMENTS -DD_STATIC_COMPILE_REQUIREMENTS"
+ SHARED_COMPILE_REQUIREMENTS "-DD_COMPILE_REQUIREMENTS -DD_SHARED_COMPILE_REQUIREMENTS"
+
+ DEPENDS a b c
 )
 
-boost_test_run(test_shared DEPENDS b-shared c-shared d-shared)
-boost_test_run(test_static DEPENDS b-static c-static d-static)
+boost_test_run(test_shared DEPENDS a-shared b-shared c-shared d-shared)
+boost_test_run(test_static DEPENDS a-static b-static c-static d-static)
 

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/lib.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/lib.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/lib.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -2,37 +2,23 @@
 #include <string>
 #include <boost/preprocessor/stringize.hpp>
 
+#include "a.hpp"
 #include "b.hpp"
 #include "c.hpp"
 
 // we DO see these
-#ifndef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
+#ifndef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
+#endif
+#ifndef C_COMPILE_REQUIREMENTS
+#error C_COMPILE_REQUIREMENTS
 #endif
 #ifndef D_COMPILE_FLAGS
 #error D_COMPILE_FLAGS
 #endif
-#ifndef D_STICKY_COMPILE_FLAGS
-#error D_STICKY_COMPILE_FLAGS
-#endif
-
-// we DONT see these
-#ifdef A_COMPILE_FLAGS
-#error A_COMPILE_FLAGS
-#endif
-#ifdef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
-#endif
-#ifdef B_COMPILE_FLAGS
-#error B_COMPILE_FLAGS
-#endif
-#ifdef C_COMPILE_FLAGS
-#error C_COMPILE_FLAGS
-#endif
-
 
-std::string d_linktype() { b_linktype(); c_linktype(); return BOOST_PP_STRINGIZE(LINKTYPE); }
+std::string d_linktype() { a_linktype(); b_linktype(); c_linktype(); return BOOST_PP_STRINGIZE(LINKTYPE); }
 

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_shared.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_shared.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_shared.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,47 +1,33 @@
-// do NOT see
-#ifdef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
-#endif
-#ifdef A_STICKY_SHARED_COMPILE_FLAGS
-#error A_STICKY_SHARED_COMPILE_FLAGS
-#endif
-#ifdef B_STICKY_STATIC_COMPILE_FLAGS
-#error B_STICKY_STATIC_COMPILE_FLAGS
-#endif
-#ifdef C_STICKY_STATIC_COMPILE_FLAGS
-#error C_STICKY_STATIC_COMPILE_FLAGS
-#endif
-#ifdef D_STICKY_STATIC_COMPILE_FLAGS
-#error D_STICKY_STATIC_COMPILE_FLAGS
-#endif
-
 // DO see
-#ifndef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef B_STICKY_SHARED_COMPILE_FLAGS
-#error B_STICKY_SHARED_COMPILE_FLAGS
+#ifndef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
+#ifndef C_COMPILE_REQUIREMENTS
+#error C_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_SHARED_COMPILE_FLAGS
-#error C_STICKY_SHARED_COMPILE_FLAGS
+#ifndef D_COMPILE_REQUIREMENTS
+#error D_COMPILE_REQUIREMENTS
 #endif
 
-#ifndef D_STICKY_COMPILE_FLAGS
-#error D_STICKY_COMPILE_FLAGS
+#ifdef D_COMPILE_FLAGS
+#error D_COMPILE_FLAGS
 #endif
-#ifndef D_STICKY_SHARED_COMPILE_FLAGS
-#error D_STICKY_SHARED_COMPILE_FLAGS
+#ifdef D_SHARED_COMPILE_FLAGS
+#error D_SHARED_COMPILE_FLAGS
 #endif
 
+#include "a.hpp"
 #include "b.hpp"
 #include "c.hpp"
 #include "d.hpp"
 #include <cassert>
+
 int main(int argc, char**argv)
 {
+ assert(a_linktype() == "shared");
   assert(b_linktype() == "shared");
   assert(c_linktype() == "shared");
   assert(d_linktype() == "shared");

Modified: sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_static.cpp
==============================================================================
--- sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_static.cpp (original)
+++ sandbox/troy/boost_1_34_0/tools/build/CMake/testing/d/test_static.cpp 2007-05-20 15:18:14 EDT (Sun, 20 May 2007)
@@ -1,48 +1,55 @@
 // do NOT see
-#ifdef A_STICKY_COMPILE_FLAGS
-#error A_STICKY_COMPILE_FLAGS
+#ifdef A_COMPILE_FLAGS
+#error A_COMPILE_FLAGS
 #endif
-#ifdef A_STICKY_SHARED_COMPILE_FLAGS
-#error A_STICKY_SHARED_COMPILE_FLAGS
+#ifdef A_STATIC_COMPILE_FLAGS
+#error A_STATIC_COMPILE_FLAGS
 #endif
 
-#ifdef B_STICKY_SHARED_COMPILE_FLAGS
-#error B_STICKY_SHARED_COMPILE_FLAGS
+#ifdef B_SHARED_COMPILE_FLAGS
+#error B_SHARED_COMPILE_FLAGS
 #endif
-#ifdef C_STICKY_SHARED_COMPILE_FLAGS
-#error C_STICKY_SHARED_COMPILE_FLAGS
+#ifdef C_SHARED_COMPILE_FLAGS
+#error C_SHARED_COMPILE_FLAGS
 #endif
-#ifdef D_STICKY_SHARED_COMPILE_FLAGS
-#error D_STICKY_SHARED_COMPILE_FLAGS
+#ifdef D_SHARED_COMPILE_FLAGS
+#error D_SHARED_COMPILE_FLAGS
 #endif
 
 // DO see
-#ifndef B_STICKY_COMPILE_FLAGS
-#error B_STICKY_COMPILE_FLAGS
+#ifndef A_COMPILE_REQUIREMENTS
+#error A_COMPILE_REQUIREMENTS
 #endif
-#ifndef B_STICKY_STATIC_COMPILE_FLAGS
-#error B_STICKY_STATIC_COMPILE_FLAGS
+#ifndef A_STATIC_COMPILE_REQUIREMENTS
+#error A_STATIC_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_COMPILE_FLAGS
-#error C_STICKY_COMPILE_FLAGS
+#ifndef B_COMPILE_REQUIREMENTS
+#error B_COMPILE_REQUIREMENTS
 #endif
-#ifndef C_STICKY_STATIC_COMPILE_FLAGS
-#error C_STICKY_STATIC_COMPILE_FLAGS
+#ifndef B_STATIC_COMPILE_REQUIREMENTS
+#error B_STATIC_COMPILE_REQUIREMENTS
 #endif
-
-#ifndef D_STICKY_COMPILE_FLAGS
-#error D_STICKY_COMPILE_FLAGS
+#ifndef C_COMPILE_REQUIREMENTS
+#error C_COMPILE_REQUIREMENTS
+#endif
+#ifndef C_STATIC_COMPILE_REQUIREMENTS
+#error C_STATIC_COMPILE_REQUIREMENTS
+#endif
+#ifndef D_COMPILE_REQUIREMENTS
+#error D_COMPILE_REQUIREMENTS
 #endif
-#ifndef D_STICKY_STATIC_COMPILE_FLAGS
-#error D_STICKY_STATIC_COMPILE_FLAGS
+#ifndef D_STATIC_COMPILE_REQUIREMENTS
+#error D_STATIC_COMPILE_REQUIREMENTS
 #endif
 
+#include "a.hpp"
 #include "b.hpp"
 #include "c.hpp"
 #include "d.hpp"
 #include <cassert>
 int main(int argc, char**argv)
 {
+ assert(a_linktype() == "static");
   assert(b_linktype() == "static");
   assert(c_linktype() == "static");
   assert(d_linktype() == "static");


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk