office-gobmx/python/makefile.mk
Vladimir Glazounov e5ce15185e INTEGRATION: CWS geordi2q11 (1.8.4); FILE MERGED
2003/12/16 14:11:21 hr 1.8.4.1: #111934#: join CWS ooo111fix1
2003-12-17 17:13:23 +00:00

229 lines
8.2 KiB
Makefile

#*************************************************************************
#
# $RCSfile: makefile.mk,v $
#
# $Revision: 1.10 $
#
# last change: $Author: vg $ $Date: 2003-12-17 18:13:23 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
#
# - GNU Lesser General Public License Version 2.1
# - Sun Industry Standards Source License Version 1.1
#
# Sun Microsystems Inc., October, 2000
#
# GNU Lesser General Public License Version 2.1
# =============================================
# Copyright 2000 by Sun Microsystems, Inc.
# 901 San Antonio Road, Palo Alto, CA 94303, USA
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License version 2.1, as published by the Free Software Foundation.
#
# This library 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 for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307 USA
#
#
# Sun Industry Standards Source License Version 1.1
# =================================================
# The contents of this file are subject to the Sun Industry Standards
# Source License Version 1.1 (the "License"); You may not use this file
# except in compliance with the License. You may obtain a copy of the
# License at http://www.openoffice.org/license.html.
#
# Software provided under this License is provided on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
# See the License for the specific provisions governing your rights and
# obligations concerning the Software.
#
# The Initial Developer of the Original Code is: Ralph Thomas
#
# Copyright: 2000 by Sun Microsystems, Inc.
#
# All Rights Reserved.
#
# Contributor(s): Ralph Thomas, Joerg Budischewski
#
#*************************************************************************
PRJ=.
PRJNAME=so_python
TARGET=so_python
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
.INCLUDE : pyversion.mk
# --- Files --------------------------------------------------------
TARFILE_NAME=Python-$(PYVERSION)
PATCH_FILE_NAME=Python-$(PYVERSION).patch
CONFIGURE_DIR=
BUILD_DIR=
.IF "$(GUI)"=="UNX"
.IF "$(COMNAME)"=="sunpro5"
.IF "$(BUILD_TOOLS)$/cc"=="$(shell +-which cc)"
CC:=$(COMPATH)$/bin$/cc
CXX:=$(COMPATH)$/bin$/CC
.ENDIF # "$(BUILD_TOOLS)$/cc"=="$(shell +-which cc)"
.ENDIF # "$(COMNAME)"=="sunpro5"
.ELSE
.ENDIF # "$(GUI)"=="UNX"
.IF "$(USE_SHELL)"!="4nt"
CONVERT=convert.sh
BUILD_ACTION_SEP=;
.IF "$(HOME)" == ""
ENV_BUILD=setenv HOME ;
.ENDIF
.ELSE # "$(USE_SHELL)"!="4nt"
CONVERT=convert.bat
BUILD_ACTION_SEP=^
.ENDIF # "$(USE_SHELL)"!="4nt"
DSP_DIR=PCbuild
.IF "$(GUI)" == "UNX"
CONFIGURE_ACTION= ./configure --prefix=../python-inst
.IF "$(OS)" == "IRIX"
BUILD_ACTION=$(ENV_BUILD) gmake ; gmake install
.ELSE
BUILD_ACTION=$(ENV_BUILD) make ; make install
.ENDIF
.IF "$(OS)"=="MACOSX"
PYTHONCORESHL=$(OUT)$/lib$/$(DLLPRE)python$(PYMAJOR)$(PYMINOR)$(DLLPOST)
PYTHONCORELINK1=$(OUT)$/lib$/$(DLLPRE)python$(PYMAJOR)$(DLLPOST)
PYTHONCORELINK2=$(OUT)$/lib$/$(DLLPRE)python$(DLLPOST)
.ELSE
PYTHONCORESHL=$(OUT)$/lib$/$(DLLPRE)python$(DLLPOST).$(PYVERSION)
PYTHONCORELINK1=$(OUT)$/lib$/$(DLLPRE)python$(DLLPOST).$(PYMAJOR)
PYTHONCORELINK2=$(OUT)$/lib$/$(DLLPRE)python$(DLLPOST)
.ENDIF
.ELSE
BUILD_DIR=$(DSP_DIR)
CONFIGURE_DIR=$(DSP_DIR)
.IF "$(COMEX)"=="8" || "$(COMEX)"=="10"
CONFIGURE_ACTION=wdevenv pcbuild Release $(BUILD_ACTION_SEP) $(PERL) $(BACK_PATH)..$/..$/vc70_patch.pl .
BUILD_ACTION=devenv /build Release /project winsound pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project winreg pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project unicodedata pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project select pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project parser pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project mmap pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project _symtable pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project _socket pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project _sre pcbuild.sln /useenv \
$(BUILD_ACTION_SEP) devenv /build Release /project python pcbuild.sln /useenv
.ELSE
BUILD_ACTION=msdev pcbuild.dsw /USEENV /MAKE \
"python - Win32 Release" \
"_sre - Win32 Release" \
"_socket - Win32 Release" \
"_symtable - Win32 Release" \
"mmap - Win32 Release" \
"parser - Win32 Release" \
"select - Win32 Release" \
"unicodedata - Win32 Release" \
"winreg - Win32 Release" \
"winsound - Win32 Release"
.ENDIF
.ENDIF
PYVERSIONFILE=$(MISC)$/pyversion.mk
# --- Targets ------------------------------------------------------
.IF "$(GUI)" != "UNX"
PYCONFIG=$(MISC)$/build$/pyconfig.h
.ENDIF
.INCLUDE : set_ext.mk
.INCLUDE : target.mk
.INCLUDE : tg_ext.mk
.IF "$(L10N_framework)"==""
ALLTAR : $(PYCONFIG) $(PYTHONCORESHL) $(PYVERSIONFILE) $(PYTHONCORELINK1) $(PYTHONCORELINK2)
.ENDIF # "$(L10N_framework)"==""
$(MISC)$/convert_unx_flag : $(PACKAGE_DIR)$/$(UNTAR_FLAG_FILE)
+$(CONVERT) unx $(PACKAGE_DIR)$/$(TARFILE_NAME)$/$(DSP_DIR)
+$(TOUCH) $(MISC)$/convert_unx_flag
$(PACKAGE_DIR)$/$(PATCH_FLAG_FILE) : $(MISC)$/convert_unx_flag
$(MISC)$/convert_dos_flag : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE)
+$(CONVERT) dos $(PACKAGE_DIR)$/$(TARFILE_NAME)$/$(DSP_DIR)
+$(TOUCH) $(MISC)$/convert_dos_flag
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(MISC)$/convert_dos_flag
$(MISC)$/build$/$(TARFILE_NAME)$/PC$/pyconfig.h : $(PACKAGE_DIR)$/$(UNTAR_FLAG_FILE)
#.IF "$(GUI)" !="UNX"
$(MISC)$/build$/pyconfig.h : $(MISC)$/build$/$(TARFILE_NAME)$/PC$/pyconfig.h
-rm -f $@
cat $(MISC)$/build$/$(TARFILE_NAME)$/PC$/pyconfig.h > $@
#.ENDIF
.IF "$(GUI)" == "UNX"
$(PYTHONCORESHL) : makefile.mk $(PACKAGE_DIR)$/$(BUILD_FLAG_FILE)
.IF "$(OS)" == "SOLARIS"
ld -G -o $@ -u Py_Main -u Py_FrozenMain -u PyFPE_dummy $(MISC)$/build$/$(TARFILE_NAME)$/libpython$(PYMAJOR).$(PYMINOR).a -h libpython.so.$(PYMAJOR) -lm -ldl -lc -lpthread
.ELSE
.IF "$(OS)" == "FREEBSD"
$(LINK) -shared -o $@ -Wl,-whole-archive $(MISC)$/build$/$(TARFILE_NAME)$/libpython$(PYMAJOR).$(PYMINOR).a -Wl,-no-whole-archive -soname libpython.so.$(PYMAJOR) -lm -lutil ${PTHREAD_LIBS}
.ELSE
.IF "$(OS)" == "IRIX"
ld -shared -o $@ -all $(MISC)$/build$/$(TARFILE_NAME)$/libpython$(PYMAJOR).$(PYMINOR).a -notall -soname libpython.so.$(PYMAJOR) -lm -ldl -lc -lpthread
.ELSE
.IF "$(OS)" == "MACOSX"
cp $(MISC)$/build$/$(TARFILE_NAME)$/$(DLLPRE)python$(PYMAJOR).$(PYMINOR)$(DLLPOST) $(OUT)$/lib
.ELSE
echo "$(OS)"
ld -shared -o $@ --whole-archive $(MISC)$/build$/$(TARFILE_NAME)$/libpython$(PYMAJOR).$(PYMINOR).a --no-whole-archive -soname libpython.so.$(PYMAJOR) -lm -ldl -lutil -lc -lpthread
.ENDIF # MACOSX
.ENDIF # IRIX
.ENDIF # FREEBSD
.ENDIF # SOLARIS
$(PYTHONCORELINK1) : makefile.mk $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE)
-rm -f $@
.IF "$(OS)" == "MACOSX"
cd $(OUT)$/lib && ln -s $(DLLPRE)python$(PYMAJOR).$(PYMINOR)$(DLLPOST) $(DLLPRE)python$(PYMAJOR)$(DLLPOST)
.ELSE
cd $(OUT)$/lib && ln -s $(DLLPRE)python$(DLLPOST).$(PYVERSION) $(DLLPRE)python$(DLLPOST).$(PYMAJOR)
.ENDIF
$(PYTHONCORELINK2) : makefile.mk $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE)
-rm -f $@
.IF "$(OS)" == "MACOSX"
cd $(OUT)$/lib && ln -s $(DLLPRE)python$(PYMAJOR).$(PYMINOR)$(DLLPOST) $(DLLPRE)python$(DLLPOST)
.ELSE
cd $(OUT)$/lib && ln -s $(DLLPRE)python$(DLLPOST).$(PYVERSION) $(DLLPRE)python$(DLLPOST)
.ENDIF
.ENDIF
$(PYVERSIONFILE) : pyversion.mk $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE)
-rm -f $@
cat $? > $@
patch : $(MISC)$/convert_dos_flag