summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2013-05-24 15:00:14 +0300
committerTor Lillqvist <tml@iki.fi>2013-05-24 15:03:45 +0300
commit3aeecc525c76797801e9e2b24c2ebff6ac81adac (patch)
tree9149a2f91b918f77083fdee21e42e9bc0c80c85d
parent58b9060b5f325f611dd7d5748dfa41b897aa09eb (diff)
Rename Boost libraries when built internally to match conventions
The standard Boost convention is for them to be called libboost_date_time and libboost_system (with apropriate suffix then depending on type). Did not touch the libboostthread library we build for Windows. Add the ax_boost_thread.m4 file for completeness and possible use. Document where the ax_boost*.m4 files come from. Change-Id: Ib49bee71398d62c9760a1f8fd5c46be9f3400430
-rw-r--r--Library_merged.mk2
-rw-r--r--RepositoryExternal.mk22
-rw-r--r--boost/Module_boost.mk4
-rw-r--r--boost/StaticLibrary_boost_date_time.mk (renamed from boost/StaticLibrary_boostdatetime.mk)12
-rw-r--r--boost/StaticLibrary_boost_system.mk (renamed from boost/StaticLibrary_boostsystem.mk)12
-rw-r--r--liborcus/ExternalProject_liborcus.mk4
-rw-r--r--m4/README4
-rw-r--r--m4/ax_boost_thread.m4149
-rw-r--r--sc/Library_scfilt.mk2
-rw-r--r--ucb/Library_ucpcmis1.mk2
10 files changed, 182 insertions, 31 deletions
diff --git a/Library_merged.mk b/Library_merged.mk
index 6e404df50a97..64262ca8478b 100644
--- a/Library_merged.mk
+++ b/Library_merged.mk
@@ -31,7 +31,7 @@ $(eval $(call gb_Library_use_libraries,merged,\
))
$(eval $(call gb_Library_use_externals,merged,\
- boostdatetime \
+ boost_date_time \
$(call gb_Helper_optional,DESKTOP,clucene) \
cups \
curl \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 0be205470fea..c3b0d66da38c 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -540,7 +540,7 @@ endif # SYSTEM_HUNSPELL
ifeq ($(SYSTEM_BOOST),YES)
-define gb_LinkTarget__use_boostdatetime
+define gb_LinkTarget__use_boost_date_time
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(BOOST_CPPFLAGS) \
@@ -556,7 +556,7 @@ $(call gb_LinkTarget_add_libs,$(1),\
endef
-define gb_LinkTarget__use_boostsystem
+define gb_LinkTarget__use_boost_system
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(BOOST_CPPFLAGS) \
@@ -572,7 +572,7 @@ $(call gb_LinkTarget_add_libs,$(1),\
endef
-gb_ExternalProject__use_boostsystem :=
+gb_ExternalProject__use_boost_system :=
define gb_LinkTarget__use_boost_headers
$(call gb_LinkTarget_set_include,$(1),\
@@ -587,8 +587,8 @@ gb_ExternalProject__use_boost_headers:=
else # !SYSTEM_BOOST
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
- boostdatetime \
- boostsystem \
+ boost_date_time \
+ boost_system \
))
ifeq ($(OS),WNT)
@@ -608,30 +608,30 @@ endef
endif # WNT
-define gb_LinkTarget__use_boostdatetime
+define gb_LinkTarget__use_boost_date_time
$(call gb_LinkTarget_add_defs,$(1),\
-DBOOST_ALL_NO_LIB \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
- boostdatetime \
+ boost_date_time \
)
endef
-define gb_LinkTarget__use_boostsystem
+define gb_LinkTarget__use_boost_system
$(call gb_LinkTarget_add_defs,$(1),\
-DBOOST_ALL_NO_LIB \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
- boostsystem \
+ boost_system \
)
endef
-define gb_ExternalProject__use_boostsystem
-$(call gb_LinkTarget_use_static_libraries,$(1),boostsystem)
+define gb_ExternalProject__use_boost_system
+$(call gb_LinkTarget_use_static_libraries,$(1),boost_system)
endef
define gb_LinkTarget__use_boost_headers
diff --git a/boost/Module_boost.mk b/boost/Module_boost.mk
index 9274e4ad52b4..b4b3aa1783cc 100644
--- a/boost/Module_boost.mk
+++ b/boost/Module_boost.mk
@@ -12,8 +12,8 @@ $(eval $(call gb_Module_Module,boost))
ifeq ($(SYSTEM_BOOST),NO)
$(eval $(call gb_Module_add_targets,boost,\
- StaticLibrary_boostdatetime \
- StaticLibrary_boostsystem \
+ StaticLibrary_boost_date_time \
+ StaticLibrary_boost_system \
UnpackedTarball_boost \
))
diff --git a/boost/StaticLibrary_boostdatetime.mk b/boost/StaticLibrary_boost_date_time.mk
index bea82da1cf31..fb189463f0c1 100644
--- a/boost/StaticLibrary_boostdatetime.mk
+++ b/boost/StaticLibrary_boost_date_time.mk
@@ -7,20 +7,20 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_StaticLibrary_StaticLibrary,boostdatetime))
+$(eval $(call gb_StaticLibrary_StaticLibrary,boost_date_time))
-$(eval $(call gb_StaticLibrary_set_warnings_not_errors,boostdatetime))
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,boost_date_time))
# disable "auto link" "feature" on MSVC
-$(eval $(call gb_StaticLibrary_add_defs,boostdatetime,\
+$(eval $(call gb_StaticLibrary_add_defs,boost_date_time,\
-DBOOST_ALL_NO_LIB \
))
-$(eval $(call gb_StaticLibrary_use_external,boostdatetime,boost_headers))
+$(eval $(call gb_StaticLibrary_use_external,boost_date_time,boost_headers))
-$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boostdatetime,cpp))
+$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boost_date_time,cpp))
-$(eval $(call gb_StaticLibrary_add_generated_exception_objects,boostdatetime,\
+$(eval $(call gb_StaticLibrary_add_generated_exception_objects,boost_date_time,\
UnpackedTarball/boost/libs/date_time/src/gregorian/date_generators \
UnpackedTarball/boost/libs/date_time/src/gregorian/gregorian_types \
UnpackedTarball/boost/libs/date_time/src/gregorian/greg_month \
diff --git a/boost/StaticLibrary_boostsystem.mk b/boost/StaticLibrary_boost_system.mk
index 053321b3f02f..1a950d72b3a3 100644
--- a/boost/StaticLibrary_boostsystem.mk
+++ b/boost/StaticLibrary_boost_system.mk
@@ -7,20 +7,20 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_StaticLibrary_StaticLibrary,boostsystem))
+$(eval $(call gb_StaticLibrary_StaticLibrary,boost_system))
-$(eval $(call gb_StaticLibrary_set_warnings_not_errors,boostsystem))
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,boost_system))
# disable "auto link" "feature" on MSVC
-$(eval $(call gb_StaticLibrary_add_defs,boostsystem,\
+$(eval $(call gb_StaticLibrary_add_defs,boost_system,\
-DBOOST_ALL_NO_LIB \
))
-$(eval $(call gb_StaticLibrary_use_external,boostsystem,boost_headers))
+$(eval $(call gb_StaticLibrary_use_external,boost_system,boost_headers))
-$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boostsystem,cpp))
+$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boost_system,cpp))
-$(eval $(call gb_StaticLibrary_add_generated_exception_objects,boostsystem,\
+$(eval $(call gb_StaticLibrary_add_generated_exception_objects,boost_system,\
UnpackedTarball/boost/libs/system/src/error_code \
))
diff --git a/liborcus/ExternalProject_liborcus.mk b/liborcus/ExternalProject_liborcus.mk
index b6ae1eef8d6b..70283f75da83 100644
--- a/liborcus/ExternalProject_liborcus.mk
+++ b/liborcus/ExternalProject_liborcus.mk
@@ -13,7 +13,7 @@ $(eval $(call gb_ExternalProject_use_autoconf,liborcus,build))
$(eval $(call gb_ExternalProject_use_externals,liborcus, \
boost_headers \
- boostsystem \
+ boost_system \
zlib \
))
@@ -38,7 +38,7 @@ endif
ifeq ($(SYSTEM_BOOST),YES)
liborcus_LIBS+=$(BOOST_SYSTEM_LIB)
else
-liborcus_LIBS+=$(SOLARLIB) -lboostsystem
+liborcus_LIBS+=$(SOLARLIB) -lboost_system
endif
ifeq ($(OS),ANDROID)
liborcus_LIBS+=-lgnustl_shared -lm
diff --git a/m4/README b/m4/README
index f5f4656b24a0..1653fc57c57e 100644
--- a/m4/README
+++ b/m4/README
@@ -1,3 +1,5 @@
m4 - Macros to locate and utilise pkg-config.
-work around m4 bracket stripping in MINGWSTRIP construction \ No newline at end of file
+The ax_*.m4 files are from GNU autoconf-archive, http://www.gnu.org/software/autoconf-archive/
+
+work around m4 bracket stripping in MINGWSTRIP construction
diff --git a/m4/ax_boost_thread.m4 b/m4/ax_boost_thread.m4
new file mode 100644
index 000000000000..79e12cdb4eaf
--- /dev/null
+++ b/m4/ax_boost_thread.m4
@@ -0,0 +1,149 @@
+# ===========================================================================
+# http://www.gnu.org/software/autoconf-archive/ax_boost_thread.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_BOOST_THREAD
+#
+# DESCRIPTION
+#
+# Test for Thread library from the Boost C++ libraries. The macro requires
+# a preceding call to AX_BOOST_BASE. Further documentation is available at
+# <http://randspringer.de/boost/index.html>.
+#
+# This macro calls:
+#
+# AC_SUBST(BOOST_THREAD_LIB)
+#
+# And sets:
+#
+# HAVE_BOOST_THREAD
+#
+# LICENSE
+#
+# Copyright (c) 2009 Thomas Porschberg <thomas@randspringer.de>
+# Copyright (c) 2009 Michael Tindal
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 27
+
+AC_DEFUN([AX_BOOST_THREAD],
+[
+ AC_ARG_WITH([boost-thread],
+ AS_HELP_STRING([--with-boost-thread@<:@=special-lib@:>@],
+ [use the Thread library from boost - it is possible to specify a certain library for the linker
+ e.g. --with-boost-thread=boost_thread-gcc-mt ]),
+ [
+ if test "$withval" = "no"; then
+ want_boost="no"
+ elif test "$withval" = "yes"; then
+ want_boost="yes"
+ ax_boost_user_thread_lib=""
+ else
+ want_boost="yes"
+ ax_boost_user_thread_lib="$withval"
+ fi
+ ],
+ [want_boost="yes"]
+ )
+
+ if test "x$want_boost" = "xyes"; then
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_BUILD])
+ CPPFLAGS_SAVED="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+ export CPPFLAGS
+
+ LDFLAGS_SAVED="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
+ export LDFLAGS
+
+ AC_CACHE_CHECK(whether the Boost::Thread library is available,
+ ax_cv_boost_thread,
+ [AC_LANG_PUSH([C++])
+ CXXFLAGS_SAVE=$CXXFLAGS
+
+ if test "x$host_os" = "xsolaris" ; then
+ CXXFLAGS="-pthreads $CXXFLAGS"
+ elif test "x$host_os" = "xmingw32" ; then
+ CXXFLAGS="-mthreads $CXXFLAGS"
+ else
+ CXXFLAGS="-pthread $CXXFLAGS"
+ fi
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <boost/thread/thread.hpp>]],
+ [[boost::thread_group thrds;
+ return 0;]])],
+ ax_cv_boost_thread=yes, ax_cv_boost_thread=no)
+ CXXFLAGS=$CXXFLAGS_SAVE
+ AC_LANG_POP([C++])
+ ])
+ if test "x$ax_cv_boost_thread" = "xyes"; then
+ if test "x$host_os" = "xsolaris" ; then
+ BOOST_CPPFLAGS="-pthreads $BOOST_CPPFLAGS"
+ elif test "x$host_os" = "xmingw32" ; then
+ BOOST_CPPFLAGS="-mthreads $BOOST_CPPFLAGS"
+ else
+ BOOST_CPPFLAGS="-pthread $BOOST_CPPFLAGS"
+ fi
+
+ AC_SUBST(BOOST_CPPFLAGS)
+
+ AC_DEFINE(HAVE_BOOST_THREAD,,[define if the Boost::Thread library is available])
+ BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
+
+ LDFLAGS_SAVE=$LDFLAGS
+ case "x$host_os" in
+ *bsd* )
+ LDFLAGS="-pthread $LDFLAGS"
+ break;
+ ;;
+ esac
+ if test "x$ax_boost_user_thread_lib" = "x"; then
+ for libextension in `ls -r $BOOSTLIBDIR/libboost_thread* 2>/dev/null | sed 's,.*/lib,,' | sed 's,\..*,,'`; do
+ ax_lib=${libextension}
+ AC_CHECK_LIB($ax_lib, exit,
+ [BOOST_THREAD_LIB="-l$ax_lib"; AC_SUBST(BOOST_THREAD_LIB) link_thread="yes"; break],
+ [link_thread="no"])
+ done
+ if test "x$link_thread" != "xyes"; then
+ for libextension in `ls -r $BOOSTLIBDIR/boost_thread* 2>/dev/null | sed 's,.*/,,' | sed 's,\..*,,'`; do
+ ax_lib=${libextension}
+ AC_CHECK_LIB($ax_lib, exit,
+ [BOOST_THREAD_LIB="-l$ax_lib"; AC_SUBST(BOOST_THREAD_LIB) link_thread="yes"; break],
+ [link_thread="no"])
+ done
+ fi
+
+ else
+ for ax_lib in $ax_boost_user_thread_lib boost_thread-$ax_boost_user_thread_lib; do
+ AC_CHECK_LIB($ax_lib, exit,
+ [BOOST_THREAD_LIB="-l$ax_lib"; AC_SUBST(BOOST_THREAD_LIB) link_thread="yes"; break],
+ [link_thread="no"])
+ done
+
+ fi
+ if test "x$ax_lib" = "x"; then
+ AC_MSG_ERROR(Could not find a version of the library!)
+ fi
+ if test "x$link_thread" = "xno"; then
+ AC_MSG_ERROR(Could not link against $ax_lib !)
+ else
+ case "x$host_os" in
+ *bsd* )
+ BOOST_LDFLAGS="-pthread $BOOST_LDFLAGS"
+ break;
+ ;;
+ esac
+
+ fi
+ fi
+
+ CPPFLAGS="$CPPFLAGS_SAVED"
+ LDFLAGS="$LDFLAGS_SAVED"
+ fi
+])
diff --git a/sc/Library_scfilt.mk b/sc/Library_scfilt.mk
index 014b833e1c65..209025ae4201 100644
--- a/sc/Library_scfilt.mk
+++ b/sc/Library_scfilt.mk
@@ -28,7 +28,7 @@ $(eval $(call gb_Library_use_custom_headers,scfilt,\
$(eval $(call gb_Library_use_externals,scfilt,\
boost_headers \
- boostsystem \
+ boost_system \
mdds_headers \
))
diff --git a/ucb/Library_ucpcmis1.mk b/ucb/Library_ucpcmis1.mk
index 219aafc83cfe..e69807f7e219 100644
--- a/ucb/Library_ucpcmis1.mk
+++ b/ucb/Library_ucpcmis1.mk
@@ -27,7 +27,7 @@ $(eval $(call gb_Library_use_libraries,ucpcmis1,\
$(eval $(call gb_Library_use_externals,ucpcmis1,\
boost_headers \
- boostdatetime \
+ boost_date_time \
cmis \
curl \
libxml2 \