1*b1cdbd2cSJim Jagielski#************************************************************** 2*b1cdbd2cSJim Jagielski# 3*b1cdbd2cSJim Jagielski# Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski# or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski# distributed with this work for additional information 6*b1cdbd2cSJim Jagielski# regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski# to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski# "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski# with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski# 11*b1cdbd2cSJim Jagielski# http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski# 13*b1cdbd2cSJim Jagielski# Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski# software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski# KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski# specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski# under the License. 19*b1cdbd2cSJim Jagielski# 20*b1cdbd2cSJim Jagielski#************************************************************** 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim JagielskiPRJNAME=pyuno 25*b1cdbd2cSJim JagielskiPRJ=.. 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim JagielskiTARGET=zipcore 28*b1cdbd2cSJim JagielskiLIBTARGET=NO 29*b1cdbd2cSJim Jagielski 30*b1cdbd2cSJim Jagielski.INCLUDE : settings.mk 31*b1cdbd2cSJim Jagielski.IF "$(L10N_framework)"=="" 32*b1cdbd2cSJim JagielskiUWINAPILIB = 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski.IF "$(SYSTEM_PYTHON)" == "YES" || "$(GUI)" == "OS2" 35*b1cdbd2cSJim Jagielskisystempython: 36*b1cdbd2cSJim Jagielski @echo "Not building python-core because system python is being used" 37*b1cdbd2cSJim Jagielski.ELSE 38*b1cdbd2cSJim Jagielski 39*b1cdbd2cSJim Jagielski.INCLUDE : pyversion.mk 40*b1cdbd2cSJim Jagielski 41*b1cdbd2cSJim JagielskiPYDIRNAME=python-core-$(PYVERSION) 42*b1cdbd2cSJim JagielskiDESTROOT=$(BIN)$/$(PYDIRNAME) 43*b1cdbd2cSJim Jagielski.IF "$(GUI)" == "UNX" 44*b1cdbd2cSJim JagielskiPYTHONBINARY=$(BIN)$/python$(EXECPOST).bin 45*b1cdbd2cSJim Jagielski.ELSE 46*b1cdbd2cSJim Jagielski.IF "$(COM)" == "GCC" 47*b1cdbd2cSJim JagielskiPYTHONBINARY=$(DESTROOT)$/bin$/python.bin 48*b1cdbd2cSJim Jagielski.ELSE 49*b1cdbd2cSJim JagielskiPYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST) 50*b1cdbd2cSJim Jagielski.ENDIF 51*b1cdbd2cSJim Jagielski.ENDIF 52*b1cdbd2cSJim Jagielski 53*b1cdbd2cSJim JagielskiFINDLIBFILES_TMP:=$(subst,/,$/ \ 54*b1cdbd2cSJim Jagielski $(shell @$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v "\.pyc" |$(GREP) -v "\.py~" |$(GREP) -v .orig | $(GREP) -v _failed)) 55*b1cdbd2cSJim JagielskiFINDLIBFILES=$(subst,$(SOLARLIBDIR)$/python, $(FINDLIBFILES_TMP)) 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim JagielskiFINDINCFILES_TMP:=$(subst,/,$/ \ 58*b1cdbd2cSJim Jagielski $(shell @$(FIND) $(SOLARINCDIR)$/python -type f| $(GREP) -v "\.h~" | $(GREP) -v _failed)) 59*b1cdbd2cSJim JagielskiFINDINCFILES=$(subst,$(SOLARINCDIR)$/python, $(FINDINCFILES_TMP)) 60*b1cdbd2cSJim Jagielski 61*b1cdbd2cSJim JagielskiFILES=\ 62*b1cdbd2cSJim Jagielski $(PYTHONBINARY) \ 63*b1cdbd2cSJim Jagielski $(foreach,i,$(FINDLIBFILES) $(DESTROOT)$/lib$(i)) \ 64*b1cdbd2cSJim Jagielski $(foreach,i,$(FINDINCFILES) $(DESTROOT)$/include$/python$(PYMAJOR).$(PYMINOR)$(i)) 65*b1cdbd2cSJim Jagielski 66*b1cdbd2cSJim Jagielski.IF "$(OS)" == "WNT" 67*b1cdbd2cSJim JagielskiAPP1TARGET = python 68*b1cdbd2cSJim JagielskiAPP1OBJS = $(OBJFILES) $(SOLARLIBDIR)$/pathutils-obj.obj 69*b1cdbd2cSJim JagielskiAPP1STDLIBS = 70*b1cdbd2cSJim JagielskiAPP1RPATH = BRAND 71*b1cdbd2cSJim JagielskiOBJFILES = $(OBJ)$/python.obj 72*b1cdbd2cSJim Jagielski.ENDIF 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim Jagielski 75*b1cdbd2cSJim Jagielski.INCLUDE: target.mk 76*b1cdbd2cSJim Jagielski 77*b1cdbd2cSJim JagielskiALLTAR: \ 78*b1cdbd2cSJim Jagielski $(BIN)$/$(PYDIRNAME).zip 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim Jagielski.IF "$(GUI)" == "UNX" 81*b1cdbd2cSJim JagielskiALLTAR : $(BIN)$/python.sh 82*b1cdbd2cSJim Jagielski$(BIN)$/python.sh : python.sh 83*b1cdbd2cSJim Jagielski -rm -f $@ 84*b1cdbd2cSJim Jagielski cat $? > $@ 85*b1cdbd2cSJim Jagielski sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ > $@.new 86*b1cdbd2cSJim Jagielski mv $@.new $@ 87*b1cdbd2cSJim Jagielski chmod +x $@ 88*b1cdbd2cSJim Jagielski.ENDIF 89*b1cdbd2cSJim Jagielski 90*b1cdbd2cSJim Jagielski$(OBJ)$/python.obj: $(OUT)$/inc$/pyversion.hxx 91*b1cdbd2cSJim Jagielski 92*b1cdbd2cSJim Jagielski$(OUT)$/inc$/pyversion.hxx: pyversion.inc 93*b1cdbd2cSJim Jagielski $(SED) $(USQ)s/@/$(PYVERSION)/g$(USQ) < $< > $@ 94*b1cdbd2cSJim Jagielski 95*b1cdbd2cSJim Jagielski$(BIN)$/$(PYDIRNAME).zip : $(FILES) 96*b1cdbd2cSJim Jagielski.IF "$(GUI)" == "UNX" 97*b1cdbd2cSJim Jagielski.IF "$(OS)" != "MACOSX" 98*b1cdbd2cSJim Jagielski cd $(DESTROOT) && find . -name '*$(DLLPOST)' | xargs strip 99*b1cdbd2cSJim Jagielski.ENDIF 100*b1cdbd2cSJim Jagielski.ENDIF 101*b1cdbd2cSJim Jagielski -rm -f $@ 102*b1cdbd2cSJim Jagielski cd $(BIN) && zip -r $(PYDIRNAME).zip $(PYDIRNAME) 103*b1cdbd2cSJim Jagielski 104*b1cdbd2cSJim Jagielski$(DESTROOT)$/lib$/% : $(SOLARLIBDIR)$/python$/% 105*b1cdbd2cSJim Jagielski -$(MKDIRHIER) $(@:d) 106*b1cdbd2cSJim Jagielski -rm -f $@ 107*b1cdbd2cSJim Jagielski cat $< > $@ 108*b1cdbd2cSJim Jagielski 109*b1cdbd2cSJim Jagielski$(DESTROOT)$/include$/python$(PYMAJOR).$(PYMINOR)%: $(SOLARINCDIR)$/python$/% 110*b1cdbd2cSJim Jagielski -$(MKDIRHIER) $(@:d) 111*b1cdbd2cSJim Jagielski -rm -f $@ 112*b1cdbd2cSJim Jagielski cat $< > $@ 113*b1cdbd2cSJim Jagielski 114*b1cdbd2cSJim Jagielski.IF "$(GUI)"== "UNX" 115*b1cdbd2cSJim Jagielski$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST) 116*b1cdbd2cSJim Jagielski -$(MKDIRHIER) $(@:d) 117*b1cdbd2cSJim Jagielski -rm -f $@ 118*b1cdbd2cSJim Jagielski cat $< > $@ 119*b1cdbd2cSJim Jagielski.IF "$(OS)" != "MACOSX" 120*b1cdbd2cSJim Jagielski strip $@ 121*b1cdbd2cSJim Jagielski.ENDIF 122*b1cdbd2cSJim Jagielski chmod +x $@ 123*b1cdbd2cSJim Jagielski.ELSE 124*b1cdbd2cSJim Jagielski.IF "$(COM)" == "GCC" 125*b1cdbd2cSJim Jagielski$(DESTROOT)$/bin$/python.bin : $(SOLARBINDIR)$/python$(EXECPOST) 126*b1cdbd2cSJim Jagielski.ELSE 127*b1cdbd2cSJim Jagielski$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST) 128*b1cdbd2cSJim Jagielski.ENDIF 129*b1cdbd2cSJim Jagielski -$(MKDIRHIER) $(@:d) 130*b1cdbd2cSJim Jagielski -rm -f $@ 131*b1cdbd2cSJim Jagielski cat $< > $@ 132*b1cdbd2cSJim Jagielski.ENDIF 133*b1cdbd2cSJim Jagielski 134*b1cdbd2cSJim Jagielski.ENDIF 135*b1cdbd2cSJim Jagielski.ELSE 136*b1cdbd2cSJim Jagielskiivo: 137*b1cdbd2cSJim Jagielski $(ECHO) 138*b1cdbd2cSJim Jagielski.ENDIF # L10N_framework 139