]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
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 = | |
20effc67 | 56 | archive_exception |
7c673cae FG |
57 | basic_archive |
58 | basic_iarchive | |
59 | basic_iserializer | |
60 | basic_oarchive | |
61 | basic_oserializer | |
62 | basic_pointer_iserializer | |
63 | basic_pointer_oserializer | |
64 | basic_serializer_map | |
65 | basic_text_iprimitive | |
66 | basic_text_oprimitive | |
67 | basic_xml_archive | |
68 | binary_iarchive | |
69 | binary_oarchive | |
70 | extended_type_info | |
71 | extended_type_info_typeid | |
72 | extended_type_info_no_rtti | |
73 | polymorphic_iarchive | |
74 | polymorphic_oarchive | |
75 | stl_port | |
76 | text_iarchive | |
77 | text_oarchive | |
92f5a8d4 TL |
78 | polymorphic_text_iarchive |
79 | polymorphic_text_oarchive | |
80 | polymorphic_binary_iarchive | |
81 | polymorphic_binary_oarchive | |
82 | polymorphic_xml_iarchive | |
83 | polymorphic_xml_oarchive | |
7c673cae | 84 | void_cast |
7c673cae FG |
85 | xml_grammar |
86 | xml_iarchive | |
87 | xml_oarchive | |
88 | xml_archive_exception | |
89 | codecvt_null | |
90 | utf8_codecvt_facet | |
b32b8144 | 91 | ; |
7c673cae FG |
92 | |
93 | WSOURCES = | |
94 | basic_text_wiprimitive | |
95 | basic_text_woprimitive | |
96 | text_wiarchive | |
97 | text_woarchive | |
92f5a8d4 TL |
98 | polymorphic_text_wiarchive |
99 | polymorphic_text_woarchive | |
7c673cae FG |
100 | xml_wgrammar |
101 | xml_wiarchive | |
102 | xml_woarchive | |
92f5a8d4 TL |
103 | polymorphic_xml_wiarchive |
104 | polymorphic_xml_woarchive | |
7c673cae FG |
105 | ; |
106 | ||
107 | lib boost_serialization | |
108 | : $(SOURCES).cpp | |
109 | : | |
110 | <toolset>msvc:<cxxflags>/Gy | |
111 | <toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS | |
92f5a8d4 | 112 | <toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS |
7c673cae FG |
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 | |
92f5a8d4 | 127 | <toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS |
7c673cae FG |
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" | |
b32b8144 FG |
134 | # note: both serialization and wserialization are conditioned on the this |
135 | # switch - don't change it to BOOST_WSERIALIZATION_DYN_LINK | |
7c673cae FG |
136 | <link>shared:<define>BOOST_SERIALIZATION_DYN_LINK=1 |
137 | ; | |
138 | ||
139 | boost-install boost_serialization boost_wserialization ; |