[Libreoffice-commits] core.git: Branch 'libreoffice-4-2-2' - Repository.mk scp2/inc scp2/source solenv/gbuild

Michael Stahl mstahl at redhat.com
Wed Feb 26 12:17:26 PST 2014


 Repository.mk                                |    4 +--
 scp2/inc/macros.inc                          |   22 ++++++++++++++++
 scp2/source/ooo/ure.scp                      |   35 ---------------------------
 scp2/source/sdkoo/sdkoo.scp                  |    5 +++
 solenv/gbuild/AutoInstall.mk                 |    3 ++
 solenv/gbuild/Helper.mk                      |    4 +++
 solenv/gbuild/extensions/post_PackageInfo.mk |    5 +++
 solenv/gbuild/platform/com_MSC_class.mk      |    1 
 solenv/gbuild/platform/macosx.mk             |    2 +
 solenv/gbuild/platform/mingw.mk              |    2 +
 solenv/gbuild/platform/solaris.mk            |    2 +
 solenv/gbuild/platform/unxgcc.mk             |    1 
 12 files changed, 49 insertions(+), 37 deletions(-)

New commits:
commit 1219e457d8d25a183c4e0dd35c4f5b511361c174
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Feb 26 14:23:57 2014 +0100

    fdo#75526: sdk: install URE library symlinks / import libs again
    
    This is a bit involved because since the LinkTarget now creates the
    instdir/sdk/lib/* files itself a Package cannot be used; so convert the
    URE libraries to AutoInstall and add special handling for them to
    gb_Helper_register_libraries_for_install to create the necessary links
    in the "sdk" install-module.
    
    (regression from 70c35265f517ef372cb739d4cc64499abf57a838)
    
    (cherry picked from commit 482ab0d09620f92eb3618125930dc7c4c8335b5e)
    
    Conflicts:
    	solenv/gbuild/AutoInstall.mk
    
    fdo#75526: argh missing semicolon
    (cherry picked from commit 7eeac88bdb111cc069d208cc2d82a6143748d9d3)
    
    Change-Id: Ia5467f3303d59f7f5f4a88adc22ceffb82a21ff1
    Reviewed-on: https://gerrit.libreoffice.org/8365
    Tested-by: David Tardon <dtardon at redhat.com>
    Reviewed-by: David Tardon <dtardon at redhat.com>
    (cherry picked from commit 872312d4bbea4d2fa6f8a3a1eb667e709085d54d)
    Reviewed-on: https://gerrit.libreoffice.org/8368
    Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>
    Tested-by: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>
    Tested-by: Rene Engelhard <rene at debian.org>

diff --git a/Repository.mk b/Repository.mk
index 3977ac3..578ebd4c 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -618,7 +618,7 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
 ))
 endif
 
-$(eval $(call gb_Helper_register_libraries,RTVERLIBS, \
+$(eval $(call gb_Helper_register_libraries_for_install,RTVERLIBS,ure, \
 	cppuhelper \
 	purpenvhelper \
 	salhelper \
@@ -632,7 +632,7 @@ $(eval $(call gb_Helper_register_libraries,OOOLIBS, \
 	pythonloader \
 ))
 
-$(eval $(call gb_Helper_register_libraries,UNOVERLIBS, \
+$(eval $(call gb_Helper_register_libraries_for_install,UNOVERLIBS,ure, \
 	cppu \
 	sal \
 ))
diff --git a/scp2/inc/macros.inc b/scp2/inc/macros.inc
index 1ec649d..d55c304 100755
--- a/scp2/inc/macros.inc
+++ b/scp2/inc/macros.inc
@@ -165,6 +165,28 @@
         ComponentCondition = cond; \
     End
 
+#ifdef MACOSX
+// links are craeted at configure time by odk/config/setsdkenv_unix.sh.in
+#define SDK_LIBRARY_LINK(id,name,target)
+#elif defined(WNT)
+#define SDK_LIBRARY_LINK(id,name,target) \
+    File id \
+        TXT_FILE_BODY; \
+        Styles = (PACKED); \
+        Dir = gid_Dir_Lib_Sdk; \
+        Name = name; \
+    End
+#else
+#define SDK_LIBRARY_LINK(id,name,target) \
+    Unixlink id \
+     BIN_FILE_BODY; \
+     Styles = (); \
+     Dir = gid_Dir_Lib_Sdk; \
+     Name = name; \
+     Target = target; \
+    End
+#endif
+
 #define STD_LIB_FILE(id,name) \
     File id \
         Name   = LIBNAME(name); \
diff --git a/scp2/source/ooo/ure.scp b/scp2/source/ooo/ure.scp
index 3cf19c2..0fb18d9 100644
--- a/scp2/source/ooo/ure.scp
+++ b/scp2/source/ooo/ure.scp
@@ -94,13 +94,6 @@ End
 
 // Public Dynamic Libraries:
 
-File gid_File_Dl_Cppu
-    LIB_FILE_BODY;
-    Dir = SCP2_URE_DL_DIR;
-    Name = SCP2_URE_DL_UNO_VER("cppu", "3");
-    Styles = (PACKED);
-End
-
 #ifdef AIX
 Unixlink gid_Unixlink_File_Dl_Cppu
     BIN_FILE_BODY;
@@ -111,13 +104,6 @@ Unixlink gid_Unixlink_File_Dl_Cppu
 End
 #endif
 
-File gid_File_Dl_Cppuhelper
-    LIB_FILE_BODY;
-    Dir = SCP2_URE_DL_DIR;
-    Name = SCP2_URE_DL_UNO_COMID_VER("cppuhelper", "3");
-    Styles = (PACKED);
-End
-
 #ifdef AIX
 Unixlink gid_Unixlink_File_Dl_Cppuhelper
     BIN_FILE_BODY;
@@ -128,13 +114,6 @@ Unixlink gid_Unixlink_File_Dl_Cppuhelper
 End
 #endif
 
-File gid_File_Dl_PurpEnvHelper
-    LIB_FILE_BODY;
-    Dir = SCP2_URE_DL_DIR;
-    Name = SCP2_URE_DL_UNO_COMID_VER("purpenvhelper", "3");
-    Styles = (PACKED);
-End
-
 #ifdef AIX
 Unixlink gid_Unixlink_File_Dl_PurpEnvHelper
     BIN_FILE_BODY;
@@ -145,13 +124,6 @@ Unixlink gid_Unixlink_File_Dl_PurpEnvHelper
 End
 #endif
 
-File gid_File_Dl_Sal
-    LIB_FILE_BODY;
-    Dir = SCP2_URE_DL_DIR;
-    Name = SCP2_URE_DL_UNO_VER("sal", "3");
-    Styles = (PACKED);
-End
-
 #ifdef AIX
 Unixlink gid_Unixlink_File_Dl_Sal
     BIN_FILE_BODY;
@@ -162,13 +134,6 @@ Unixlink gid_Unixlink_File_Dl_Sal
 End
 #endif
 
-File gid_File_Dl_Salhelper
-    LIB_FILE_BODY;
-    Dir = SCP2_URE_DL_DIR;
-    Name = SCP2_URE_DL_UNO_COMID_VER("salhelper", "3");
-    Styles = (PACKED);
-End
-
 #ifdef AIX
 Unixlink gid_Unixlink_File_Dl_Salhelper
     BIN_FILE_BODY;
diff --git a/scp2/source/sdkoo/sdkoo.scp b/scp2/source/sdkoo/sdkoo.scp
index c03b664..f73e3e8 100644
--- a/scp2/source/sdkoo/sdkoo.scp
+++ b/scp2/source/sdkoo/sdkoo.scp
@@ -59,6 +59,11 @@ Directory gid_Dir_Sdkoo_Bin
     DosName = "bin";
 End
 
+Directory gid_Dir_Lib_Sdk
+    ParentID = gid_Dir_Sdkoo_Sdk;
+    DosName = "lib";
+End
+
 Module gid_Module_Root_SDK
     Name = "sdkoo";
     Description = "sdkoo";
diff --git a/solenv/gbuild/AutoInstall.mk b/solenv/gbuild/AutoInstall.mk
index a754485..09f2378 100644
--- a/solenv/gbuild/AutoInstall.mk
+++ b/solenv/gbuild/AutoInstall.mk
@@ -24,9 +24,12 @@ $(call gb_AutoInstall_get_target,%) : $(SRCDIR)/Repository.mk $(GBUILDDIR)/AutoI
 	echo "/* autogenerated installs for group $* */" > $@
 	$(call gb_AutoInstall__make_define,\
 		$(foreach lib,$(gb_Library_MODULE_$*),auto_$*_lib_$(lib)) \
+		$(foreach lib,$(gb_SdkLinkLibrary_MODULE_$*),auto_$*_link_$(lib)) \
 		$(foreach exe,$(gb_Executable_MODULE_$*),auto_$*_exe_$(exe)))
 	$(foreach lib,$(gb_Library_MODULE_$*),\
 		echo '$(SCP2LIBTEMPLATE)(auto_$*_lib_$(lib),$(call gb_Library_get_runtime_filename,$(lib))$(if $(SCP2COMPONENTCONDITION),$(COMMA)$(SCP2COMPONENTCONDITION)))' >> $@;)
+	$(foreach lib,$(gb_SdkLinkLibrary_MODULE_$*),\
+		echo 'SDK_LIBRARY_LINK(auto_$*_link_$(lib),$(notdir $(call gb_Library_get_sdk_link_lib,$(lib))),../../ure-link/lib/$(call gb_Library_get_runtime_filename,$(lib)))' >> $@;)
 	$(foreach exe,$(gb_Executable_MODULE_$*),\
 		echo "$(SCP2EXETEMPLATE)(auto_$*_exe_$(subst -,_,$(exe)),$(call gb_Executable_get_filename,$(exe)))" >> $@;)
 
diff --git a/solenv/gbuild/Helper.mk b/solenv/gbuild/Helper.mk
index a22f2f8..483aced 100644
--- a/solenv/gbuild/Helper.mk
+++ b/solenv/gbuild/Helper.mk
@@ -156,11 +156,15 @@ endef
 
 # the first argument is the group, which sets rpaths etc.
 # the second argument is the install module, which describes in which distro package/msi a lib should show up
+# UGLY: for versioned libraries "sdk" module is hard-coded for now
 define gb_Helper_register_libraries_for_install
 $(call gb_Helper_register_libraries,$(1),$(3))
 
 gb_Library_MODULE_$(2) += $(filter-out $(gb_MERGEDLIBS) $(gb_URELIBS),$(3))
 
+$(if $(filter UNOVERLIBS RTVERLIBS,$(1)),\
+	gb_SdkLinkLibrary_MODULE_sdk += $(3))
+
 endef
 
 define gb_Helper_register_jars
diff --git a/solenv/gbuild/extensions/post_PackageInfo.mk b/solenv/gbuild/extensions/post_PackageInfo.mk
index aa16e0d..e0916b4 100644
--- a/solenv/gbuild/extensions/post_PackageInfo.mk
+++ b/solenv/gbuild/extensions/post_PackageInfo.mk
@@ -27,6 +27,7 @@ gb_PackageInfo_InstallModules := \
 define gb_PackageInfo_emit_binaries_command
 @touch $(foreach suf,executables libraries files,$(gb_PackageInfo_get_target)/$(1).$(suf))
 @$(foreach executable,$(gb_Executable_MODULE_$(1)),echo "$(patsubst $(INSTDIR)/%,%,$(call gb_Executable_get_target,$(executable)))" >> $(gb_PackageInfo_get_target)/$(1).executables &&) true
+@$(foreach library,$(gb_SdkLinkLibrary_MODULE_$(1)),echo "sdk/lib/$(call gb_Library_get_linktarget,$(library))" >> $(gb_PackageInfo_get_target)/$(1).sdklinklibraries &&) true
 @$(foreach library,$(gb_Library_MODULE_$(1)),echo "$(patsubst $(INSTDIR)/%,%,$(call gb_Library_get_target,$(library)))" >> $(gb_PackageInfo_get_target)/$(1).libraries &&) true
 
 endef
@@ -89,6 +90,10 @@ install-package-%: $(foreach filelist,files executables libraries,$(gb_PackageIn
 	do \
 		install -D $(INSTDIR)/$${executable} $(INSTALLDIR)/$${executable} ;\
 	done
+	for library in `cat $(gb_PackageInfo_get_target)/$*.sdklinklibraries`; \
+	do \
+		install -D -m644 $(INSTDIR)/$${library} $(INSTALLDIR)/$${library}; \
+	done
 	for library in `cat $(gb_PackageInfo_get_target)/$*.libraries`; \
 	do \
 		install -D -m644 $(INSTDIR)/$${library} $(INSTALLDIR)/$${library}; \
diff --git a/solenv/gbuild/platform/com_MSC_class.mk b/solenv/gbuild/platform/com_MSC_class.mk
index 4c5454c..603f0e0 100644
--- a/solenv/gbuild/platform/com_MSC_class.mk
+++ b/solenv/gbuild/platform/com_MSC_class.mk
@@ -348,6 +348,7 @@ define gb_Library_get_ilibfilename
 $(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_ILIBFILENAMES)))
 endef
 
+gb_Library_get_sdk_link_lib = $(gb_Library_get_ilib_target)
 
 # StaticLibrary class
 
diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk
index c46cba1..cd5c0c3 100644
--- a/solenv/gbuild/platform/macosx.mk
+++ b/solenv/gbuild/platform/macosx.mk
@@ -246,6 +246,8 @@ endef
 
 gb_Library__set_soversion_script_platform = $(gb_Library__set_soversion_script)
 
+gb_Library_get_sdk_link_lib = $(gb_Library_get_versionlink_target)
+
 # bundle is a special kind of library that exists only on Darwin/OSX
 # set the TARGETTYPE to Bundle, and clear install_name(RPATH)
 define gb_Library_Bundle
diff --git a/solenv/gbuild/platform/mingw.mk b/solenv/gbuild/platform/mingw.mk
index ac5218c..870004f 100644
--- a/solenv/gbuild/platform/mingw.mk
+++ b/solenv/gbuild/platform/mingw.mk
@@ -265,6 +265,8 @@ define gb_Library_get_ilibfilename
 $(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_ILIBFILENAMES)))
 endef
 
+gb_Library_get_sdk_link_lib = $(gb_Library_get_ilib_target)
+
 # Executable class
 
 gb_Executable_EXT := .exe
diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index 2115a4a..8019fcd 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -273,6 +273,8 @@ endef
 
 gb_Library__set_soversion_script_platform = $(gb_Library__set_soversion_script)
 
+gb_Library_get_sdk_link_lib = $(gb_Library_get_versionlink_target)
+
 # Executable class
 
 gb_Executable_EXT :=
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 75d5d21..1276e57 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -271,6 +271,7 @@ endef
 
 gb_Library__set_soversion_script_platform = $(gb_Library__set_soversion_script)
 
+gb_Library_get_sdk_link_lib = $(gb_Library_get_versionlink_target)
 
 # Executable class
 


More information about the Libreoffice-commits mailing list