[Libreoffice-commits] core.git: 2 commits - config_host/config_folders.h.in config_host.mk.in configure.ac Makefile.in

Tor Lillqvist tml at iki.fi
Sat Aug 10 04:20:12 PDT 2013


 Makefile.in                     |    8 +---
 config_host.mk.in               |    3 +
 config_host/config_folders.h.in |   42 ++++++++++++++++++++++++
 configure.ac                    |   70 ++++++++++++++++++++++++++++++++++++++++
 4 files changed, 118 insertions(+), 5 deletions(-)

New commits:
commit 6a84a6ed0b1d30c8feb551a3a4db5aab437a74f7
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sat Aug 10 14:01:21 2013 +0300

    Start of enabling use of a more proper "Mac-like" install tree structure
    
    First cut was at https://gerrit.libreoffice.org/#/c/2310/ but was
    abandoned by myself. Now getting back to the idea, but this time I
    will make it optional on OS X, and introduce it in smaller steps.
    
    Change-Id: Id88517fee8d49056b8bbecb0921206dc6b29580b

diff --git a/config_host.mk.in b/config_host.mk.in
index 4524b3b..060a40f 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -302,6 +302,9 @@ export LIBLANGTAG_CFLAGS=$(gb_SPACE)@LIBLANGTAG_CFLAGS@
 export LIBLANGTAG_LIBS=$(gb_SPACE)@LIBLANGTAG_LIBS@
 export LIBLAYOUT_JAR=@LIBLAYOUT_JAR@
 export LIBLOADER_JAR=@LIBLOADER_JAR@
+export LIBO_BIN_FOLDER=@LIBO_BIN_FOLDER@
+export LIBO_SHARE_FOLDER=@LIBO_SHARE_FOLDER@
+export LIBO_SHARE_RESOURCE_FOLDER=@LIBO_SHARE_RESOURCE_FOLDER@
 export LIBO_VERSION_MAJOR=@LIBO_VERSION_MAJOR@
 export LIBO_VERSION_MICRO=@LIBO_VERSION_MICRO@
 export LIBO_VERSION_MINOR=@LIBO_VERSION_MINOR@
diff --git a/config_host/config_folders.h.in b/config_host/config_folders.h.in
new file mode 100644
index 0000000..f06abd6
--- /dev/null
+++ b/config_host/config_folders.h.in
@@ -0,0 +1,42 @@
+/* Configuration of subfolder names in the installation tree. The
+ * values of these macros when configured will be strings. The names
+ * of these macros reflect what the value would be in an "ideal" world
+ * on Linux, not current reality. (For example LIBO_BIN_FOLDER is
+ * actually "program" on Linux and most other Unixes.)
+ */
+
+#ifndef CONFIG_FOLDERS_H
+#define CONFIG_FOLDERS_H
+
+/* where the soffice executable and other end-user-invoked executables are */
+#undef LIBO_BIN_FOLDER
+
+/* where the *rc / *.ini file are */
+#undef LIBO_ETC_FOLDER
+
+/* where helper executables run by soffice are */
+#undef LIBO_LIBEXEC_FOLDER
+
+/* where dynamic libraries loaded directly or programmatically are */
+#undef LIBO_LIB_FOLDER
+
+/* where read-only resources are in general */
+#undef LIBO_SHARE_FOLDER
+
+/* where java jars are */
+#undef LIBO_SHARE_JAVA_FOLDER
+
+/* LO's own "resources" */
+#undef LIBO_SHARE_RESOURCE_FOLDER
+
+/* LO's "shell" artwork */
+#undef LIBO_SHARE_SHELL_FOLDER
+
+/* URE folders */
+#undef LIBO_URE_BIN_FOLDER
+#undef LIBO_URE_ETC_FOLDER
+#undef LIBO_URE_LIB_FOLDER
+#undef LIBO_URE_SHARE_FOLDER
+#undef LIBO_URE_SHARE_JAVA_FOLDER
+
+#endif
diff --git a/configure.ac b/configure.ac
index 63396d7..3ade88e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2850,6 +2850,75 @@ else
 fi
 
 dnl ===================================================================
+dnl Structure of install set
+dnl ===================================================================
+
+if test $_os = Darwin -a "$ENABLE_MACOSX_SANDBOX" = YES; then
+    // For now, couple whether to use a more "Mac-like" installation tree structure
+    // with the choice whether to use sandboxing. Could be a separate choice, or could
+    // be always on for OS X.
+    LIBO_BIN_FOLDER=MacOS
+    LIBO_ETC_FOLDER=Resources
+    LIBO_LIBEXEC_FOLDER=MacOS
+    LIBO_LIB_FOLDER=Frameworks
+    LIBO_SHARE_FOLDER=Resources
+    LIBO_SHARE_JAVA_FOLDER=Resources/java
+    LIBO_SHARE_RESOURCE_FOLDER=Resources/resource
+    LIBO_SHARE_SHELL_FOLDER=Resources/shell
+    LIBO_URE_BIN_FOLDER=MacOS
+    LIBO_URE_ETC_FOLDER=Resources
+    LIBO_URE_LIB_FOLDER=Frameworks
+    LIBO_URE_SHARE_FOLDER=Resources/ure
+    LIBO_URE_SHARE_JAVA_FOLDER=Resources/java
+elif $_os = WINNT; then
+    LIBO_BIN_FOLDER=program
+    LIBO_ETC_FOLDER=program
+    LIBO_LIBEXEC_FOLDER=program
+    LIBO_LIB_FOLDER=program
+    LIBO_SHARE_FOLDER=share
+    LIBO_SHARE_JAVA_FOLDER=program/classes
+    LIBO_SHARE_RESOURCE_FOLDER=program/resource
+    LIBO_SHARE_SHELL_FOLDER=program/shell
+    LIBO_URE_BIN_FOLDER=ure-link/bin
+    LIBO_URE_ETC_FOLDER=ure-link/bin
+    LIBO_URE_LIB_FOLDER=ure-link/bin
+    LIBO_URE_SHARE_FOLDER=ure-link/share
+    LIBO_URE_SHARE_JAVA_FOLDER=ure-link/java
+else
+    LIBO_BIN_FOLDER=program
+    LIBO_ETC_FOLDER=program
+    LIBO_LIBEXEC_FOLDER=program
+    LIBO_LIB_FOLDER=program
+    LIBO_SHARE_FOLDER=share
+    LIBO_SHARE_JAVA_FOLDER=program/classes
+    LIBO_SHARE_RESOURCE_FOLDER=program/resource
+    LIBO_SHARE_SHELL_FOLDER=program/shell
+    LIBO_URE_BIN_FOLDER=ure/bin
+    LIBO_URE_ETC_FOLDER=ure/bin
+    LIBO_URE_LIB_FOLDER=ure/lib
+    LIBO_URE_SHARE_FOLDER=ure/share
+    LIBO_URE_SHARE_JAVA_FOLDER=ure/share/java
+fi
+AC_DEFINE_UNQUOTED(LIBO_BIN_FOLDER,"$LIBO_BIN_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_ETC_FOLDER,"$LIBO_ETC_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_LIBEXEC_FOLDER,"$LIBO_LIBEXEC_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_LIB_FOLDER,"$LIBO_LIB_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_SHARE_FOLDER,"$LIBO_SHARE_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_SHARE_JAVA_FOLDER,"$LIBO_SHARE_JAVA_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_SHARE_RESOURCE_FOLDER,"$LIBO_SHARE_RESOURCE_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_SHARE_SHELL_FOLDER,"$LIBO_SHARE_SHELL_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_URE_BIN_FOLDER,"$LIBO_URE_BIN_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_URE_ETC_FOLDER,"$LIBO_URE_ETC_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_URE_LIB_FOLDER,"$LIBO_URE_LIB_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_URE_SHARE_FOLDER,"$LIBO_URE_SHARE_FOLDER")
+AC_DEFINE_UNQUOTED(LIBO_URE_SHARE_JAVA_FOLDER,"$LIBO_URE_SHARE_JAVA_FOLDER")
+
+# Not all of them needed in config_host.mk, add more if need arises
+AC_SUBST(LIBO_BIN_FOLDER)
+AC_SUBST(LIBO_SHARE_FOLDER)
+AC_SUBST(LIBO_SHARE_RESOURCE_FOLDER)
+
+dnl ===================================================================
 dnl Windows specific tests and stuff
 dnl ===================================================================
 
@@ -12421,6 +12490,7 @@ fi
 AC_CONFIG_FILES([config_host.mk Makefile lo.xcent instsetoo_native/util/openoffice.lst])
 AC_CONFIG_HEADERS([config_host/config_clang.h])
 AC_CONFIG_HEADERS([config_host/config_features.h])
+AC_CONFIG_HEADERS([config_host/config_folders.h])
 AC_CONFIG_HEADERS([config_host/config_gcc.h])
 AC_CONFIG_HEADERS([config_host/config_global.h])
 AC_CONFIG_HEADERS([config_host/config_graphite.h])
commit 70be6927279fcb32d392a03e6b8034a6c8d6447c
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sat Aug 10 13:45:14 2013 +0300

    Bypass install-gdb-printers on OS X, they don't work anyway
    
    Change-Id: I5636ba90d5513ecd6cb3bd20b3f583f8cd221717

diff --git a/Makefile.in b/Makefile.in
index 79974d3..3793b98 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -306,18 +306,16 @@ ifneq ($(MACOSX_CODESIGNING_IDENTITY),)
         done; \
     done
 #
-# Sign the app bundle as a whole (will sign the soffice binary)
-#
-# The soffice binary will have been signed after linking but it needs
-# to be re-signed as it has been renamed, or modified, or something
-# after linking.
+# Sign the app bundle as a whole (will sign the soffice binary too)
 #
 # At this stage we also attach the entitlements in the sandboxing case
 #
 	codesign --force --verbose --sign $(MACOSX_CODESIGNING_IDENTITY) $(entitlements) $(DEVINSTALLDIR)/opt/LibreOffice.app
 #
 endif
+ifneq ($(OS),MACOSX)
 	@install-gdb-printers -L
+endif
 else
 	@ooinstall -l $(DEVINSTALLDIR)/opt
 endif


More information about the Libreoffice-commits mailing list