]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/serialization/build/Jamfile.v2
1504abcb6c563b6764e951f704ca967b9d0614f0
[ceph.git] / ceph / src / boost / libs / serialization / build / Jamfile.v2
1 # Boost serialization Library Build Jamfile
2 # (C) Copyright Robert Ramey 2002-2004.
3 # Use, modification, and distribution are subject to the
4 # Boost Software License, Version 1.0. (See accompanying file
5 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 #
7 # See http://www.boost.org/libs/serialization for the library home page.
8
9 project boost/serialization
10 : source-location ../src
11 : requirements
12 <conditional>@include-spirit
13 ;
14
15 SPIRIT_ROOT = [ modules.peek : SPIRIT_ROOT ] ;
16 rule include-spirit ( properties * )
17 {
18 local old-compiler ;
19 if <toolset>borland in $(properties)
20 {
21 if ! <toolset-borland:version>6.1.0 in $(properties)
22 {
23 old-compiler = true ;
24 }
25
26 }
27 else if <toolset>msvc in $(properties)
28 {
29 if <toolset-msvc:version>6.5 in $(properties)
30 || <toolset-msvc:version>7.0 in $(properties)
31 {
32 old-compiler = true ;
33 }
34 }
35
36 local result ;
37 if $(old-compiler)
38 {
39 if $(SPIRIT_ROOT)
40 {
41 # note - we can't use <include>$(SPIRIT_ROOT) because
42 # it puts -I$(SPIRIT_ROOT) AFTER the "../../.." in the command line.
43 # so use these instead
44 result = <cxxflags>-I$(SPIRIT_ROOT) ;
45 }
46 else
47 {
48 echo **** spirit 1.6x required to build library with this compiler **** ;
49 result = <build>no ;
50 }
51 }
52 return $(result) ;
53 }
54
55 SOURCES =
56 basic_archive
57 basic_iarchive
58 basic_iserializer
59 basic_oarchive
60 basic_oserializer
61 basic_pointer_iserializer
62 basic_pointer_oserializer
63 basic_serializer_map
64 basic_text_iprimitive
65 basic_text_oprimitive
66 basic_xml_archive
67 binary_iarchive
68 binary_oarchive
69 extended_type_info
70 extended_type_info_typeid
71 extended_type_info_no_rtti
72 polymorphic_iarchive
73 polymorphic_oarchive
74 stl_port
75 text_iarchive
76 text_oarchive
77 polymorphic_text_iarchive
78 polymorphic_text_oarchive
79 polymorphic_binary_iarchive
80 polymorphic_binary_oarchive
81 polymorphic_xml_iarchive
82 polymorphic_xml_oarchive
83 void_cast
84 archive_exception
85 xml_grammar
86 xml_iarchive
87 xml_oarchive
88 xml_archive_exception
89 codecvt_null
90 utf8_codecvt_facet
91 ;
92
93 WSOURCES =
94 basic_text_wiprimitive
95 basic_text_woprimitive
96 text_wiarchive
97 text_woarchive
98 polymorphic_text_wiarchive
99 polymorphic_text_woarchive
100 xml_wgrammar
101 xml_wiarchive
102 xml_woarchive
103 polymorphic_xml_wiarchive
104 polymorphic_xml_woarchive
105 ;
106
107 lib boost_serialization
108 : $(SOURCES).cpp
109 :
110 <toolset>msvc:<cxxflags>/Gy
111 <toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS
112 <toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS
113 <toolset>clang:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
114 <toolset>gcc:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
115 <toolset>darwin:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
116 <toolset>gcc:<cxxflags>"-ftemplate-depth-255"
117 <toolset>clang:<cxxflags>"-ftemplate-depth-255"
118 <toolset>darwin:<cxxflags>"-ftemplate-depth-255"
119 <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK=1
120 ;
121
122 lib boost_wserialization
123 : $(WSOURCES).cpp boost_serialization
124 :
125 <toolset>msvc:<cxxflags>/Gy
126 <toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS
127 <toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS
128 <toolset>clang:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
129 <toolset>gcc:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
130 <toolset>darwin:<cxxflags>"-fvisibility=hidden -fvisibility-inlines-hidden"
131 <toolset>gcc:<cxxflags>"-ftemplate-depth-255"
132 <toolset>clang:<cxxflags>"-ftemplate-depth-255"
133 <toolset>darwin:<cxxflags>"-ftemplate-depth-255"
134 # note: both serialization and wserialization are conditioned on the this
135 # switch - don't change it to BOOST_WSERIALIZATION_DYN_LINK
136 <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK=1
137 ;
138
139 boost-install boost_serialization boost_wserialization ;