123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- # Boost serialization Library Build Jamfile
- # (C) Copyright Robert Ramey 2002-2004.
- # Use, modification, and distribution are subject to the
- # Boost Software License, Version 1.0. (See accompanying file
- # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- #
- # See http://www.boost.org/libs/serialization for the library home page.
- project boost/serialization
- : source-location ../src
- : requirements
- <conditional>@include-spirit
- ;
- SPIRIT_ROOT = [ modules.peek : SPIRIT_ROOT ] ;
- rule include-spirit ( properties * )
- {
- local old-compiler ;
- if <toolset>borland in $(properties)
- {
- if ! <toolset-borland:version>6.1.0 in $(properties)
- {
- old-compiler = true ;
- }
- }
- else if <toolset>msvc in $(properties)
- {
- if <toolset-msvc:version>6.5 in $(properties)
- || <toolset-msvc:version>7.0 in $(properties)
- {
- old-compiler = true ;
- }
- }
-
- local result ;
- if $(old-compiler)
- {
- if $(SPIRIT_ROOT)
- {
- # note - we can't use <include>$(SPIRIT_ROOT) because
- # it puts -I$(SPIRIT_ROOT) AFTER the "../../.." in the command line.
- # so use these instead
- result = <cxxflags>-I$(SPIRIT_ROOT) ;
- }
- else
- {
- echo **** spirit 1.6x required to build library with this compiler **** ;
- result = <build>no ;
- }
- }
- return $(result) ;
- }
- SOURCES =
- basic_archive
- basic_iarchive
- basic_iserializer
- basic_oarchive
- basic_oserializer
- basic_pointer_iserializer
- basic_pointer_oserializer
- basic_serializer_map
- basic_text_iprimitive
- basic_text_oprimitive
- basic_xml_archive
- binary_iarchive
- binary_oarchive
- extended_type_info
- extended_type_info_typeid
- extended_type_info_no_rtti
- polymorphic_iarchive
- polymorphic_oarchive
- stl_port
- text_iarchive
- text_oarchive
- polymorphic_text_iarchive
- polymorphic_text_oarchive
- polymorphic_binary_iarchive
- polymorphic_binary_oarchive
- polymorphic_xml_iarchive
- polymorphic_xml_oarchive
- void_cast
- archive_exception
- xml_grammar
- xml_iarchive
- xml_oarchive
- xml_archive_exception
- codecvt_null
- utf8_codecvt_facet
- ;
-
- WSOURCES =
- basic_text_wiprimitive
- basic_text_woprimitive
- text_wiarchive
- text_woarchive
- polymorphic_text_wiarchive
- polymorphic_text_woarchive
- xml_wgrammar
- xml_wiarchive
- xml_woarchive
- polymorphic_xml_wiarchive
- polymorphic_xml_woarchive
- ;
- lib boost_serialization
- : $(SOURCES).cpp
- :
- <toolset>msvc:<cxxflags>/Gy
- <toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS
- <toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS
- <toolset>clang:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
- <toolset>gcc:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
- <toolset>darwin:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
- <toolset>gcc:<cxxflags>"-ftemplate-depth-255"
- <toolset>clang:<cxxflags>"-ftemplate-depth-255"
- <toolset>darwin:<cxxflags>"-ftemplate-depth-255"
- <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK=1
- ;
- lib boost_wserialization
- : $(WSOURCES).cpp boost_serialization
- :
- <toolset>msvc:<cxxflags>/Gy
- <toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS
- <toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS
- <toolset>clang:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
- <toolset>gcc:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
- <toolset>darwin:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
- <toolset>gcc:<cxxflags>"-ftemplate-depth-255"
- <toolset>clang:<cxxflags>"-ftemplate-depth-255"
- <toolset>darwin:<cxxflags>"-ftemplate-depth-255"
- # note: both serialization and wserialization are conditioned on the this
- # switch - don't change it to BOOST_WSERIALIZATION_DYN_LINK
- <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK=1
- ;
- boost-install boost_serialization boost_wserialization ;
|