diff options
author | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2011-06-06 20:09:06 +0200 |
---|---|---|
committer | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2011-06-06 20:09:06 +0200 |
commit | 41893e087a482da83e80cc553f225d877a776f1d (patch) | |
tree | 30de2122f2b1213a598bb4e3615ad260dcfe3fd0 /pyuno | |
parent | 47a7b9021f07f368c9c2f02cb10417d4a3acb6bf (diff) |
allow to use internal Python on Mac (Python built as framework)
Diffstat (limited to 'pyuno')
-rw-r--r-- | pyuno/source/loader/makefile.mk | 6 | ||||
-rw-r--r-- | pyuno/source/loader/makefile.mk.orig | 94 | ||||
-rw-r--r-- | pyuno/source/loader/makefile.mk.rej | 20 | ||||
-rw-r--r-- | pyuno/source/module/makefile.mk | 8 | ||||
-rw-r--r-- | pyuno/source/module/makefile.mk.orig | 154 | ||||
-rw-r--r-- | pyuno/source/module/makefile.mk.rej | 23 | ||||
-rwxr-xr-x | pyuno/zipcore/makefile.mk | 20 | ||||
-rwxr-xr-x | pyuno/zipcore/makefile.mk.orig | 132 | ||||
-rw-r--r-- | pyuno/zipcore/python.sh | 13 |
9 files changed, 458 insertions, 12 deletions
diff --git a/pyuno/source/loader/makefile.mk b/pyuno/source/loader/makefile.mk index 76c3dc2ffecd..d8791e9ffa8e 100644 --- a/pyuno/source/loader/makefile.mk +++ b/pyuno/source/loader/makefile.mk @@ -85,10 +85,14 @@ $(DLLDEST)$/%.py: %.py cp $? $@ .ENDIF # L10N_framework -ALLTAR : $(MISC)/pythonloader.component +ALLTAR : $(MISC)/pythonloader.component $(eq,$(OS),MACOSX $(MISC)/installname_loader $(NULL)) $(MISC)/pythonloader.component .ERRREMOVE : \ $(SOLARENV)/bin/createcomponent.xslt pythonloader.component $(XSLTPROC) --nonet --stringparam uri \ 'vnd.sun.star.expand:$$OOO_BASE_DIR/program/$(SHL1TARGETN:f)' -o $@ \ $(SOLARENV)/bin/createcomponent.xslt pythonloader.component + +$(MISC)/installname_loader : $(LB)/$(TARGET)$(DLLPOST) + install_name_tool -change $(PYTHON_MAKEINSTALLDIR)/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython @loader_path/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython $< + touch $@ diff --git a/pyuno/source/loader/makefile.mk.orig b/pyuno/source/loader/makefile.mk.orig new file mode 100644 index 000000000000..76c3dc2ffecd --- /dev/null +++ b/pyuno/source/loader/makefile.mk.orig @@ -0,0 +1,94 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* +PRJ=..$/.. + +PRJNAME=pyuno +TARGET=pythonloader.uno +ENABLE_EXCEPTIONS=TRUE + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk +.IF "$(L10N_framework)"=="" +DLLPRE = + +#------------------------------------------------------------------- + +.IF "$(OS)$(COMEX)" == "SOLARIS4" +# no -Bdirect for SunWS CC +DIRECT= $(LINKFLAGSDEFS) +.ENDIF + +.IF "$(SYSTEM_PYTHON)" == "YES" +PYTHONLIB=$(PYTHON_LIBS) +CFLAGS+=$(PYTHON_CFLAGS) +.IF "$(EXTRA_CFLAGS)"!="" +PYTHONLIB+= -framework Python +.ENDIF # "$(EXTRA_CFLAGS)"!="" +.ELSE +.INCLUDE : pyversion.mk + +CFLAGS+= -I$(SOLARINCDIR)$/python +.ENDIF + +SHL1TARGET= $(TARGET) + +SHL1STDLIBS= \ + $(CPPULIB) \ + $(CPPUHELPERLIB) \ + $(SALLIB) \ + $(PYUNOLIB) \ + $(PYTHONLIB) + +SHL1VERSIONMAP= $(SOLARENV)$/src$/component.map +SHL1DEPN= +SHL1IMPLIB= i$(TARGET) +SHL1LIBS= $(SLB)$/$(TARGET).lib +SHL1DEF= $(MISC)$/$(SHL1TARGET).def + +DEF1NAME= $(SHL1TARGET) +SLOFILES= $(SLO)$/pyuno_loader.obj + +# --- Targets ------------------------------------------------------ + +ALL : ALLTAR \ + $(DLLDEST)$/pythonloader.py +.ENDIF # L10N_framework + +.INCLUDE : target.mk +.IF "$(L10N_framework)"=="" +$(DLLDEST)$/%.py: %.py + cp $? $@ +.ENDIF # L10N_framework + +ALLTAR : $(MISC)/pythonloader.component + +$(MISC)/pythonloader.component .ERRREMOVE : \ + $(SOLARENV)/bin/createcomponent.xslt pythonloader.component + $(XSLTPROC) --nonet --stringparam uri \ + 'vnd.sun.star.expand:$$OOO_BASE_DIR/program/$(SHL1TARGETN:f)' -o $@ \ + $(SOLARENV)/bin/createcomponent.xslt pythonloader.component diff --git a/pyuno/source/loader/makefile.mk.rej b/pyuno/source/loader/makefile.mk.rej new file mode 100644 index 000000000000..f8a8e489aeaf --- /dev/null +++ b/pyuno/source/loader/makefile.mk.rej @@ -0,0 +1,20 @@ +--- pyuno/source/loader/makefile.mk ++++ pyuno/source/loader/makefile.mk +@@ -89,11 +89,17 @@ + $(DLLDEST)$/pyuno_services.rdb + .ENDIF # L10N_framework + ++ALLTAR: $(eq,$(OS),MACOSX $(MISC)/installname_loader $(NULL)) ++ + .INCLUDE : target.mk + .IF "$(L10N_framework)"=="" + $(DLLDEST)$/%.py: %.py + cp $? $@ + ++$(MISC)/installname_loader : $(LB)/$(TARGET)$(DLLPOST) ++ install_name_tool -change $(PYTHON_MAKEINSTALLDIR)/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython @loader_path/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython $< ++ touch $@ ++ + $(DLLDEST)$/pyuno_services.rdb : makefile.mk $(DLLDEST)$/$(DLLPRE)$(TARGET)$(DLLPOST) + -rm -f $@ $(DLLDEST)$/pyuno_services.tmp $(DLLDEST)$/pyuno_services.rdb + cd $(DLLDEST) && $(REGCOMP) -register -r pyuno_services.tmp -wop $(foreach,i,$(COMPONENTS) -c $(i)) diff --git a/pyuno/source/module/makefile.mk b/pyuno/source/module/makefile.mk index 1ea1a302ff95..81050c120021 100644 --- a/pyuno/source/module/makefile.mk +++ b/pyuno/source/module/makefile.mk @@ -121,7 +121,7 @@ $(LB)$/lib$(TARGET).a: $(MISC)$/$(TARGET).def targetdll=$(LB)$/$(TARGET)$(DLLPOST) .ENDIF -ALLTAR : \ +ALLTAR : $(eq,$(OS),MACOSX $(MISC)/installname_module $(NULL)) \ $(DLLDEST)$/uno.py \ $(DLLDEST)$/unohelper.py \ $(targetdll) \ @@ -134,6 +134,12 @@ ALLTAR : \ $(DLLDEST)$/%.py: %.py cp $? $@ +$(MISC)/installname_module : $(LB)/$(DLLPRE)$(TARGET)$(DLLPOST) + install_name_tool -change $(PYTHON_MAKEINSTALLDIR)/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython @loader_path/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython $< + # hack to make checkdll happy + ln -sf $(SOLARLIBDIR)/OOoPython.framework $(LB)/OOoPython.framework + touch $@ + $(MISC)$/$(PYUNORC) : pyuno -rm -f $@ cat pyuno > $@ diff --git a/pyuno/source/module/makefile.mk.orig b/pyuno/source/module/makefile.mk.orig new file mode 100644 index 000000000000..1ea1a302ff95 --- /dev/null +++ b/pyuno/source/module/makefile.mk.orig @@ -0,0 +1,154 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* +PRJ=..$/.. + +PRJNAME=pyuno +TARGET=pyuno +ENABLE_EXCEPTIONS=TRUE + +LINKFLAGSDEFS = # do not fail with missing symbols + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk +.IF "$(L10N_framework)"=="" + +#------------------------------------------------------------------- + +.IF "$(OS)$(COMEX)" == "SOLARIS4" +# no -Bdirect for SunWS CC +DIRECT = $(LINKFLAGSDEFS) +.ENDIF + +# special setting from environment +.IF "$(EXTRA_CFLAGS)"!="" +EXTRA_FRAMEWORK_FLAG=-framework Python +.ENDIF # .IF "$(EXTRA_CFLAGS)"!="" + +.IF "$(GUI)" == "UNX" +PYUNORC=pyunorc +.ELSE +.INCLUDE : pyversion.mk +PYUNORC=pyuno.ini +DLLPOST=.pyd +.ENDIF + +.IF "$(SYSTEM_PYTHON)" == "YES" +PYTHONLIB=$(PYTHON_LIBS) +CFLAGS+=$(PYTHON_CFLAGS) +.ELSE # "$(SYSTEM_PYTHON)" == "YES" +.INCLUDE : pyversion.mk +CFLAGS+=-I$(SOLARINCDIR)$/python +.ENDIF # "$(SYSTEM_PYTHON)" == "YES" + +SHL1TARGET=$(TARGET) +SLOFILES= \ + $(SLO)$/pyuno_runtime.obj \ + $(SLO)$/pyuno.obj \ + $(SLO)$/pyuno_callable.obj \ + $(SLO)$/pyuno_module.obj \ + $(SLO)$/pyuno_type.obj \ + $(SLO)$/pyuno_util.obj \ + $(SLO)$/pyuno_except.obj \ + $(SLO)$/pyuno_adapter.obj \ + $(SLO)$/pyuno_gc.obj + +# remove this, when issue i35064 is integrated +.IF "$(COM)"=="GCC" +NOOPTFILES= \ + $(SLO)$/pyuno_module.obj +.ENDIF # "$(COM)"=="GCC" + +SHL1STDLIBS= \ + $(CPPULIB) \ + $(CPPUHELPERLIB) \ + $(SALLIB) \ + $(PYTHONLIB) \ + $(EXTRA_FRAMEWORK_FLAG) + +SHL1DEPN= +SHL1LIBS= $(SLB)$/$(TARGET).lib +SHL1IMPLIB= i$(TARGET) + +SHL1DEF= $(MISC)$/$(SHL1TARGET).def + +DEF1NAME= $(SHL1TARGET) +DEF1DEPN= $(MISC)$/pyuno.flt + +DEFLIB1NAME=$(TARGET) + +# --- Targets ------------------------------------------------------ + +.IF "$(GUI)$(COM)"=="WNTGCC" +ALLTAR : \ + $(DLLDEST)$/uno.py \ + $(DLLDEST)$/unohelper.py \ + $(MISC)$/$(PYUNORC) \ + $(LB)$/lib$(TARGET).a + +$(LB)$/lib$(TARGET).a: $(MISC)$/$(TARGET).def + dlltool --dllname $(TARGET)$(DLLPOST) --input-def=$(MISC)$/$(TARGET).def --kill-at --output-lib=$(LB)$/lib$(TARGET).a +.ELSE + +.IF "$(GUI)"!="WNT" +# For some reason the build breaks on Windows if this is listed in the +# prerequisite list of ALLTAR, but pyuno.pyd still gets produced. Go +# figure. But we need it on non-Windows. +targetdll=$(LB)$/$(TARGET)$(DLLPOST) +.ENDIF + +ALLTAR : \ + $(DLLDEST)$/uno.py \ + $(DLLDEST)$/unohelper.py \ + $(targetdll) \ + $(MISC)$/$(PYUNORC) +.ENDIF +.ENDIF + +.INCLUDE : target.mk +.IF "$(L10N_framework)"=="" +$(DLLDEST)$/%.py: %.py + cp $? $@ + +$(MISC)$/$(PYUNORC) : pyuno + -rm -f $@ + cat pyuno > $@ + +$(MISC)$/pyuno.flt : pyuno.flt + -rm -f $@ + cat $? > $@ + +.IF "$(DLLPRE)"!="" +# python does not accept the "lib" prefix in the module library +$(LB)$/$(TARGET)$(DLLPOST) : $(LB)$/$(DLLPRE)$(TARGET)$(DLLPOST) + -rm -f $@ + ln -s $? $@ +.ENDIF + +.ENDIF # L10N_framework + +# vim:set shiftwidth=4 softtabstop=4 expandtab: diff --git a/pyuno/source/module/makefile.mk.rej b/pyuno/source/module/makefile.mk.rej new file mode 100644 index 000000000000..1d8ab737f9bc --- /dev/null +++ b/pyuno/source/module/makefile.mk.rej @@ -0,0 +1,23 @@ +--- pyuno/source/module/makefile.mk ++++ pyuno/source/module/makefile.mk +@@ -120,7 +120,7 @@ + $(LB)$/lib$(TARGET).a: $(MISC)$/$(TARGET).def + dlltool --dllname $(TARGET)$(DLLPOST) --input-def=$(MISC)$/$(TARGET).def --kill-at --output-lib=$(LB)$/lib$(TARGET).a + .ELSE +-ALLTAR : \ ++ALLTAR : $(eq,$(OS),MACOSX $(MISC)/installname_module $(NULL)) \ + $(DLLDEST)$/uno.py \ + $(DLLDEST)$/unohelper.py \ + $(PYUNO_MODULE) \ +@@ -157,6 +157,11 @@ + @+source $(MISC)$/$(@:b).cmd + .ENDIF + ++$(MISC)/installname_module : $(LB)/$(DLLPRE)$(TARGET)$(DLLPOST) ++ install_name_tool -change $(PYTHON_MAKEINSTALLDIR)/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython @loader_path/OOoPython.framework/Versions/$(PYMAJOR).$(PYMINOR)/OOoPython $< ++ # hack to make checkdll happy ++ ln -sf $(SOLARLIBDIR)/OOoPython.framework $(LB)/OOoPython.framework ++ touch $@ + + $(MISC)$/$(PYUNORC) : pyuno + -rm -f $@ diff --git a/pyuno/zipcore/makefile.mk b/pyuno/zipcore/makefile.mk index 51cc6eb62841..cd9439b48e20 100755 --- a/pyuno/zipcore/makefile.mk +++ b/pyuno/zipcore/makefile.mk @@ -37,7 +37,7 @@ UWINAPILIB = .IF "$(SYSTEM_PYTHON)" == "YES" systempython: - @echo "Not building python-core because system python is being used" + @echo "Not building python-core because system python is being used" .ELSE .INCLUDE : pyversion.mk @@ -54,6 +54,7 @@ PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST) .ENDIF .ENDIF +.IF "$(OS)" != "MACOSX" FINDLIBFILES_TMP:=$(subst,/,$/ \ $(shell @$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v "\.pyc" |$(GREP) -v "\.py~" |$(GREP) -v .orig | $(GREP) -v _failed)) FINDLIBFILES=$(subst,$(SOLARLIBDIR)$/python, $(FINDLIBFILES_TMP)) @@ -75,15 +76,18 @@ OBJFILES = $(OBJ)$/python.obj ALLTAR: \ $(BIN)$/$(PYDIRNAME).zip +.ENDIF .IF "$(GUI)" == "UNX" ALLTAR : $(BIN)$/python.sh + +STRIPMAC=-e '/^NONMACSECTION/d' -e '/^MACSECTION/,$$d' +STRIPNONMAC=-e '/^NONMACSECTION/,/^MACSECTION/d' + $(BIN)$/python.sh : python.sh - -rm -f $@ - cat $? > $@ - sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ | sed 's/%%OOO_LIBRARY_PATH_VAR%%/$(OOO_LIBRARY_PATH_VAR)/g' > $@.new - mv $@.new $@ - chmod +x $@ + $(COMMAND_ECHO)sed -e 's/%%PYVERSION%%/$(eq,$(OS),MACOSX $(PYMAJOR).$(PYMINOR) $(PYVERSION))/g' -e 's/%%OOO_LIBRARY_PATH_VAR%%/$(OOO_LIBRARY_PATH_VAR)/g' \ + $(!eq,$(OS),MACOSX $(STRIPNONMAC) $(STRIPMAC)) < $? > $@ + @chmod +x $@ .ENDIF $(OBJ)$/python.obj: $(OUT)$/inc$/pyversion.hxx @@ -93,7 +97,7 @@ $(OUT)$/inc$/pyversion.hxx: pyversion.inc $(BIN)$/$(PYDIRNAME).zip : $(FILES) .IF "$(GUI)" == "UNX" -.IF "$(OS)" != "MACOSX" && "$(OS)" != "AIX" +.IF "$(OS)" != "AIX" cd $(DESTROOT) && find . -name '*$(DLLPOST)' | xargs strip .ENDIF .ENDIF @@ -127,6 +131,4 @@ $(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST) .ENDIF .ELSE -ivo: - $(ECHO) .ENDIF # L10N_framework diff --git a/pyuno/zipcore/makefile.mk.orig b/pyuno/zipcore/makefile.mk.orig new file mode 100755 index 000000000000..51cc6eb62841 --- /dev/null +++ b/pyuno/zipcore/makefile.mk.orig @@ -0,0 +1,132 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJNAME=pyuno +PRJ=.. + +TARGET=zipcore +LIBTARGET=NO + +.INCLUDE : settings.mk +.IF "$(L10N_framework)"=="" +UWINAPILIB = + +.IF "$(SYSTEM_PYTHON)" == "YES" +systempython: + @echo "Not building python-core because system python is being used" +.ELSE + +.INCLUDE : pyversion.mk + +PYDIRNAME=python-core-$(PYVERSION) +DESTROOT=$(BIN)$/$(PYDIRNAME) +.IF "$(GUI)" == "UNX" +PYTHONBINARY=$(BIN)$/python$(EXECPOST).bin +.ELSE +.IF "$(COM)" == "GCC" +PYTHONBINARY=$(DESTROOT)$/bin$/python.bin +.ELSE +PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST) +.ENDIF +.ENDIF + +FINDLIBFILES_TMP:=$(subst,/,$/ \ + $(shell @$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v "\.pyc" |$(GREP) -v "\.py~" |$(GREP) -v .orig | $(GREP) -v _failed)) +FINDLIBFILES=$(subst,$(SOLARLIBDIR)$/python, $(FINDLIBFILES_TMP)) + +FILES=\ + $(PYTHONBINARY) \ + $(foreach,i,$(FINDLIBFILES) $(DESTROOT)$/lib$(i)) + +.IF "$(OS)" == "WNT" +APP1TARGET = python +APP1OBJS = $(OBJFILES) $(SOLARLIBDIR)$/pathutils-obj.obj +APP1STDLIBS = +APP1RPATH = BRAND +OBJFILES = $(OBJ)$/python.obj +.ENDIF + + +.INCLUDE: target.mk + +ALLTAR: \ + $(BIN)$/$(PYDIRNAME).zip + +.IF "$(GUI)" == "UNX" +ALLTAR : $(BIN)$/python.sh +$(BIN)$/python.sh : python.sh + -rm -f $@ + cat $? > $@ + sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ | sed 's/%%OOO_LIBRARY_PATH_VAR%%/$(OOO_LIBRARY_PATH_VAR)/g' > $@.new + mv $@.new $@ + chmod +x $@ +.ENDIF + +$(OBJ)$/python.obj: $(OUT)$/inc$/pyversion.hxx + +$(OUT)$/inc$/pyversion.hxx: pyversion.inc + $(SED) $(USQ)s/@/$(PYVERSION)/g$(USQ) < $< > $@ + +$(BIN)$/$(PYDIRNAME).zip : $(FILES) +.IF "$(GUI)" == "UNX" +.IF "$(OS)" != "MACOSX" && "$(OS)" != "AIX" + cd $(DESTROOT) && find . -name '*$(DLLPOST)' | xargs strip +.ENDIF +.ENDIF + -rm -f $@ + cd $(BIN) && zip -r $(PYDIRNAME).zip $(PYDIRNAME) + +$(DESTROOT)$/lib$/% : $(SOLARLIBDIR)$/python$/% + -$(MKDIRHIER) $(@:d) + -rm -f $@ + cat $< > $@ + +.IF "$(GUI)"== "UNX" +$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST) + -$(MKDIRHIER) $(@:d) + -rm -f $@ + cat $< > $@ +.IF "$(OS)" != "MACOSX" && "$(OS)" != "AIX" + strip $@ +.ENDIF + chmod +x $@ +.ELSE +.IF "$(COM)" == "GCC" +$(DESTROOT)$/bin$/python.bin : $(SOLARBINDIR)$/python$(EXECPOST) +.ELSE +$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST) +.ENDIF + -$(MKDIRHIER) $(@:d) + -rm -f $@ + cat $< > $@ +.ENDIF + +.ENDIF +.ELSE +ivo: + $(ECHO) +.ENDIF # L10N_framework diff --git a/pyuno/zipcore/python.sh b/pyuno/zipcore/python.sh index d32158fe491e..e32f1370a0d0 100644 --- a/pyuno/zipcore/python.sh +++ b/pyuno/zipcore/python.sh @@ -30,7 +30,7 @@ sd_cwd="`pwd`" if [ -h "$0" ] ; then sd_basename=`basename "$0"` - sd_script=`ls -l "$0" | sed "s/.*${sd_basename} -> //g"` + sd_script=`ls -l "$0" | sed "s/.*${sd_basename} -> //g"` cd "`dirname "$0"`" cd "`dirname "$sd_script"`" else @@ -56,6 +56,7 @@ export UNO_PATH : ${URE_BOOTSTRAP=vnd.sun.star.pathname:$sd_prog/fundamentalrc} export URE_BOOTSTRAP +NONMACSECTION PYTHONPATH=$sd_prog/../basis-link/program:$sd_prog/../basis-link/program/python-core-%%PYVERSION%%/lib:$sd_prog/../basis-link/program/python-core-%%PYVERSION%%/lib/lib-dynload:$sd_prog/../basis-link/program/python-core-%%PYVERSION%%/lib/lib-tk:$sd_prog/../basis-link/program/python-core-%%PYVERSION%%/lib/site-packages${PYTHONPATH+:$PYTHONPATH} export PYTHONPATH PYTHONHOME=$sd_prog/../basis-link/program/python-core-%%PYVERSION%% @@ -63,3 +64,13 @@ export PYTHONHOME # execute binary exec "$sd_prog/../basis-link/program/python.bin" "$@" +MACSECTION +PYTHONHOME=$sd_prog/../basis-link/program/OOoPython.framework +export PYTHONHOME + +pybasislibdir=$PYTHONHOME/Versions/%%PYVERSION%%/lib/python%%PYVERSION%% +PYTHONPATH=$sd_prog/../basis-link/program:$pybasislibdir:$pybasislibdir/lib-dynload:$pybasislibdir/lib-tk:$pybasislibdir/site-packages${PYTHONPATH+:$PYTHONPATH} +export PYTHONPATH + +# execute binary +exec "$PYTHONHOME/Versions/%%PYVERSION%%/Resources/Python.app/Contents/MacOS/OOoPython" "$@" |