Make the "Mac-like" or "canonical" app bundle structure always used on OS X
In other words, only executable files go in the MacOS folder. Dynamic libraries and bundled frameworks (i.e., LibreOfficePython), and nothing else, go in the Frameworks folder, and all other files go in the Resources folder. Especially, note that Java class files and rc (.ini) files also go in Resources. Such an app bundle structure is what Apple strongly suggests one should use, and it has been hinted that future versions of code signing and/or Gatekeeper will require such a structure. There is still some ugliness thanks to traces of the historical separation of URE from "the office". Like there are two separate "unorc" files, one for URE, one for the LibreOffice application. IMHO, this should be cleaned up, but is probably controversial. (Eek! I now see there are actually *three* unorc files in the app bundle. Not intentional. Need to fix that later.) Change-Id: Idcf235038deb5b8e1d061734993e9f31869b7606
This commit is contained in:
parent
43efd9b40d
commit
6492c8576e
38 changed files with 72 additions and 183 deletions
|
@ -150,7 +150,6 @@ export ENABLE_LOCKDOWN=@ENABLE_LOCKDOWN@
|
|||
export ENABLE_LPSOLVE=@ENABLE_LPSOLVE@
|
||||
export ENABLE_LTO=@ENABLE_LTO@
|
||||
export ENABLE_LWP=@ENABLE_LWP@
|
||||
export ENABLE_MACOSX_MACLIKE_APP_STRUCTURE=@ENABLE_MACOSX_MACLIKE_APP_STRUCTURE@
|
||||
export ENABLE_MACOSX_SANDBOX=@ENABLE_MACOSX_SANDBOX@
|
||||
export ENABLE_MEDIAWIKI=@ENABLE_MEDIAWIKI@
|
||||
export ENABLE_MARIADBC=@ENABLE_MARIADBC@
|
||||
|
|
|
@ -107,17 +107,6 @@
|
|||
|
||||
#define HAVE_FEATURE_MACOSX_SANDBOX 0
|
||||
|
||||
/* MACOSX_MACLIKE_APP_STRUCTURE - LibreOffice.app substructure style
|
||||
*
|
||||
* Whether the structure of the LibreOffice.app bundle is more
|
||||
* "Mac-like" and what it has been previously, for instance with all
|
||||
* dylibs in the "Frameworks" folder and all non-code data in a the
|
||||
* "Resources" folder. For now coupled to HAVE_FEATURE_MACOSX_SANDBOX
|
||||
* in configure.ac.
|
||||
*/
|
||||
|
||||
#define HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE 0
|
||||
|
||||
/* READONLY_INSTALLSET - whether to treat the installation as read-only
|
||||
*
|
||||
* Prevents attempts by LibreOffice to write into its installation. That means
|
||||
|
|
29
configure.ac
29
configure.ac
|
@ -1361,13 +1361,6 @@ AC_ARG_ENABLE(macosx-sandbox,
|
|||
adherence to App Store rules.]),
|
||||
,)
|
||||
|
||||
AC_ARG_ENABLE(canonical-installation-tree-structure,
|
||||
AS_HELP_STRING([--enable-canonical-installation-tree-structure],
|
||||
[Make the installation tree structure be more canonical for
|
||||
the platform. Implemented only for OS X. Experimental.]),
|
||||
,)
|
||||
|
||||
|
||||
AC_ARG_WITH(macosx-bundle-identifier,
|
||||
AS_HELP_STRING([--with-macosx-bundle-identifier=tld.mumble.orifice.TheOffice],
|
||||
[Define the OS X bundle identifier. Default is the somewhat weird
|
||||
|
@ -3208,7 +3201,7 @@ dnl ===================================================================
|
|||
dnl Structure of install set
|
||||
dnl ===================================================================
|
||||
|
||||
if test $_os = Darwin -a "$enable_canonical_installation_tree_structure" = yes; then
|
||||
if test $_os = Darwin; then
|
||||
LIBO_BIN_FOLDER=MacOS
|
||||
LIBO_ETC_FOLDER=Resources
|
||||
LIBO_LIBEXEC_FOLDER=MacOS
|
||||
|
@ -3225,25 +3218,6 @@ if test $_os = Darwin -a "$enable_canonical_installation_tree_structure" = yes;
|
|||
LIBO_URE_LIB_FOLDER=Frameworks
|
||||
LIBO_URE_SHARE_FOLDER=Resources/ure/share
|
||||
LIBO_URE_SHARE_JAVA_FOLDER=Resources/java
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE=TRUE
|
||||
AC_DEFINE(HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE)
|
||||
elif test $_os = Darwin; then
|
||||
LIBO_BIN_FOLDER=MacOS
|
||||
LIBO_ETC_FOLDER=MacOS
|
||||
LIBO_LIBEXEC_FOLDER=MacOS
|
||||
LIBO_LIB_FOLDER=MacOS
|
||||
LIBO_LIB_PYUNO_FOLDER=MacOS
|
||||
LIBO_SHARE_FOLDER=share
|
||||
LIBO_SHARE_HELP_FOLDER=help
|
||||
LIBO_SHARE_JAVA_FOLDER=MacOS/classes
|
||||
LIBO_SHARE_PRESETS_FOLDER=presets
|
||||
LIBO_SHARE_RESOURCE_FOLDER=MacOS/resource
|
||||
LIBO_SHARE_SHELL_FOLDER=MacOS/shell
|
||||
LIBO_URE_BIN_FOLDER=ure-link/bin
|
||||
LIBO_URE_ETC_FOLDER=ure-link/lib
|
||||
LIBO_URE_LIB_FOLDER=ure-link/lib
|
||||
LIBO_URE_SHARE_FOLDER=ure-link/share
|
||||
LIBO_URE_SHARE_JAVA_FOLDER=ure-link/share/java
|
||||
elif test $_os = WINNT; then
|
||||
LIBO_BIN_FOLDER=program
|
||||
LIBO_ETC_FOLDER=program
|
||||
|
@ -3311,7 +3285,6 @@ AC_SUBST(LIBO_URE_ETC_FOLDER)
|
|||
AC_SUBST(LIBO_URE_LIB_FOLDER)
|
||||
AC_SUBST(LIBO_URE_SHARE_FOLDER)
|
||||
AC_SUBST(LIBO_URE_SHARE_JAVA_FOLDER)
|
||||
AC_SUBST(ENABLE_MACOSX_MACLIKE_APP_STRUCTURE)
|
||||
|
||||
dnl ===================================================================
|
||||
dnl Windows specific tests and stuff
|
||||
|
|
|
@ -9,6 +9,6 @@
|
|||
|
||||
$(eval $(call gb_Package_Package,connectivity_postgresql-sdbc,$(SRCDIR)/connectivity/source/drivers/postgresql))
|
||||
|
||||
$(eval $(call gb_Package_add_file,connectivity_postgresql-sdbc,$(LIBO_BIN_FOLDER)/postgresql-sdbc.ini,postgresql-sdbc.ini))
|
||||
$(eval $(call gb_Package_add_file,connectivity_postgresql-sdbc,$(LIBO_ETC_FOLDER)/postgresql-sdbc.ini,postgresql-sdbc.ini))
|
||||
|
||||
# vim: set noet sw=4 ts=4:
|
||||
|
|
|
@ -149,6 +149,9 @@ static sal_Int32 readLogLevelFromConfiguration()
|
|||
osl_getModuleURLFromAddress(
|
||||
(void*) readLogLevelFromConfiguration, (rtl_uString **) &fileName );
|
||||
fileName = fileName.copy( fileName.lastIndexOf( '/' )+1 );
|
||||
#ifdef MACOSX
|
||||
fileName += "../Resources/";
|
||||
#endif
|
||||
fileName += "postgresql-sdbc.ini";
|
||||
rtl::Bootstrap bootstrapHandle( fileName );
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ rtl::OUString cppu::getUnoIniUri() {
|
|||
rtl::OUString uri("file:///assets/program");
|
||||
#else
|
||||
rtl::OUString uri(get_this_libpath());
|
||||
#if HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
// We keep both the LO and URE dylibs direcly in "Frameworks"
|
||||
// (that is, LIBO_LIB_FOLDER) and rc files in "Resources"
|
||||
// (LIBO_ETC_FOLDER). Except for unorc, of which there are two,
|
||||
|
|
2
external/python3/GeneratedPackage_python3.mk
vendored
2
external/python3/GeneratedPackage_python3.mk
vendored
|
@ -13,6 +13,6 @@ $(eval $(call gb_GeneratedPackage_use_unpacked,python3,python3))
|
|||
|
||||
$(eval $(call gb_GeneratedPackage_use_external_project,python3,python3))
|
||||
|
||||
$(eval $(call gb_GeneratedPackage_add_dir,python3,$(INSTROOT)/$(if $(ENABLE_MACOSX_MACLIKE_APP_STRUCTURE),Frameworks,$(LIBO_BIN_FOLDER))/LibreOfficePython.framework,LibreOfficePython.framework))
|
||||
$(eval $(call gb_GeneratedPackage_add_dir,python3,$(INSTROOT)/Frameworks/LibreOfficePython.framework,LibreOfficePython.framework))
|
||||
|
||||
# vim: set noet sw=4 ts=4:
|
||||
|
|
|
@ -88,21 +88,17 @@ $(call gb_CustomTarget_get_workdir,instsetoo_native/setup)/$(call gb_Helper_get_
|
|||
printf '[Bootstrap]\n' && \
|
||||
$(if $(SYSTEM_PYTHON),, \
|
||||
printf 'PYUNO_LOADER_PYTHONHOME=%s\n' \
|
||||
$(if $(ENABLE_MACOSX_MACLIKE_APP_STRUCTURE), \
|
||||
'$$ORIGIN/../Frameworks/LibreOfficePython.framework', \
|
||||
$(if $(filter MACOSX,$(OS)), \
|
||||
'$$ORIGIN/LibreOfficePython.framework', \
|
||||
'$$ORIGIN/python-core-$(PYTHON_VERSION)')) &&) \
|
||||
'$$ORIGIN/../Frameworks/LibreOfficePython.framework', \
|
||||
'$$ORIGIN/python-core-$(PYTHON_VERSION)') &&) \
|
||||
printf 'PYUNO_LOADER_PYTHONPATH=%s$$ORIGIN\n' \
|
||||
$(if $(SYSTEM_PYTHON), \
|
||||
'', \
|
||||
$(if $(ENABLE_MACOSX_MACLIKE_APP_STRUCTURE), \
|
||||
'$(foreach dir,/ /lib-dynload /lib-tk /site-packages,$(patsubst %/,%,$$ORIGIN/../Frameworks/LibreOfficePython.framework/Versions/Current/lib/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)$(dir))) ', \
|
||||
$(if $(filter MACOSX,$(OS)), \
|
||||
'$(foreach dir,/ /lib-dynload /lib-tk /site-packages,$(patsubst %/,%,$$ORIGIN/LibreOfficePython.framework/Versions/Current/lib/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)$(dir))) ', \
|
||||
'$(foreach dir,/ /lib-dynload /lib-tk /site-packages,$(patsubst %/,%,$$ORIGIN/../Frameworks/LibreOfficePython.framework/Versions/Current/lib/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)$(dir))) ', \
|
||||
$(if $(filter WNTMSC,$(OS)$(COM)), \
|
||||
'$(foreach dir,/ /site-packages,$(patsubst %/,%,$$ORIGIN/python-core-$(PYTHON_VERSION)/lib$(dir))) ', \
|
||||
'$(foreach dir,/ /lib-dynload /lib-tk /site-packages,$(patsubst %/,%,$$ORIGIN/python-core-$(PYTHON_VERSION)/lib$(dir))) ')))) \
|
||||
'$(foreach dir,/ /lib-dynload /lib-tk /site-packages,$(patsubst %/,%,$$ORIGIN/python-core-$(PYTHON_VERSION)/lib$(dir))) '))) \
|
||||
) > $@
|
||||
|
||||
$(call gb_CustomTarget_get_workdir,instsetoo_native/setup)/$(call gb_Helper_get_rcfile,redirect) :
|
||||
|
|
|
@ -106,8 +106,8 @@ public final class NativeLibraryLoader {
|
|||
if (path.exists()) {
|
||||
return path;
|
||||
}
|
||||
// In case of ENABLE_MACOSX_MACLIKE_APP_STRUCTURE,
|
||||
// dir is now the Resources dir, we want to look in Frameworks
|
||||
// On OS X, dir is now the Resources dir,
|
||||
// we want to look in Frameworks
|
||||
if (System.getProperty("os.name").startsWith("Mac")
|
||||
&& dir.getName().equals("Resources")) {
|
||||
dir = dir.getParentFile();
|
||||
|
|
|
@ -9,6 +9,6 @@
|
|||
|
||||
$(eval $(call gb_Package_Package,jvmfwk_jreproperties,$(call gb_CustomTarget_get_workdir,jvmfwk/jreproperties)))
|
||||
|
||||
$(eval $(call gb_Package_add_file,jvmfwk_jreproperties,$(LIBO_URE_LIB_FOLDER)/JREProperties.class,JREProperties.class))
|
||||
$(eval $(call gb_Package_add_file,jvmfwk_jreproperties,$(if $(filter MACOSX,$(OS)),$(LIBO_URE_SHARE_JAVA_FOLDER),$(LIBO_URE_LIB_FOLDER))/JREProperties.class,JREProperties.class))
|
||||
|
||||
# vim:set noet sw=4 ts=4:
|
||||
|
|
|
@ -160,7 +160,7 @@ namespace
|
|||
static OUString sIni;
|
||||
OUStringBuffer buf( 255);
|
||||
buf.append( getLibraryLocation());
|
||||
#if HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
buf.appendAscii( "/../" LIBO_ETC_FOLDER );
|
||||
#endif
|
||||
buf.appendAscii( SAL_CONFIGFILE("/sunjavaplugin") );
|
||||
|
@ -385,7 +385,8 @@ bool getJavaProps(const OUString & exePath,
|
|||
OUString usStartDir;
|
||||
//We need to set the CLASSPATH in case the office is started from
|
||||
//a different directory. The JREProperties.class is expected to reside
|
||||
//next to the plugin.
|
||||
//next to the plugin, except on OS X where it is in ../Resources/java relative
|
||||
//to the plugin.
|
||||
OUString sThisLib;
|
||||
if (osl_getModuleURLFromAddress((void *) (sal_IntPtr)& getJavaProps,
|
||||
& sThisLib.pData) == sal_False)
|
||||
|
@ -396,6 +397,13 @@ bool getJavaProps(const OUString & exePath,
|
|||
!= osl_File_E_None)
|
||||
return false;
|
||||
|
||||
#ifdef MACOSX
|
||||
if (sClassPath.endsWith("/"))
|
||||
sClassPath += "../Resources/java/";
|
||||
else
|
||||
sClassPath += "/../Resources/java";
|
||||
#endif
|
||||
|
||||
//check if we shall examine a Java for accessibility support
|
||||
//If the bootstrap variable is "1" then we pass the argument
|
||||
//"noaccessibility" to JREProperties.class. This will prevent
|
||||
|
|
|
@ -50,7 +50,7 @@ struct Bootstrap :
|
|||
const rtl::Bootstrap * operator () () {
|
||||
OUStringBuffer buf(256);
|
||||
buf.append(getLibraryLocation());
|
||||
#if HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
// For some reason the jvmfwk3rc file is traditionally in
|
||||
// "ure/lib", i.e. in LIBO_URE_ETC_FOLDER
|
||||
buf.appendAscii( "/../" LIBO_URE_ETC_FOLDER );
|
||||
|
|
|
@ -30,7 +30,7 @@ $(call gb_CustomTarget_get_workdir,pyuno/python_shell)/os.sh : \
|
|||
$(SRCDIR)/pyuno/zipcore/$(if $(filter MACOSX,$(OS)),mac,nonmac).sh
|
||||
$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),SED,1)
|
||||
sed -e "s/%%PYVERSION%%/$(pyuno_PYTHON_SHELL_VERSION)/g" \
|
||||
-e "s,%%PYTHON_FRAMEWORK_RELATIVE_PATH%%,$(if $(ENABLE_MACOSX_MACLIKE_APP_STRUCTURE),../Frameworks/),g" \
|
||||
-e "s,%%PYTHON_FRAMEWORK_RELATIVE_PATH%%,$(if $(filter MACOSX,$(OS)),../Frameworks/),g" \
|
||||
$< > $@
|
||||
|
||||
# vim: set noet sw=4 ts=4:
|
||||
|
|
|
@ -264,7 +264,7 @@ static PyObject* getComponentContext(
|
|||
|
||||
OUStringBuffer iniFileName;
|
||||
iniFileName.append( path );
|
||||
#if HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
iniFileName.appendAscii( "/../" LIBO_ETC_FOLDER );
|
||||
#endif
|
||||
iniFileName.appendAscii( "/" );
|
||||
|
|
|
@ -187,7 +187,7 @@ static void readLoggingConfig( sal_Int32 *pLevel, FILE **ppFile )
|
|||
reinterpret_cast< oslGenericFunction >(readLoggingConfig),
|
||||
(rtl_uString **) &fileName );
|
||||
fileName = fileName.copy( fileName.lastIndexOf( '/' )+1 );
|
||||
#if HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
fileName += "../" LIBO_ETC_FOLDER "/";
|
||||
#endif
|
||||
fileName += SAL_CONFIGFILE("pyuno" );
|
||||
|
|
|
@ -275,7 +275,7 @@ static OUString & getIniFileName_Impl()
|
|||
// append config file suffix
|
||||
fileName += OUString(SAL_CONFIGFILE(""));
|
||||
|
||||
#if HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
// We keep only executables in the MacOS folder, and all
|
||||
// rc files in LIBO_ETC_FOLDER (typically "Resources").
|
||||
sal_Int32 p = fileName.lastIndexOf( "/MacOS/" );
|
||||
|
|
|
@ -15,7 +15,6 @@ $(eval $(call gb_InstallModule_use_auto_install_libs,scp2/base,\
|
|||
))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/base,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
ENABLE_FIREBIRD_SDBC \
|
||||
SYSTEM_FIREBIRD \
|
||||
|
|
|
@ -12,7 +12,6 @@ $(eval $(call gb_InstallModule_InstallModule,scp2/calc))
|
|||
$(eval $(call gb_InstallModule_use_auto_install_libs,scp2/calc,calc))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/calc,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
$(eval $(call gb_InstallModule_InstallModule,scp2/draw))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/draw,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ $(eval $(call gb_InstallModule_InstallModule,scp2/graphicfilter))
|
|||
$(eval $(call gb_InstallModule_use_auto_install_libs,scp2/graphicfilter,graphicfilter))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/graphicfilter,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -15,7 +15,6 @@ $(eval $(call gb_InstallModule_use_auto_install_libs,scp2/impress,\
|
|||
))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/impress,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ $(eval $(call gb_InstallModule_InstallModule,scp2/math))
|
|||
$(eval $(call gb_InstallModule_use_auto_install_libs,scp2/math,math))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/math,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -19,7 +19,6 @@ $(eval $(call gb_InstallModule_use_auto_install_libs,scp2/ooo,\
|
|||
$(eval $(call gb_InstallModule_define_if_set,scp2/ooo,\
|
||||
ENABLE_GTK \
|
||||
ENABLE_KDE \
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
ENABLE_NPAPI_FROM_BROWSER \
|
||||
ENABLE_NPAPI_INTO_BROWSER \
|
||||
|
|
|
@ -31,7 +31,6 @@ endif
|
|||
else
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/python,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ $(eval $(call gb_InstallModule_InstallModule,scp2/ure))
|
|||
$(eval $(call gb_InstallModule_use_auto_install_libs,scp2/ure,ure))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/ure,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ $(eval $(call gb_InstallModule_InstallModule,scp2/writer))
|
|||
$(eval $(call gb_InstallModule_use_auto_install_libs,scp2/writer,writer))
|
||||
|
||||
$(eval $(call gb_InstallModule_define_if_set,scp2/writer,\
|
||||
ENABLE_MACOSX_MACLIKE_APP_STRUCTURE \
|
||||
ENABLE_MACOSX_SANDBOX \
|
||||
))
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@
|
|||
#define SPECIAL_COMPONENT_LIB_NAME(name) STRING(CONCAT2(name,.dll))
|
||||
#endif
|
||||
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
#define GID_BRAND_DIR_ETC gid_Brand_Dir_Share
|
||||
#define GID_DIR_PY gid_Brand_Dir_Share
|
||||
#define GID_DIR_URE gid_Dir_Bundle_Contents
|
||||
|
@ -102,7 +102,7 @@
|
|||
|
||||
#define SCP2_OOO_BIN_DIR gid_Brand_Dir_Program
|
||||
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
#define SCP2_OOO_LIB_DIR gid_Dir_Frameworks
|
||||
#else
|
||||
#define SCP2_OOO_LIB_DIR SCP2_OOO_BIN_DIR
|
||||
|
|
|
@ -28,7 +28,7 @@ End
|
|||
|
||||
File gid_File_PostgresqlSdbc_Ini
|
||||
TXT_FILE_BODY;
|
||||
Dir = gid_Brand_Dir_Program;
|
||||
Dir = GID_BRAND_DIR_ETC;
|
||||
Name = "postgresql-sdbc.ini";
|
||||
Styles = (PACKED);
|
||||
End
|
||||
|
|
|
@ -90,10 +90,6 @@ Module gid_Module_Root_Brand
|
|||
git_License_Odt,
|
||||
gid_Credits_Odt,
|
||||
gid_Apache_Notice);
|
||||
#if defined MACOSX && !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
Unixlinks = (gid_Brand_Unixlink_Program,
|
||||
gid_Brand_Unixlink_Unopkg);
|
||||
#endif
|
||||
End
|
||||
|
||||
// Language specific brand module
|
||||
|
@ -125,7 +121,7 @@ Directory gid_Brand_Dir_Program
|
|||
End
|
||||
|
||||
Directory gid_Brand_Dir_Program_Shell
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Brand_Dir_Share;
|
||||
#else
|
||||
ParentID = gid_Brand_Dir_Program;
|
||||
|
@ -134,10 +130,8 @@ Directory gid_Brand_Dir_Program_Shell
|
|||
End
|
||||
|
||||
Directory gid_Brand_Dir_Readme
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
ParentID = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
ParentID = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
@ -446,7 +440,7 @@ Directory gid_Brand_Dir_Share_Labels
|
|||
DosName = "labels";
|
||||
End
|
||||
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
|
||||
Directory gid_Brand_Dir_Share_Ure
|
||||
ParentID = gid_Brand_Dir_Share;
|
||||
|
@ -472,26 +466,12 @@ Directory gid_Brand_Dir_Share_Xdg
|
|||
End
|
||||
#endif
|
||||
|
||||
// UnixLinks
|
||||
|
||||
#if defined MACOSX && !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
Unixlink gid_Brand_Unixlink_Program
|
||||
BIN_FILE_BODY;
|
||||
Dir = gid_Dir_Bundle_Contents;
|
||||
Name = "program";
|
||||
Target = "MacOS";
|
||||
Styles = ();
|
||||
End
|
||||
#endif
|
||||
|
||||
// Files
|
||||
|
||||
File gid_Brand_File_Html_Thirdpartylicensereadme
|
||||
Name = "LICENSE.html";
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
Dir = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
@ -560,7 +540,7 @@ File gid_Brand_File_Desktophelper_Txt
|
|||
End
|
||||
#endif
|
||||
|
||||
#if !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if !defined MACOSX
|
||||
File gid_Brand_File_Bin_Unoinfo
|
||||
BIN_FILE_BODY;
|
||||
Dir = gid_Brand_Dir_Program;
|
||||
|
@ -596,16 +576,6 @@ File gid_Brand_File_Script_Unopkg
|
|||
End
|
||||
#endif
|
||||
|
||||
#if defined MACOSX && !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
Unixlink gid_Brand_Unixlink_Unopkg
|
||||
BIN_FILE_BODY;
|
||||
Dir = gid_Brand_Dir_Program;
|
||||
Name = "unopkg";
|
||||
Target = "unopkg.bin";
|
||||
Styles = ();
|
||||
End
|
||||
#endif
|
||||
|
||||
File gid_Brand_File_Bin_Unopkg
|
||||
BIN_FILE_BODY;
|
||||
Dir = gid_Brand_Dir_Program;
|
||||
|
@ -1386,10 +1356,8 @@ End
|
|||
|
||||
File gid_License_Txt
|
||||
TXT_FILE_BODY;
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
Dir = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
@ -1404,10 +1372,8 @@ End
|
|||
|
||||
File gid_License_Odt
|
||||
BIN_FILE_BODY;
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
Dir = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
@ -1417,10 +1383,8 @@ End
|
|||
|
||||
File gid_Credits_Odt
|
||||
BIN_FILE_BODY;
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
Dir = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
@ -1430,10 +1394,8 @@ End
|
|||
|
||||
File gid_Apache_Notice
|
||||
BIN_FILE_BODY;
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
Dir = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
Dir = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
|
|
@ -81,7 +81,7 @@ End
|
|||
|
||||
Directory gid_Dir_Wizards
|
||||
Styles = (CREATE);
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Brand_Dir_Share;
|
||||
#else
|
||||
ParentID = gid_Brand_Dir_Program;
|
||||
|
@ -96,7 +96,7 @@ Directory gid_Dir_Wizards_Ui
|
|||
End
|
||||
|
||||
Directory gid_Dir_Resource
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Brand_Dir_Share;
|
||||
#else
|
||||
ParentID = gid_Brand_Dir_Program;
|
||||
|
@ -105,7 +105,7 @@ Directory gid_Dir_Resource
|
|||
End
|
||||
|
||||
Directory gid_Dir_Classes
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Brand_Dir_Share;
|
||||
DosName = "java";
|
||||
#else
|
||||
|
@ -124,10 +124,8 @@ End
|
|||
#endif
|
||||
|
||||
Directory gid_Dir_User
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
ParentID = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
ParentID = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
@ -368,10 +366,8 @@ Directory gid_Dir_Share_Fingerprint
|
|||
End
|
||||
|
||||
Directory gid_Dir_Help
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Dir_Bundle_Contents_Resources;
|
||||
#elif defined MACOSX
|
||||
ParentID = gid_Dir_Bundle_Contents;
|
||||
#else
|
||||
ParentID = gid_Dir_Brand_Root;
|
||||
#endif
|
||||
|
@ -609,7 +605,7 @@ Directory gid_Dir_Template_Common_Presnt
|
|||
End
|
||||
|
||||
Directory gid_Brand_Dir_Program_Services
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Brand_Dir_Share;
|
||||
#else
|
||||
ParentID = gid_Brand_Dir_Program;
|
||||
|
@ -618,7 +614,7 @@ Directory gid_Brand_Dir_Program_Services
|
|||
End
|
||||
|
||||
Directory gid_Brand_Dir_Program_Types
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Brand_Dir_Share;
|
||||
#else
|
||||
ParentID = gid_Brand_Dir_Program;
|
||||
|
|
|
@ -146,7 +146,7 @@ File gid_File_Bin_UIPreviewer
|
|||
#endif
|
||||
End
|
||||
|
||||
#if defined UNX && !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined UNX && !defined MACOSX
|
||||
|
||||
File gid_File_Script_Gengal
|
||||
BIN_FILE_BODY;
|
||||
|
|
|
@ -36,23 +36,10 @@ Directory gid_Dir_Common_Ure
|
|||
End
|
||||
#endif
|
||||
|
||||
#if defined MACOSX
|
||||
#if !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
Directory gid_Dir_UreLink
|
||||
ParentID = gid_Dir_Bundle_Contents;
|
||||
DosName = "ure-link";
|
||||
End
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if !defined MACOSX
|
||||
|
||||
Directory gid_Dir_Ure_Bin
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Dir_UreLink;
|
||||
#else
|
||||
ParentID = gid_Dir_Common_Ure;
|
||||
#endif
|
||||
DosName = "bin";
|
||||
End
|
||||
|
||||
|
@ -85,11 +72,11 @@ Directory gid_Dir_Ure_Java
|
|||
End
|
||||
#endif
|
||||
|
||||
#endif // !ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#endif // !MACOSX
|
||||
|
||||
#if !defined WNT
|
||||
Directory gid_Dir_Ure_Share_Misc
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
ParentID = gid_Brand_Dir_Share_Ure_Share;
|
||||
#else
|
||||
ParentID = gid_Dir_Ure_Share;
|
||||
|
@ -161,18 +148,18 @@ End
|
|||
|
||||
// We set up the URE unorc/uno.ini in scp2 because then it is easy to
|
||||
// get the platform differences into it compared to constructing it in
|
||||
// Makefiles etc. With ENABLE_MACOSX_MACLIKE_APP_STRUCTURE it goes into
|
||||
// .app/Contents/Resources/ure/unorc, on Unix into .../ure/lib/unorc
|
||||
// and on Windows into .../ure/bin/unorc. The latter two locations
|
||||
// are factored out as SCP2_URE_DL_DIR.
|
||||
// Makefiles etc. On OS X it goes into .app/Contents/Resources/ure/unorc,
|
||||
// on other Unix into .../ure/lib/unorc and on Windows into
|
||||
// .../ure/bin/unorc. The latter two locations are factored out as
|
||||
// SCP2_URE_DL_DIR.
|
||||
|
||||
// FIXME: remove this completely?
|
||||
// currently getting 'destination' at file not unique error on WNT
|
||||
// but needs handling of ENABLE_MACOSX_MACLIKE_APP_STRUCTURE then...
|
||||
// but needs handling of MACOSX then...
|
||||
#ifndef WNT
|
||||
Profile gid_Profile_Dl_Uno_Ini
|
||||
ModuleID = gid_Module_Root_Ure_Hidden;
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Dir = gid_Brand_Dir_Share_Ure;
|
||||
#else
|
||||
Dir = SCP2_URE_DL_DIR;
|
||||
|
@ -185,7 +172,7 @@ ProfileItem gid_Profileitem_Dl_Uno_Ure_Internal_Lib_Dir
|
|||
ProfileID = gid_Profile_Dl_Uno_Ini;
|
||||
Section = "Bootstrap";
|
||||
Key = "URE_INTERNAL_LIB_DIR";
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Value = "${ORIGIN}/../../Frameworks";
|
||||
#else
|
||||
Value = "${ORIGIN}";
|
||||
|
@ -197,7 +184,7 @@ ProfileItem gid_Profileitem_Dl_Uno_Ure_Internal_Java_Dir
|
|||
ProfileID = gid_Profile_Dl_Uno_Ini;
|
||||
Section = "Bootstrap";
|
||||
Key = "URE_INTERNAL_JAVA_DIR";
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Value = "${ORIGIN}/../java";
|
||||
#elif defined WNT
|
||||
Value = "${ORIGIN}/../java";
|
||||
|
@ -219,7 +206,7 @@ ProfileItem gid_Profileitem_Dl_Uno_Uno_Types
|
|||
ProfileID = gid_Profile_Dl_Uno_Ini;
|
||||
Section = "Bootstrap";
|
||||
Key = "UNO_TYPES";
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Value = "${ORIGIN}/types.rdb ${URE_MORE_TYPES}";
|
||||
#elif defined WNT
|
||||
Value = "${ORIGIN}/../misc/types.rdb ${URE_MORE_TYPES}";
|
||||
|
|
|
@ -43,7 +43,7 @@ End
|
|||
|
||||
#ifndef SYSTEM_PYTHON
|
||||
|
||||
#if !defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if !defined MACOSX
|
||||
File gid_File_Py_Bin_Python
|
||||
BIN_FILE_BODY;
|
||||
#ifdef WNT
|
||||
|
|
|
@ -38,10 +38,8 @@ ProfileItem gid_Profileitem_Pythonloader_Pythonhome
|
|||
Section = "Bootstrap";
|
||||
Order = 1;
|
||||
Key = "PYUNO_LOADER_PYTHONHOME";
|
||||
#if defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#if defined MACOSX
|
||||
Value = "$ORIGIN/../Frameworks/LibreOfficePython.framework";
|
||||
#elif defined MACOSX
|
||||
Value = "$ORIGIN/LibreOfficePython.framework";
|
||||
#else
|
||||
Value = CONCAT2($ORIGIN/python-core-,PYVERSION);
|
||||
#endif
|
||||
|
@ -56,14 +54,8 @@ ProfileItem gid_Profileitem_Pythonloader_Pythonpath
|
|||
Key = "PYUNO_LOADER_PYTHONPATH";
|
||||
#if defined SYSTEM_PYTHON
|
||||
Value = "$ORIGIN";
|
||||
#elif defined ENABLE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#define FRAMEWORKLIB CONCAT2($ORIGIN/../Frameworks/LibreOfficePython.framework/Versions/Current/lib/python,PYMAJMIN)
|
||||
Value = CONCAT4(FRAMEWORKLIB FRAMEWORKLIB,
|
||||
/lib-dynload FRAMEWORKLIB,
|
||||
/lib-tk FRAMEWORKLIB,
|
||||
/site-packages $ORIGIN);
|
||||
#elif defined MACOSX
|
||||
#define FRAMEWORKLIB CONCAT2($ORIGIN/LibreOfficePython.framework/Versions/Current/lib/python,PYMAJMIN)
|
||||
#define FRAMEWORKLIB CONCAT2($ORIGIN/../Frameworks/LibreOfficePython.framework/Versions/Current/lib/python,PYMAJMIN)
|
||||
Value = CONCAT4(FRAMEWORKLIB FRAMEWORKLIB,
|
||||
/lib-dynload FRAMEWORKLIB,
|
||||
/lib-tk FRAMEWORKLIB,
|
||||
|
|
|
@ -8,8 +8,6 @@
|
|||
<false/>
|
||||
<key>^MacOS/pythonloader.unorc$</key>
|
||||
<false/>
|
||||
<key>^MacOS/postgresql-sdbc.ini$</key>
|
||||
<false/>
|
||||
<key>^MacOS/(senddoc|python|gengal|unoinfo)$</key>
|
||||
<false/>
|
||||
<key>.*\.(png|svg|py|res|rdb)$</key>
|
||||
|
|
|
@ -38,8 +38,6 @@
|
|||
# That latter case is useful for libraries from external modules, where the
|
||||
# external build process locates them in some sub-directory.
|
||||
|
||||
my $OLD = $ENV{ENABLE_MACOSX_MACLIKE_APP_STRUCTURE} ne 'TRUE';
|
||||
|
||||
sub action($$$)
|
||||
{
|
||||
# The @__VIA_LIBRARY_PATH__ thing has no magic meaning anywhere
|
||||
|
@ -48,17 +46,17 @@ sub action($$$)
|
|||
# by the dynamic linker already in DYLD_LIBRARY_PATH.
|
||||
|
||||
my %action =
|
||||
('app/UREBIN/URELIB' => ($OLD ? '@executable_path/../lib' : '@executable_path/../Frameworks'),
|
||||
'app/OOO/URELIB' => ($OLD ? '@executable_path/../ure-link/lib' : '@executable_path/../Frameworks'),
|
||||
'app/OOO/OOO' => ($OLD ? '@executable_path' : '@executable_path/../Frameworks'),
|
||||
'app/SDKBIN/URELIB' => ($OLD ? '@executable_path/../../ure-link/lib' : '@executable_path/../Frameworks'),
|
||||
('app/UREBIN/URELIB' => '@executable_path/../Frameworks',
|
||||
'app/OOO/URELIB' => '@executable_path/../Frameworks',
|
||||
'app/OOO/OOO' => '@executable_path/../Frameworks',
|
||||
'app/SDKBIN/URELIB' => '@executable_path/../Frameworks',
|
||||
'app/NONE/URELIB' => '@__VIA_LIBRARY_PATH__',
|
||||
'app/NONE/OOO' => '@__VIA_LIBRARY_PATH__',
|
||||
'app/NONE/NONE' => '@__VIA_LIBRARY_PATH__',
|
||||
'shl/URELIB/URELIB' => '@loader_path',
|
||||
'shl/OOO/URELIB' => ($OLD ? '@loader_path/../ure-link/lib' : '@loader_path'),
|
||||
'shl/OOO/URELIB' => '@loader_path',
|
||||
'shl/OOO/OOO' => '@loader_path',
|
||||
'shl/OXT/URELIB' => ($OLD ? '@executable_path/urelibs' : '@executable_path/../Frameworks'),
|
||||
'shl/OXT/URELIB' => '@executable_path/../Frameworks',
|
||||
'shl/NONE/URELIB' => '@__VIA_LIBRARY_PATH__',
|
||||
'shl/NONE/OOO' => '@__VIA_LIBRARY_PATH__',
|
||||
'shl/NONE/NONE' => '@loader_path');
|
||||
|
|
|
@ -73,7 +73,7 @@ void extendApplicationEnvironment() {
|
|||
uri = uri.copy(0, lastDirSeperatorPos + 1);
|
||||
}
|
||||
env.append(rtl::Bootstrap::encode(uri));
|
||||
#if HAVE_FEATURE_MACOSX_MACLIKE_APP_STRUCTURE
|
||||
#ifdef MACOSX
|
||||
env.append("../" LIBO_SHARE_FOLDER "/");
|
||||
#endif
|
||||
env.append(SAL_CONFIGFILE("fundamental"));
|
||||
|
|
|
@ -15,9 +15,7 @@ $(eval $(call gb_Package_add_symbolic_link,ure_install,$(LIBO_URE_BIN_FOLDER)/un
|
|||
endif
|
||||
|
||||
ifeq (MACOSX,$(OS))
|
||||
ifeq ($(ENABLE_MACOSX_MACLIKE_APP_STRUCTURE),)
|
||||
$(eval $(call gb_Package_add_symbolic_link,ure_install,MacOS/urelibs,../ure-link/lib))
|
||||
endif
|
||||
# nothing
|
||||
else ifeq (WNT,$(OS))
|
||||
$(eval $(call gb_Package_add_file,ure_install,ure-link,ure-link))
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue