[Libreoffice-commits] .: boost/Module_boost.mk boost/Package_boostdatetime.mk boost/Package_boostthread.mk boost/StaticLibrary_boostdatetime.mk boost/StaticLibrary_boostthread.mk liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch liborcus/makefile.mk RepositoryExternal.mk

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Mon Sep 10 11:59:22 PDT 2012


 RepositoryExternal.mk                                |   17 +++++++++++++++-
 boost/Module_boost.mk                                |    2 -
 boost/Package_boostdatetime.mk                       |   14 -------------
 boost/Package_boostthread.mk                         |   14 -------------
 boost/StaticLibrary_boostdatetime.mk                 |    7 +++++-
 boost/StaticLibrary_boostthread.mk                   |    7 +++++-
 liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch |   20 +++++++++++++++++++
 liborcus/makefile.mk                                 |    4 +++
 8 files changed, 52 insertions(+), 33 deletions(-)

New commits:
commit 7f2e168421c3cd928a31a52a8b5afe97e931d3ba
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Sep 6 20:22:11 2012 +0200

    boost, orcus: disable bizarre "auto link" feature for MSVC:
    
    Boost apparently uses a MSVC auto-link feature to cause MSVC to request
    a static library with a very particular name; disable this and remove
    the associated ugly workarounds boost/Package_boost*.mk.
    (Another alternative better than Package_boost*.mk would be to
    just mangle the static library name in RepositoryFixes.mk)
    
    Change-Id: Iea91f9978da00d89d2a696f3cdd090a85cea8e64

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 82c6b17..4389a54 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -336,9 +336,24 @@ ifeq ($(OS),WNT)
 $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
 	boostthread \
 ))
-endif
+
+define gb_LinkTarget__use_boostthread
+$(call gb_LinkTarget_add_defs,$(1),\
+	-DBOOST_ALL_NO_LIB \
+)
+
+$(call gb_LinkTarget_use_static_libraries,$(1),\
+	boostthread \
+)
+endef
+
+endif # WNT
 
 define gb_LinkTarget__use_boostdatetime
+$(call gb_LinkTarget_add_defs,$(1),\
+	-DBOOST_ALL_NO_LIB \
+)
+
 $(call gb_LinkTarget_use_static_libraries,$(1),\
 	boostdatetime \
 )
diff --git a/boost/Module_boost.mk b/boost/Module_boost.mk
index 45677ff..b9da8a7 100644
--- a/boost/Module_boost.mk
+++ b/boost/Module_boost.mk
@@ -18,8 +18,6 @@ $(eval $(call gb_Module_add_targets,boost,\
 
 ifeq ($(OS),WNT)
 $(eval $(call gb_Module_add_targets,boost,\
-	Package_boostdatetime \
-	Package_boostthread \
 	StaticLibrary_boostthread \
 ))
 endif
diff --git a/boost/Package_boostdatetime.mk b/boost/Package_boostdatetime.mk
deleted file mode 100644
index d0af671..0000000
--- a/boost/Package_boostdatetime.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-$(eval $(call gb_Package_Package,boostdatetime,$(gb_StaticLibrary_OUTDIRLOCATION)))
-
-$(eval $(call gb_Package_add_file,boostdatetime,lib/libboost_date_time-vc90-mt-1_44.lib,$(notdir $(call gb_StaticLibrary_get_target,boostdatetime))))
-
-# vim: set noet sw=4 ts=4:
diff --git a/boost/Package_boostthread.mk b/boost/Package_boostthread.mk
deleted file mode 100644
index e79c39a..0000000
--- a/boost/Package_boostthread.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-$(eval $(call gb_Package_Package,boostthread,$(gb_StaticLibrary_OUTDIRLOCATION)))
-
-$(eval $(call gb_Package_add_file,boostthread,lib/libboost_thread-vc90-mt-1_44.lib,$(notdir $(call gb_StaticLibrary_get_target,boostthread))))
-
-# vim: set noet sw=4 ts=4:
diff --git a/boost/StaticLibrary_boostdatetime.mk b/boost/StaticLibrary_boostdatetime.mk
index cdd2bb2..1328d55 100644
--- a/boost/StaticLibrary_boostdatetime.mk
+++ b/boost/StaticLibrary_boostdatetime.mk
@@ -10,7 +10,12 @@
 $(eval $(call gb_StaticLibrary_StaticLibrary,boostdatetime))
 
 $(eval $(call gb_StaticLibrary_set_warnings_not_errors,boostdatetime))
-	
+
+# disable "auto link" "feature" on MSVC
+$(eval $(call gb_StaticLibrary_add_defs,boostdatetime,\
+	-DBOOST_ALL_NO_LIB \
+))
+
 $(eval $(call gb_StaticLibrary_use_unpacked,boostdatetime,boost))
 
 $(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boostdatetime,cpp))
diff --git a/boost/StaticLibrary_boostthread.mk b/boost/StaticLibrary_boostthread.mk
index 9a00cd9..3aa4859 100644
--- a/boost/StaticLibrary_boostthread.mk
+++ b/boost/StaticLibrary_boostthread.mk
@@ -10,7 +10,12 @@
 $(eval $(call gb_StaticLibrary_StaticLibrary,boostthread))
 
 $(eval $(call gb_StaticLibrary_set_warnings_not_errors,boostthread))
-	
+
+# disable "auto link" "feature" on MSVC
+$(eval $(call gb_StaticLibrary_add_defs,boostthread,\
+	-DBOOST_ALL_NO_LIB \
+))
+
 $(eval $(call gb_StaticLibrary_use_unpacked,boostthread,boost))
 
 $(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boostthread,cpp))
diff --git a/liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch b/liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch
new file mode 100644
index 0000000..18b2ed7
--- /dev/null
+++ b/liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch
@@ -0,0 +1,20 @@
+--- misc/liborcus_0.1.0/vsprojects/liborcus-static-nozip/liborcus-static-nozip.vcproj	2012-09-07 06:00:35.000000000 +0200
++++ misc/build/liborcus_0.1.0/vsprojects/liborcus-static-nozip/liborcus-static-nozip.vcproj	2012-09-10 18:10:23.821600000 +0200
+@@ -42,7 +42,7 @@
+ 				Name="VCCLCompilerTool"
+ 				Optimization="0"
+ 				AdditionalIncludeDirectories=""
+-				PreprocessorDefinitions="__ORCUS_STATIC_LIB"
++				PreprocessorDefinitions="__ORCUS_STATIC_LIB;BOOST_ALL_NO_LIB"
+ 				MinimalRebuild="true"
+ 				BasicRuntimeChecks="3"
+ 				RuntimeLibrary="3"
+@@ -107,7 +107,7 @@
+ 				Optimization="2"
+ 				EnableIntrinsicFunctions="true"
+ 				AdditionalIncludeDirectories=""
+-				PreprocessorDefinitions="__ORCUS_STATIC_LIB"
++				PreprocessorDefinitions="__ORCUS_STATIC_LIB;BOOST_ALL_NO_LIB"
+ 				RuntimeLibrary="2"
+ 				EnableFunctionLevelLinking="true"
+ 				WarningLevel="3"
diff --git a/liborcus/makefile.mk b/liborcus/makefile.mk
index 4acf2d8..86821fc 100644
--- a/liborcus/makefile.mk
+++ b/liborcus/makefile.mk
@@ -46,6 +46,10 @@ PATCH_FILES+=liborcus_0.1.0-mingw.patch
 
 .IF "$(GUI)$(COM)"=="WNTMSC"
 
+# disable boost "auto lib" in MSVC build
+# for some reason (CRLF in file?) this patch doesn't want to apply on unix...
+PATCH_FILES+=liborcus_0.1.0-boost_disable_auto_lib.patch
+
 BUILD_DIR=vsprojects/liborcus-static-nozip
 BUILD_ACTION= \
 	export BOOST_INCLUDE_DIR=$(OUTDIR)/inc/external && \


More information about the Libreoffice-commits mailing list