python3/CustomTarget_PythonFramework.mk | 58 -------------------------------- python3/ExternalProject_python3.mk | 51 ++++++++++++++++++++++++++++ python3/GeneratedPackage_python3.mk | 18 +++++++++ python3/Module_python3.mk | 2 - scp2/source/python/file_python.scp | 6 --- solenv/gbuild/GeneratedPackage.mk | 8 ++++ 6 files changed, 78 insertions(+), 65 deletions(-)
New commits: commit 6cac17078c46df312ef145d1c5a136848204c107 Author: David Tardon <dtar...@redhat.com> Date: Sat May 4 14:59:45 2013 +0200 install python framework using filelist Change-Id: Ib3a98d8268d0a1973d5f06b993c293fd41ba47e1 Reviewed-on: https://gerrit.libreoffice.org/3779 Reviewed-by: David Tardon <dtar...@redhat.com> Tested-by: David Tardon <dtar...@redhat.com> diff --git a/python3/GeneratedPackage_python3.mk b/python3/GeneratedPackage_python3.mk new file mode 100644 index 0000000..91e62bd --- /dev/null +++ b/python3/GeneratedPackage_python3.mk @@ -0,0 +1,18 @@ +# -*- 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_GeneratedPackage_GeneratedPackage,python3,$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO)) + +$(eval $(call gb_GeneratedPackage_use_unpacked,python3,python3)) + +$(eval $(call gb_GeneratedPackage_use_external_project,python3,python3)) + +$(eval $(call gb_GeneratedPackage_add_dir,python3,program/LibreOfficePython.framework,LibreOfficePython.framework)) + +# vim: set noet sw=4 ts=4: diff --git a/python3/Module_python3.mk b/python3/Module_python3.mk index 831f79e..eb2ec39 100644 --- a/python3/Module_python3.mk +++ b/python3/Module_python3.mk @@ -15,7 +15,7 @@ ifeq ($(SYSTEM_PYTHON),NO) $(eval $(call gb_Module_add_targets,python3,\ UnpackedTarball_python3 \ ExternalProject_python3 \ - $(if $(filter MACOSX,$(OS)),Zip_PythonFramework,ExternalPackage_python3) \ + $(if $(filter MACOSX,$(OS)),GeneratedPackage_python3,ExternalPackage_python3) \ )) endif diff --git a/scp2/source/python/file_python.scp b/scp2/source/python/file_python.scp index c065ea4..f6b4e83 100644 --- a/scp2/source/python/file_python.scp +++ b/scp2/source/python/file_python.scp @@ -104,15 +104,9 @@ End File gid_File_Py_Python_Core //FIXME the binaries and libs in the package need x bit but USE_INTERNAL_RIGHTS does not work so set BIN_FILE_BODY here as a temporary hack which makes everything executable BIN_FILE_BODY; - #ifdef MACOSX - Dir = gid_Brand_Dir_Program; - Name = "LibreOfficePython.framework.zip"; - Styles = (ARCHIVE,USE_INTERNAL_RIGHTS); - #else Dir = FILELIST_DIR; Name = "python3.filelist"; Styles = (FILELIST,USE_INTERNAL_RIGHTS); - #endif End #ifdef WNT diff --git a/solenv/gbuild/GeneratedPackage.mk b/solenv/gbuild/GeneratedPackage.mk index 91714e9..893f929 100644 --- a/solenv/gbuild/GeneratedPackage.mk +++ b/solenv/gbuild/GeneratedPackage.mk @@ -97,6 +97,14 @@ $(call gb_GeneratedPackage_get_target,$(1)) : $(call gb_UnpackedTarball_get_targ endef +# Depend on an external project. +# +# gb_GeneratedPackage_use_external_project package project +define gb_GeneratedPackage_use_external_project +$(call gb_GeneratedPackage_get_target,$(1)) : $(call gb_ExternalProject_get_target,$(2)) + +endef + # Add a dir to the package. # # The srcdir will be copied to $(INSTDIR) as destdir. commit eb5056dc2eb1bed5dffeca889810b0a5d5246b11 Author: David Tardon <dtar...@redhat.com> Date: Sat May 4 14:50:51 2013 +0200 the MacOS X cleanup is logically a part of build ... so move it to python/ExternalProject_python3.mk, where it belongs. Change-Id: Ib99a6a40182341257f79dd289eac51806be46fcf Reviewed-on: https://gerrit.libreoffice.org/3778 Reviewed-by: David Tardon <dtar...@redhat.com> Tested-by: David Tardon <dtar...@redhat.com> diff --git a/python3/CustomTarget_PythonFramework.mk b/python3/CustomTarget_PythonFramework.mk deleted file mode 100644 index e54b5fe..0000000 --- a/python3/CustomTarget_PythonFramework.mk +++ /dev/null @@ -1,58 +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_CustomTarget_CustomTarget,python3/fixscripts)) -$(eval $(call gb_CustomTarget_CustomTarget,python3/fixinstallnames)) -$(eval $(call gb_CustomTarget_CustomTarget,python3/executables)) - -python3_fw_prefix=$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO/LibreOfficePython.framework - -# rule to allow relocating the whole framework, removing reference to buildinstallation directory -$(call gb_CustomTarget_get_target,python3/fixscripts): $(call gb_ExternalProject_get_target,python3) - $(call gb_Output_announce,python3 - remove reference to installroot from scripts,build,CUS,5) - $(COMMAND_ECHO)for file in \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/2to3 \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/2to3-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/idle$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/pydoc$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)-config \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m-config \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/pyvenv-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) ; do \ - { rm "$$file" && awk '\ - BEGIN {print "#!/bin/bash\n\ -origpath=$$(pwd)\n\ -bindir=$$(cd $$(dirname \"$$0\") ; pwd)\n\ -cd \"$$origpath\"\n\ -\"$$bindir/../Resources/Python.app/Contents/MacOS/LibreOfficePython\" - $$@ <<EOF"} \ - FNR==1{next} \ - {print} \ - END {print "EOF"}' > "$$file" ; } < "$$file" ; chmod +x "$$file" ; done - touch $@ - -$(call gb_CustomTarget_get_target,python3/fixinstallnames): $(call gb_ExternalProject_get_target,python3) - $(call gb_Output_announce,python3 - fix installname,build,CUS,5) - install_name_tool -change \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/LibreOfficePython \ - @executable_path/../../../../LibreOfficePython \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/Resources/Python.app/Contents/MacOS/LibreOfficePython - touch $@ - -# also delete binaries that are symlinked in scp2 -$(call gb_CustomTarget_get_target,python3/executables): $(call gb_ExternalProject_get_target,python3) - $(call gb_Output_announce,python3 - fix installnames in executables,build,CUS,5) - cd $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin ; \ - for file in python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ - python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \ - pythonw$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) ; do \ - install_name_tool -change \ - $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/LibreOfficePython \ - @executable_path/../LibreOfficePython $$file ; done - touch $@ - -# vim: set noet sw=4 ts=4: diff --git a/python3/ExternalProject_python3.mk b/python3/ExternalProject_python3.mk index a01e115..c61e506 100644 --- a/python3/ExternalProject_python3.mk +++ b/python3/ExternalProject_python3.mk @@ -18,6 +18,11 @@ $(eval $(call gb_ExternalProject_use_externals,python3,\ $(eval $(call gb_ExternalProject_register_targets,python3,\ build \ + $(if $(filter MACOSX,$(OS)),\ + fixscripts \ + fixinstallnames \ + executables \ + ) \ )) ifeq ($(OS)$(COM),WNTMSC) @@ -103,4 +108,50 @@ $(call gb_ExternalProject_get_state_target,python3,build) : endif +ifeq ($(OS),MACOSX) + +python3_fw_prefix=$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO/LibreOfficePython.framework + +# rule to allow relocating the whole framework, removing reference to buildinstallation directory +$(call gb_ExternalProject_get_state_target,python3,fixscripts) : $(call gb_ExternalProject_get_state_target,python3,build) + $(call gb_Output_announce,python3 - remove reference to installroot from scripts,build,CUS,5) + $(COMMAND_ECHO)for file in \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/2to3 \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/2to3-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/idle$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/pydoc$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)-config \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m-config \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/pyvenv-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) ; do \ + { rm "$$file" && awk '\ + BEGIN {print "#!/bin/bash\n\ +origpath=$$(pwd)\n\ +bindir=$$(cd $$(dirname \"$$0\") ; pwd)\n\ +cd \"$$origpath\"\n\ +\"$$bindir/../Resources/Python.app/Contents/MacOS/LibreOfficePython\" - $$@ <<EOF"} \ + FNR==1{next} \ + {print} \ + END {print "EOF"}' > "$$file" ; } < "$$file" ; chmod +x "$$file" ; done + touch $@ + +$(call gb_ExternalProject_get_state_target,python3,fixinstallnames) : $(call gb_ExternalProject_get_state_target,python3,build) + install_name_tool -change \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/LibreOfficePython \ + @executable_path/../../../../LibreOfficePython \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/Resources/Python.app/Contents/MacOS/LibreOfficePython + touch $@ + +# also delete binaries that are symlinked in scp2 +$(call gb_ExternalProject_get_state_target,python3,executables) : $(call gb_ExternalProject_get_state_target,python3,build) + cd $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin ; \ + for file in python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \ + python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \ + pythonw$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) ; do \ + install_name_tool -change \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/LibreOfficePython \ + @executable_path/../LibreOfficePython $$file ; done + touch $@ + +endif + # vim: set noet sw=4 ts=4: diff --git a/python3/Module_python3.mk b/python3/Module_python3.mk index 5ab63ba..831f79e 100644 --- a/python3/Module_python3.mk +++ b/python3/Module_python3.mk @@ -15,7 +15,7 @@ ifeq ($(SYSTEM_PYTHON),NO) $(eval $(call gb_Module_add_targets,python3,\ UnpackedTarball_python3 \ ExternalProject_python3 \ - $(if $(filter MACOSX,$(OS)),Zip_PythonFramework CustomTarget_PythonFramework,ExternalPackage_python3) \ + $(if $(filter MACOSX,$(OS)),Zip_PythonFramework,ExternalPackage_python3) \ )) endif _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits