
The following changelog and patch do three things: 1. Change to common naming scheme for libs 2. Common subdir for compiled libs 3. Test and date_time dll's suppressed for NT builds. Would appreciate any and all feedback on this patch. Thanks. Dale Hirt Changelog: ---------- 2003-08-14 17:40 pm Dale Hirt <administrator@sbcltd.com> Jamfile * Added in boost-stage-tag rule. This appends a "d" to the end of the lib name if it is being compiled in debug mode, and "_pydebug", if being compiled in debug-python mode. Allows for common naming scheme across entire Boost tree. libs/date_time/build/Jamfile * Changes compilation options so that shared lib is not built if we're on NT. * Adds in stage rule to place libs in common subdir, and also to use common naming scheme per debug builds. libs/filesystem/build/Jamfile * Adds in stage rule to place libs in common subdir, and also to use common naming scheme per debug builds. libs/python/build/Jamfile * Changes stage rule to place libs in common subdir, and also to use common naming scheme per debug and debug-python builds. libs/regex/build/Jamfile * Changes stage rule to place libs in common subdir. libs/signals/build/Jamfile * Changes stage rule to use common naming scheme per debug builds. libs/test/build/Jamfile * Changes compilation options so that shared lib is not built if we're on NT. * Changes stage rule to use common naming scheme per debug builds. libs/thread/build/Jamfile * Changes stage rule to place libs in common subdir, and also to use common naming scheme per debug builds. Patch: -------- Index: Jamfile =================================================================== RCS file: /cvsroot/boost/boost/Jamfile,v retrieving revision 1.7 diff -r1.7 Jamfile 2a3,21
# Common rules for libs rule boost-stage-tag ( toolset variant : properties * ) { local lib-debug-opt = "" ; if [ MATCH .*(debug).* : $(variant) ] { lib-debug-opt = d ; }
local lib-pydebug-opt = "" ; if [ MATCH .*(debug-python).* : $(variant) ] { lib-pydebug-opt = _pydebug ; lib-debug-opt = "" ; }
return $(properties) <tag><$(variant)>$(lib-debug-opt)$(lib-pydebug-opt) ; }
Index: libs/date_time/build/Jamfile =================================================================== RCS file: /cvsroot/boost/boost/libs/date_time/build/Jamfile,v retrieving revision 1.9 diff -r1.9 Jamfile 24d23 < 29c28,29 < dll boost_date_time : ../src/gregorian/$(CPP_SOURCES).cpp ---
lib boost_date_time : ../src/gregorian/$(CPP_SOURCES).cpp
34c34,37 < lib boost_date_time : ../src/gregorian/$(CPP_SOURCES).cpp ---
if ! ${NT} {
dll boost_date_time : ../src/gregorian/$(CPP_SOURCES).cpp 38a42,55 stage ../../../lib : <lib>boost_date_time <dll>boost_date_time : boost-stage-tag : debug release ; } else { stage ../../../lib : <lib>boost_date_time : boost-stage-tag : debug release ; } Index: libs/filesystem/build/Jamfile =================================================================== RCS file: /cvsroot/boost/boost/libs/filesystem/build/Jamfile,v retrieving revision 1.5 diff -r1.5 Jamfile 17c17,24 < ; \ No newline at end of file
;
stage ../../../lib : <lib>boost_filesystem : boost-stage-tag : debug release ;
Index: libs/python/build/Jamfile =================================================================== RCS file: /cvsroot/boost/boost/libs/python/build/Jamfile,v retrieving revision 1.29 diff -r1.29 Jamfile 78,83c78,81 < stage bin-stage : <dll>boost_python <lib>boost_python < : <tag><debug>"_debug" < <tag><debug-python>"_pydebug" < : < debug release < ; ---
stage ../../../lib : <dll>boost_python <lib>boost_python : boost-stage-tag : debug release ; Index: libs/regex/build/Jamfile =================================================================== RCS file: /cvsroot/boost/boost/libs/regex/build/Jamfile,v retrieving revision 1.17 diff -r1.17 Jamfile 131c131 < stage bin-stage : <lib>boost_regex <dll>boost_regex
stage ../../../lib : <lib>boost_regex <dll>boost_regex Index: libs/signals/build/Jamfile =================================================================== RCS file: /cvsroot/boost/boost/libs/signals/build/Jamfile,v retrieving revision 1.6 diff -r1.6 Jamfile 27,28c27,28 < : <dll>boost_signals < : <tag><debug>"d"
: <dll>boost_signals <lib>boost_signals : boost-stage-tag
Index: libs/test/build/Jamfile =================================================================== RCS file: /cvsroot/boost/boost/libs/test/build/Jamfile,v retrieving revision 1.8 diff -r1.8 Jamfile 67a68,92
stage ../../../lib : <lib>boost_prg_exec_monitor <lib>boost_test_exec_monitor <lib>boost_unit_test_framework <dll>boost_prg_exec_monitor <dll>boost_test_exec_monitor <dll>boost_unit_test_framework : boost-stage-tag : debug release ; } else { stage ../../../lib : <lib>boost_prg_exec_monitor <lib>boost_test_exec_monitor <lib>boost_unit_test_framework : boost-stage-tag : debug release ;
Index: libs/thread/build/Jamfile =================================================================== RCS file: /cvsroot/boost/boost/libs/thread/build/Jamfile,v retrieving revision 1.20 diff -r1.20 Jamfile 47c47 < stage bin-stage ---
stage ../../../lib
50c50 < <tag><debug>"d" ---
boost-stage-tag