[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi] patch: upgrade to Boost 1.38.0
From: |
Vaclav Slavik |
Subject: |
[lmi] patch: upgrade to Boost 1.38.0 |
Date: |
Fri, 03 Apr 2009 01:09:53 +0200 |
Hi,
below is a patch that upgrades Boost used in the MSW build system from
1.33.1 to 1.38.0. It is a prerequisite for the upcoming patch to use
boost::math::expm1() and log1p().
It fixes the problem with filesystem compilation (discussed here:
http://lists.nongnu.org/archive/html/lmi/2008-06/msg00054.html) by
tweaking compiler flags a bit. In other words, it doesn't yet change the
way Boost libraries are built in none of the ways also mentioned in the
above thread.
Ideally, I'd like to rewrite this part of the makefiles to build Boost
using the official Boost.Build system if you agree -- upgrading is
easiest that way. For now, this patch lets us use boost::math.
Vaclav
=== modified file 'install_miscellanea.make'
--- install_miscellanea.make 2008-12-27 02:57:00 +0000
+++ install_miscellanea.make 2009-04-02 19:33:18 +0000
@@ -48,7 +48,7 @@
# File lists
###################################################################
-boost_archive := boost_1_33_1.tar.bz2
+boost_archive := boost_1_38_0.tar.bz2
cgicc_archive := cgicc-3.1.4.tar.bz2
fop_archive := fop-0.20.5-bin.tar.gz
md5sum_msw_exe := md5sum.exe
@@ -77,7 +77,7 @@
$(sample_archive)-url :=
http://download.savannah.gnu.org/releases/lmi/$(sample_archive)
$(xmlwrapp_archive)-url :=
ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/$(xmlwrapp_archive)
-$(boost_archive)-md5 := 2b999b2fb7798e1737d1fff8fac602ef
+$(boost_archive)-md5 := 5eca2116d39d61382b8f8235915cb267
$(cgicc_archive)-md5 := 6cb5153fc9fa64b4e50c7962aa557bbe
$(fop_archive)-md5 := d6b43e3eddf9378536ad8127bc057d41
$(md5sum_msw_exe)-md5 := eb574b236133e60c989c6f472f07827b
=== modified file 'objects.make'
--- objects.make 2009-03-26 16:47:29 +0000
+++ objects.make 2009-04-02 22:51:03 +0000
@@ -27,14 +27,21 @@
# is reached through 'vpath' directives. See the rationale in
# 'workhorse.make'.
-# Boost filesystem library. The other boost libraries that lmi
+# Boost filesystem and system libraries. The other boost libraries that lmi
# requires are implemented entirely in headers.
boost_filesystem_objects := \
- convenience.o \
- exception.o \
- path_posix_windows.o \
- operations_posix_windows.o \
+ operations.o \
+ path.o \
+ portability.o \
+ utf8_codecvt_facet.o \
+
+boost_system_objects := \
+ error_code.o \
+
+boost_objects := \
+ $(boost_filesystem_objects) \
+ $(boost_system_objects) \
# These object files are used in both an application and a shared
# library that it links to, only for builds that use shared-library
@@ -42,7 +49,7 @@
# build these objects as a library.
ifneq (,$(USE_SO_ATTRIBUTES))
- duplicated_objects = $(boost_filesystem_objects)
+ duplicated_objects = $(boost_objects)
endif
# GNU cgicc.
@@ -110,7 +117,7 @@
# have them as libraries.
ifdef HAVE_THIRD_PARTY_LIBRARIES
- boost_filesystem_objects :=
+ boost_objects :=
cgicc_objects :=
xmlwrapp_objects :=
endif
@@ -162,7 +169,7 @@
# Illustrations: files shared by the antediluvian and production branches.
common_common_objects := \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(xmlwrapp_objects) \
actuarial_table.o \
alert.o \
@@ -178,7 +185,6 @@
dbnames.o \
death_benefits.o \
emit_ledger.o \
- expm1.o \
facets.o \
fenv_guard.o \
fenv_lmi.o \
@@ -348,7 +354,7 @@
# These files provide general product support:
gpt_objects := \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(gpt_objects_unique_to_server) \
$(gpt_objects_directly_concerned_with_gpt) \
$(xmlwrapp_objects) \
@@ -364,7 +370,6 @@
datum_string.o \
dbnames.o \
death_benefits.o \
- expm1.o \
facets.o \
fenv_lmi.o \
global_settings.o \
@@ -509,7 +514,7 @@
account_value_test.o \
actuarial_table_test$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(common_test_objects) \
actuarial_table.o \
actuarial_table_test.o \
@@ -529,7 +534,7 @@
assert_lmi_test.o \
authenticity_test$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(common_test_objects) \
authenticity.o \
authenticity_test.o \
@@ -556,7 +561,6 @@
commutation_functions_test$(EXEEXT): \
$(common_test_objects) \
commutation_functions_test.o \
- expm1.o \
ihs_commfns.o \
timer.o \
@@ -598,7 +602,7 @@
getopt_test.o \
global_settings_test$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(common_test_objects) \
global_settings.o \
global_settings_test.o \
@@ -615,7 +619,7 @@
input_sequence.o \
input_test$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(common_test_objects) \
$(xmlwrapp_objects) \
calendar_date.o \
@@ -666,7 +670,6 @@
loads_test$(EXEEXT): \
$(common_test_objects) \
- expm1.o \
loads.o \
loads_test.o \
timer.o \
@@ -681,12 +684,11 @@
math_functors_test$(EXEEXT): \
$(common_test_objects) \
- expm1.o \
math_functors_test.o \
timer.o \
mc_enum_test$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(common_test_objects) \
datum_base.o \
facets.o \
@@ -732,7 +734,7 @@
timer.o \
path_utility_test$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(common_test_objects) \
global_settings.o \
miscellany.o \
@@ -847,7 +849,7 @@
timer.o \
generate_passkey$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(main_auxiliary_common_objects) \
authenticity.o \
calendar_date.o \
@@ -868,7 +870,7 @@
test_coding_rules$(EXEEXT): POST_LINK_COMMAND = $(test_coding_rules_test)
test_coding_rules$(EXEEXT): EXTRA_LDFLAGS = -lboost_regex-gcc-1_33_1
test_coding_rules$(EXEEXT): \
- $(boost_filesystem_objects) \
+ $(boost_objects) \
$(main_auxiliary_common_objects) \
my_test_coding_rules.o \
test_coding_rules.o \
=== modified file 'workhorse.make'
--- workhorse.make 2009-03-31 02:19:26 +0000
+++ workhorse.make 2009-04-02 23:00:14 +0000
@@ -277,6 +277,7 @@
all_source_directories := \
$(src_dir) \
/opt/lmi/third_party/src/boost/libs/filesystem/src \
+ /opt/lmi/third_party/src/boost/libs/system/src \
/opt/lmi/third_party/src/cgicc \
/opt/lmi/third_party/src/libxml \
@@ -587,6 +588,11 @@
REQUIRED_ARFLAGS = \
-rus
+# Boost filesystem library #includes additional file. Furthermore, there's
+# a warning while compiling it.
+$(boost_objects): REQUIRED_CPPFLAGS += -I/opt/lmi/third_party/src/boost
+$(boost_objects): REQUIRED_CXXFLAGS += -Wno-error
+
# Prefer to invoke GNU 'ld' through the compiler frontends 'gcc' and
# 'g++' because that takes care of linking the required libraries for
# each language. Accordingly, pass GNU 'ld' options with '-Wl,'.
- [lmi] patch: upgrade to Boost 1.38.0,
Vaclav Slavik <=