2001-08-09 06:45:12 -05:00
|
|
|
#*************************************************************************
|
|
|
|
#
|
2005-09-08 01:48:02 -05:00
|
|
|
# OpenOffice.org - a multi-platform office productivity suite
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2005-09-08 01:48:02 -05:00
|
|
|
# $RCSfile: makefile.mk,v $
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2006-10-05 04:43:50 -05:00
|
|
|
# $Revision: 1.36 $
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2006-10-05 04:43:50 -05:00
|
|
|
# last change: $Author: kz $ $Date: 2006-10-05 10:43:50 $
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2005-09-08 01:48:02 -05:00
|
|
|
# The Contents of this file are made available subject to
|
|
|
|
# the terms of GNU Lesser General Public License Version 2.1.
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
|
|
|
#
|
2005-09-08 01:48:02 -05:00
|
|
|
# GNU Lesser General Public License Version 2.1
|
|
|
|
# =============================================
|
|
|
|
# Copyright 2005 by Sun Microsystems, Inc.
|
|
|
|
# 901 San Antonio Road, Palo Alto, CA 94303, USA
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2005-09-08 01:48:02 -05:00
|
|
|
# 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.
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2005-09-08 01:48:02 -05:00
|
|
|
# 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.
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2005-09-08 01:48:02 -05:00
|
|
|
# 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
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
|
|
|
#*************************************************************************
|
|
|
|
|
|
|
|
PRJ=.
|
|
|
|
|
|
|
|
PRJNAME=so_stlport
|
|
|
|
TARGET=so_stlport
|
|
|
|
|
|
|
|
# --- Settings -----------------------------------------------------
|
|
|
|
|
|
|
|
.INCLUDE : settings.mk
|
|
|
|
|
2004-09-08 10:33:43 -05:00
|
|
|
.IF "$(USE_SYSTEM_STL)"=="YES"
|
|
|
|
$(INCCOM)$/stlport$/hash_map : systemstl/hash_map
|
|
|
|
@echo "You choose to build without stlport, so some headers will be used to bring the sgi extensions into the std namespace"
|
|
|
|
+-$(MKDIR) $(INCCOM)$/stlport
|
2005-02-24 07:47:13 -06:00
|
|
|
+$(COPY) systemstl/functional $(INCCOM)$/stlport
|
|
|
|
+$(COPY) systemstl/hash_map $(INCCOM)$/stlport
|
|
|
|
+$(COPY) systemstl/hash_set $(INCCOM)$/stlport
|
2005-07-18 02:43:21 -05:00
|
|
|
+$(COPY) systemstl/numeric $(INCCOM)$/stlport
|
2005-02-24 07:47:13 -06:00
|
|
|
+$(COPY) systemstl/slist $(INCCOM)$/stlport
|
|
|
|
+$(COPY) systemstl/rope $(INCCOM)$/stlport
|
|
|
|
+$(COPY) systemstl/vector $(INCCOM)$/stlport
|
2004-09-08 10:33:43 -05:00
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
# --- Files --------------------------------------------------------
|
2003-03-27 05:01:26 -06:00
|
|
|
.EXPORT : CC CXX
|
|
|
|
.IF "$(COMID)"=="gcc3"
|
2003-07-16 11:13:47 -05:00
|
|
|
TARFILE_NAME=STLport-4.5
|
2005-05-31 11:04:13 -05:00
|
|
|
.IF "$(OS)$(BUILD_OS_MAJOR)$(BUILD_OS_MINOR)"=="MACOSX103" || "$(OS)$(BUILD_OS_MAJOR)$(BUILD_OS_MINOR)"=="MACOSX104"
|
2004-02-02 13:28:14 -06:00
|
|
|
PATCH_FILE_NAME=STLport-4.5-macxp-panther.patch
|
|
|
|
.ELSE
|
|
|
|
PATCH_FILE_NAME=STLport-4.5.patch
|
|
|
|
.ENDIF
|
2003-03-27 05:01:26 -06:00
|
|
|
.ELSE # "$(COMID)"=="gcc3"
|
2003-07-16 11:13:47 -05:00
|
|
|
.IF "$(OS)"=="MACOSX"
|
|
|
|
TARFILE_NAME=STLport-4.0
|
|
|
|
PATCH_FILE_NAME=STLport-4.0.macosx.patch
|
|
|
|
.ELSE
|
|
|
|
TARFILE_NAME=STLport-4.0
|
2006-06-19 22:08:44 -05:00
|
|
|
# To disable warnings from within STLport headers on unxsoli4 and
|
|
|
|
# unxsols4, STLport-4.0.patch had to be extended mechanically by
|
|
|
|
#
|
|
|
|
# cd unxsol.../misc/build/STLport-4.0/stlport && \
|
|
|
|
# find . -type f -exec sed -i \
|
|
|
|
# -e 's/^\([ \t]*__STL_BEGIN_NAMESPACE[ \t]*\)$/#if defined \
|
|
|
|
# __SUNPRO_CC\n#pragma disable_warn\n#endif\n&/' \
|
|
|
|
# -e 's/^\([ \t]*__STL_END_NAMESPACE[ \t]*\)$/&\n#if defined \
|
|
|
|
# __SUNPRO_CC\n#pragma enable_warn\n#endif/' {} \;
|
|
|
|
#
|
|
|
|
# (causing lots of files to become modified) and by additionally
|
|
|
|
# changing unxsol.../misc/build/STLport-4.0/stlport/math.h,
|
|
|
|
# unxsol.../misc/build/STLport-4.0/stlport/stl/_config.h,
|
|
|
|
# unxsol.../misc/build/STLport-4.0/stlport/stl/_list.h, and
|
|
|
|
# unxsol.../misc/build/STLport-4.0/stlport/stl/type_traits.h manually.
|
|
|
|
# (Obviously due to the way the C++ compiler generates code for
|
|
|
|
# instantiations of inline function templates from STLport headers, it
|
|
|
|
# does not work to simply add "#pragma disable_warn" to stl/_prolog.h
|
|
|
|
# and "#pragma enable_warn" to stl/_epilog.h, as seemingly some internal
|
|
|
|
# STLport headers are read in by the compiler only at the end of a
|
|
|
|
# compilation unit, outside the scope of stl/_prolog.h and
|
|
|
|
# stl/_epilog.h.)
|
2003-07-16 11:13:47 -05:00
|
|
|
PATCH_FILE_NAME=STLport-4.0.patch
|
|
|
|
.ENDIF # "$(OS)"=="MACOSX"
|
2003-03-27 05:01:26 -06:00
|
|
|
.ENDIF # "$(COMID)"=="gcc3"
|
2001-08-09 06:45:12 -05:00
|
|
|
|
2002-02-18 05:15:13 -06:00
|
|
|
.IF "$(GUI)"=="WNT"
|
2002-11-12 05:26:59 -06:00
|
|
|
.IF "$(CCNUMVER)"<="001300000000"
|
2002-02-18 05:15:13 -06:00
|
|
|
TARFILE_NAME=STLport-4.0
|
|
|
|
PATCH_FILE_NAME=STLport-4.0.patch
|
2002-11-12 05:26:59 -06:00
|
|
|
.ELSE # "$(CCNUMVER)"<="001300000000"
|
2003-03-27 05:01:26 -06:00
|
|
|
TARFILE_NAME=STLport-4.5-0119
|
|
|
|
PATCH_FILE_NAME=STLport-4.5-0119.patch
|
2002-11-12 05:26:59 -06:00
|
|
|
.ENDIF # "$(CCNUMVER)"<="001300000000"
|
2002-02-18 05:15:13 -06:00
|
|
|
.ENDIF
|
|
|
|
|
2002-08-27 11:28:39 -05:00
|
|
|
.IF "$(USE_SHELL)"=="4nt"
|
2003-03-27 05:01:26 -06:00
|
|
|
TAR_EXCLUDES=*/SC5/*
|
|
|
|
.ENDIF # "$(USE_SHELL)"=="4nt"
|
2001-08-09 06:45:12 -05:00
|
|
|
|
2005-12-21 09:51:24 -06:00
|
|
|
ADDITIONAL_FILES=src$/gcc-3.0.mak src$/gcc-3.0-macosx.mak src$/gcc-3.0-freebsd.mak src$/sunpro8.mak src$/sunpro11.mak
|
2001-11-14 05:58:35 -06:00
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
|
|
|
|
CONFIGURE_ACTION=none
|
|
|
|
CONFIGURE_FLAGS=
|
|
|
|
|
|
|
|
BUILD_DIR=src
|
|
|
|
|
|
|
|
.IF "$(COM)"=="MSC"
|
|
|
|
BUILD_ACTION=nmake
|
2006-09-25 07:12:16 -05:00
|
|
|
.IF "$(CCNUMVER)"<="001400000000"
|
|
|
|
BUILD_FLAGS=-f vc7.mak EXFLAGS="/EHsc"
|
|
|
|
.ELSE # "$(CCNUMVER)"<="001400000000"
|
|
|
|
BUILD_FLAGS=-f vc7.mak EXFLAGS="/EHa /Zc:wchar_t-" CCNUMVER=$(CCNUMVER)
|
|
|
|
.ENDIF # "$(CCNUMVER)"<="001400000000"
|
2001-08-09 06:45:12 -05:00
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
.IF "$(COM)"=="GCC"
|
2003-07-16 11:13:47 -05:00
|
|
|
.IF "$(COMID)"=="gcc3"
|
|
|
|
# FreeBSD needs a special makefile
|
|
|
|
.IF "$(OS)"=="FREEBSD"
|
|
|
|
BUILD_FLAGS=-f gcc-3.0-freebsd.mak
|
|
|
|
.ELIF "$(OS)"=="MACOSX"
|
|
|
|
BUILD_FLAGS=-f gcc-3.0-macosx.mak
|
|
|
|
.ELSE
|
|
|
|
BUILD_FLAGS=-f gcc-3.0.mak
|
|
|
|
.ENDIF
|
|
|
|
.ELSE # "$(COMID)"=="gcc3"
|
|
|
|
# MacOS X/Darwin need a special makefile
|
|
|
|
.IF "$(OS)"=="MACOSX"
|
|
|
|
BUILD_FLAGS=-f gcc-apple-macosx.mak
|
|
|
|
.ELIF "$(OS)"=="FREEBSD"
|
|
|
|
BUILD_FLAGS=-f gcc-freebsd.mak
|
|
|
|
.ELSE # "$(OS)"=="MACOSX"
|
|
|
|
BUILD_FLAGS=-f gcc.mak
|
|
|
|
.ENDIF # "$(OS)"=="MACOSX"
|
|
|
|
.ENDIF # "$(COMID)"=="gcc3"
|
|
|
|
BUILD_ACTION=$(GNUMAKE)
|
|
|
|
# build in parallel
|
|
|
|
BUILD_FLAGS+= -j$(MAXPROCESS)
|
2001-08-09 06:45:12 -05:00
|
|
|
.ENDIF
|
|
|
|
|
|
|
|
.IF "$(COM)"=="C52"
|
|
|
|
BUILD_ACTION=make
|
2005-12-21 09:51:24 -06:00
|
|
|
.IF "$(CCNUMVER)">="00050008"
|
|
|
|
BUILD_FLAGS=-f sunpro11.mak
|
|
|
|
.ELIF "$(CCNUMVER)">="00050005"
|
2003-12-01 06:00:46 -06:00
|
|
|
BUILD_FLAGS=-f sunpro8.mak
|
|
|
|
.ELSE
|
2003-03-27 05:01:26 -06:00
|
|
|
BUILD_FLAGS=-f sunpro6.mak
|
2005-12-21 09:51:24 -06:00
|
|
|
.ENDIF # "$(CCNUMVER)">="00050008"
|
2001-08-09 06:45:12 -05:00
|
|
|
|
2003-03-27 05:01:26 -06:00
|
|
|
OUT2INC= \
|
|
|
|
stlport$/SC5$/*.SUNWCCh
|
2003-06-12 03:50:58 -05:00
|
|
|
.ENDIF
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2003-06-12 03:50:58 -05:00
|
|
|
.IF "$(OS)"=="IRIX"
|
|
|
|
TARFILE_NAME=STLport-4.5
|
2003-12-17 10:42:57 -06:00
|
|
|
PATCH_FILE_NAME=STLport-4.5.patch
|
2003-06-12 03:50:58 -05:00
|
|
|
BUILD_ACTION=gmake
|
|
|
|
BUILD_FLAGS=-f gcc-3.0.mak
|
|
|
|
BUILD_FLAGS+= -j$(MAXPROCESS)
|
|
|
|
.ENDIF
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
OUTDIR2INC= \
|
|
|
|
stlport
|
|
|
|
|
|
|
|
.IF "$(GUI)"=="WNT"
|
|
|
|
|
|
|
|
OUT2LIB= \
|
|
|
|
lib$/*.lib
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
OUT2BIN= \
|
|
|
|
lib$/*.dll \
|
|
|
|
lib$/*.pdb
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
.ELSE # "$(GUI)"=="WNT"
|
|
|
|
|
|
|
|
OUT2LIB= \
|
|
|
|
lib$/lib*
|
|
|
|
|
|
|
|
.ENDIF # "$(GUI)"=="WNT"
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
# --- Targets ------------------------------------------------------
|
|
|
|
|
2003-03-27 05:01:26 -06:00
|
|
|
.IF "$(STLPORT4)"!="NO_STLPORT4"
|
|
|
|
all :
|
|
|
|
@echo " An already available installation of STLport has been chosen in the configure process."
|
|
|
|
@echo " Therefore the version provided here does not need to be built in addition."
|
|
|
|
+$(COPY) $(STLPORT4)$/lib$/*stlport*$(DLLPOST) $(DLLDEST)
|
|
|
|
.ENDIF
|
|
|
|
|
2005-02-11 08:32:47 -06:00
|
|
|
.INCLUDE : set_ext.mk
|
2001-08-09 06:45:12 -05:00
|
|
|
.INCLUDE : target.mk
|
|
|
|
.INCLUDE : tg_ext.mk
|
|
|
|
|
2002-02-18 05:15:13 -06:00
|
|
|
.IF "$(GUI)"=="WNT"
|
2002-11-12 05:26:59 -06:00
|
|
|
.IF "$(CCNUMVER)"<="001300000000"
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2002-08-08 08:54:14 -05:00
|
|
|
$(MISC)$/$(TARFILE_ROOTDIR) : avoid_win32_patches
|
|
|
|
avoid_win32_patches :
|
|
|
|
@+$(ECHONL)
|
2006-10-05 04:43:50 -05:00
|
|
|
@echo ERROR! this module can't use automated patch creation
|
|
|
|
@echo on windows.
|
2002-08-08 08:54:14 -05:00
|
|
|
@+$(ECHONL)
|
|
|
|
force_dmake_to_error
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2002-02-18 05:15:13 -06:00
|
|
|
$(PACKAGE_DIR)$/so_custom_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE)
|
2002-04-15 08:02:15 -05:00
|
|
|
.IF "$(USE_SHELL)"=="4nt"
|
2002-07-24 06:03:56 -05:00
|
|
|
+win32_custom.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
2002-04-15 08:02:15 -05:00
|
|
|
.ELSE # "$(USE_SHELL)"=="4nt"
|
2002-07-24 06:03:56 -05:00
|
|
|
+win32_custom.sh $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
2002-04-15 08:02:15 -05:00
|
|
|
.ENDIF # "$(USE_SHELL)"=="4nt"
|
2002-02-18 05:15:13 -06:00
|
|
|
|
2003-03-27 05:01:26 -06:00
|
|
|
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/so_custom_patch
|
2002-08-08 08:54:14 -05:00
|
|
|
|
|
|
|
.IF "$(USE_NEW_SDK)"!=""
|
|
|
|
$(PACKAGE_DIR)$/win32_sdk_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE)
|
|
|
|
.IF "$(USE_SHELL)"=="4nt"
|
|
|
|
+win32_sdk.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
|
|
|
.ELSE # "$(USE_SHELL)"=="4nt"
|
|
|
|
+win32_sdk.sh $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
|
|
|
.ENDIF # "$(USE_SHELL)"=="4nt"
|
2003-03-27 05:01:26 -06:00
|
|
|
|
2002-08-08 08:54:14 -05:00
|
|
|
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/win32_sdk_patch
|
|
|
|
.ENDIF # "$(USE_NEW_SDK)"!=""
|
2003-03-27 05:01:26 -06:00
|
|
|
.ENDIF # COMVER<=001300000000
|
2006-09-25 07:12:16 -05:00
|
|
|
.ENDIF # "$(GUI)"=="WNT"
|