office-gobmx/python/makefile.mk

230 lines
8.1 KiB
Makefile
Raw Normal View History

2003-03-31 07:08:05 -06:00
#*************************************************************************
#
# $RCSfile: makefile.mk,v $
#
# $Revision: 1.9 $
2003-03-31 07:08:05 -06:00
#
# last change: $Author: vg $ $Date: 2003-12-16 11:43:12 $
2003-03-31 07:08:05 -06:00
#
# 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
2003-03-31 07:08:05 -06:00
CONFIGURE_DIR=
BUILD_DIR=
2003-06-17 10:22:30 -05:00
.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
2003-06-17 10:22:30 -05:00
.ELSE # "$(USE_SHELL)"!="4nt"
CONVERT=convert.bat
BUILD_ACTION_SEP=^
.ENDIF # "$(USE_SHELL)"!="4nt"
DSP_DIR=PCbuild
2003-03-31 07:08:05 -06:00
.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
2003-03-31 07:08:05 -06:00
.ELSE
2003-06-17 10:22:30 -05:00
BUILD_DIR=$(DSP_DIR)
CONFIGURE_DIR=$(DSP_DIR)
.IF "$(COMEX)"=="8" || "$(COMEX)"=="10"
2003-06-12 08:51:27 -05:00
CONFIGURE_ACTION=wdevenv pcbuild Release
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
2003-06-12 08:51:27 -05:00
.ELSE
BUILD_ACTION=msdev pcbuild.dsw /USEENV /MAKE \
2003-03-31 07:08:05 -06:00
"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" \
2003-06-12 08:51:27 -05:00
"winsound - Win32 Release"
.ENDIF
2003-03-31 07:08:05 -06:00
.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)"==""
2003-06-17 10:22:30 -05:00
ALLTAR : $(PYCONFIG) $(PYTHONCORESHL) $(PYVERSIONFILE) $(PYTHONCORELINK1) $(PYTHONCORELINK2)
.ENDIF # "$(L10N_framework)"==""
2003-06-17 10:22:30 -05:00
$(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)
2003-03-31 07:08:05 -06:00
#.IF "$(GUI)" !="UNX"
$(MISC)$/build$/pyconfig.h : $(MISC)$/build$/$(TARFILE_NAME)$/PC$/pyconfig.h
2003-03-31 07:08:05 -06:00
-rm -f $@
cat $(MISC)$/build$/$(TARFILE_NAME)$/PC$/pyconfig.h > $@
#.ENDIF
.IF "$(GUI)" == "UNX"
2003-06-17 10:22:30 -05:00
$(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"
ld -shared -o $@ --whole-archive $(MISC)$/build$/$(TARFILE_NAME)$/libpython$(PYMAJOR).$(PYMINOR).a --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
2003-06-17 10:22:30 -05:00
.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
2003-03-31 07:08:05 -06:00
2003-06-17 10:22:30 -05:00
$(PYTHONCORELINK1) : makefile.mk $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE)
2003-03-31 07:08:05 -06:00
-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
2003-03-31 07:08:05 -06:00
2003-06-17 10:22:30 -05:00
$(PYTHONCORELINK2) : makefile.mk $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE)
2003-03-31 07:08:05 -06:00
-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
2003-03-31 07:08:05 -06:00
.ENDIF
2003-06-17 10:22:30 -05:00
$(PYVERSIONFILE) : pyversion.mk $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE)
2003-03-31 07:08:05 -06:00
-rm -f $@
2003-06-12 08:51:27 -05:00
cat $? > $@
2003-06-17 10:22:30 -05:00
patch : $(MISC)$/convert_dos_flag