[Libreoffice-commits] core.git: 2 commits - python3/CustomTarget_PythonFramework.mk python3/ExternalProject_python3.mk python3/GeneratedPackage_python3.mk python3/Module_python3.mk scp2/source solenv/gbuild
David Tardon
dtardon at redhat.com
Sat May 4 07:43:11 PDT 2013
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 <dtardon at 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 <dtardon at redhat.com>
Tested-by: David Tardon <dtardon at 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 <dtardon at 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 <dtardon at redhat.com>
Tested-by: David Tardon <dtardon at 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
More information about the Libreoffice-commits
mailing list