2001-08-09 06:45:12 -05:00
|
|
|
#*************************************************************************
|
|
|
|
#
|
2008-04-11 00:59:44 -05:00
|
|
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
|
|
#
|
2010-02-12 08:01:35 -06:00
|
|
|
# Copyright 2000, 2010 Oracle and/or its affiliates.
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2008-04-11 00:59:44 -05:00
|
|
|
# OpenOffice.org - a multi-platform office productivity suite
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2008-04-11 00:59:44 -05:00
|
|
|
# This file is part of OpenOffice.org.
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2008-04-11 00:59:44 -05:00
|
|
|
# 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.
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2008-04-11 00:59:44 -05:00
|
|
|
# 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).
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
2008-04-11 00:59:44 -05:00
|
|
|
# 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.
|
2001-08-09 06:45:12 -05:00
|
|
|
#
|
|
|
|
#*************************************************************************
|
|
|
|
|
|
|
|
PRJ=.
|
|
|
|
|
|
|
|
PRJNAME=so_stlport
|
|
|
|
TARGET=so_stlport
|
|
|
|
|
|
|
|
# --- Settings -----------------------------------------------------
|
|
|
|
|
|
|
|
.INCLUDE : settings.mk
|
|
|
|
|
2011-02-08 21:21:48 -06:00
|
|
|
.IF "$(WITH_STLPORT)"!="YES"
|
2004-09-08 10:33:43 -05:00
|
|
|
|
2008-06-16 08:20:39 -05:00
|
|
|
all:
|
|
|
|
@echo "Nothing to do"
|
2008-03-18 07:13:31 -05:00
|
|
|
|
2011-02-08 21:21:48 -06:00
|
|
|
.ELSE # "$(WITH_STLPORT)"!="YES"
|
2004-09-08 10:33:43 -05:00
|
|
|
|
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
|
2010-01-15 07:55:12 -06:00
|
|
|
TARFILE_MD5=18f577b374d60b3c760a3a3350407632
|
2010-12-07 09:25:53 -06:00
|
|
|
PATCH_FILES=\
|
|
|
|
STLport-4.5.patch \
|
|
|
|
STLport-4.5-gcc43_warnings.patch \
|
|
|
|
STLport-4.5-cxx0x.patch
|
2008-10-01 04:04:58 -05:00
|
|
|
.ELIF "$(GUI)"=="WNT"
|
|
|
|
.IF "$(CCNUMVER)"<="001300000000"
|
2003-07-16 11:13:47 -05:00
|
|
|
TARFILE_NAME=STLport-4.0
|
2010-01-15 07:55:12 -06:00
|
|
|
TARFILE_MD5=c441926f3a552ed3e5b274b62e86af16
|
2009-02-19 01:29:28 -06:00
|
|
|
PATCH_FILES=STLport-4.0.patch
|
2003-07-16 11:13:47 -05:00
|
|
|
.ELSE
|
2008-10-01 04:04:58 -05:00
|
|
|
TARFILE_NAME=STLport-4.5-0119
|
2010-01-15 07:55:12 -06:00
|
|
|
TARFILE_MD5=7376930b0d3f3d77a685d94c4a3acda8
|
2009-02-19 01:29:28 -06:00
|
|
|
PATCH_FILES=STLport-4.5-0119.patch
|
2008-10-01 04:04:58 -05:00
|
|
|
.ENDIF
|
|
|
|
.ELSE
|
|
|
|
TARFILE_NAME=STLport-4.0
|
2010-01-15 07:55:12 -06:00
|
|
|
TARFILE_MD5=c441926f3a552ed3e5b274b62e86af16
|
2009-08-06 02:01:05 -05:00
|
|
|
PATCH_FILES=STLport-4.0.patch STLport-4.0-sunstudio12u1.patch
|
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.)
|
2008-10-01 04:04:58 -05:00
|
|
|
.ENDIF
|
2001-08-09 06:45:12 -05:00
|
|
|
|
2008-10-01 04:04:58 -05:00
|
|
|
ADDITIONAL_FILES=src$/gcc-3.0.mak src$/gcc-3.0-freebsd.mak src$/sunpro8.mak src$/sunpro11.mak src$/gcc-3.0-mingw.mak \
|
2008-07-22 10:55:24 -05:00
|
|
|
src$/gcc-3.0-os2.mak src$/gcc-3.0-os2.def src$/common_macros_os2.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
|
2008-07-22 10:55:24 -05:00
|
|
|
.ELIF "$(OS)"=="OS2"
|
|
|
|
BUILD_FLAGS=-f gcc-3.0-os2.mak
|
2007-03-26 09:38:49 -05:00
|
|
|
.ELIF "$(GUI)"=="WNT"
|
|
|
|
BUILD_FLAGS=-f gcc-3.0-mingw.mak
|
2003-07-16 11:13:47 -05:00
|
|
|
.ELSE
|
|
|
|
BUILD_FLAGS=-f gcc-3.0.mak
|
|
|
|
.ENDIF
|
|
|
|
.ELSE # "$(COMID)"=="gcc3"
|
2008-10-01 04:04:58 -05:00
|
|
|
.IF "$(OS)"=="FREEBSD"
|
2003-07-16 11:13:47 -05:00
|
|
|
BUILD_FLAGS=-f gcc-freebsd.mak
|
2008-10-01 04:04:58 -05:00
|
|
|
.ELSE
|
2003-07-16 11:13:47 -05:00
|
|
|
BUILD_FLAGS=-f gcc.mak
|
2008-10-01 04:04:58 -05:00
|
|
|
.ENDIF
|
2003-07-16 11:13:47 -05:00
|
|
|
.ENDIF # "$(COMID)"=="gcc3"
|
|
|
|
BUILD_ACTION=$(GNUMAKE)
|
|
|
|
# build in parallel
|
|
|
|
BUILD_FLAGS+= -j$(MAXPROCESS)
|
2001-08-09 06:45:12 -05:00
|
|
|
.ENDIF
|
2007-07-31 07:10:28 -05:00
|
|
|
.IF "$(HAVE_LD_HASH_STYLE)" == "TRUE"
|
2011-03-29 06:25:46 -05:00
|
|
|
CXX+= -Wl,--hash-style=$(WITH_LINKER_HASH_STYLE)
|
2007-07-31 07:10:28 -05:00
|
|
|
.ENDIF
|
2001-08-09 06:45:12 -05:00
|
|
|
|
2009-04-27 06:24:10 -05:00
|
|
|
.IF "$(HAVE_LD_BSYMBOLIC_FUNCTIONS)" == "TRUE"
|
|
|
|
CXX+= -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo
|
|
|
|
.ENDIF
|
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
.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
|
|
|
|
2001-08-09 06:45:12 -05:00
|
|
|
OUTDIR2INC= \
|
|
|
|
stlport
|
|
|
|
|
|
|
|
.IF "$(GUI)"=="WNT"
|
2007-03-26 09:38:49 -05:00
|
|
|
.IF "$(COM)"=="GCC"
|
|
|
|
|
|
|
|
OUT2LIB= \
|
|
|
|
lib$/lib*_static.a
|
|
|
|
|
|
|
|
OUT2BIN= \
|
|
|
|
lib$/*.dll
|
|
|
|
|
|
|
|
.ELSE
|
2001-08-09 06:45:12 -05:00
|
|
|
|
|
|
|
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
|
|
|
|
2007-03-26 09:38:49 -05:00
|
|
|
.ENDIF # "$(COM)"=="GCC"
|
|
|
|
|
2008-07-22 10:55:24 -05:00
|
|
|
.ELIF "$(GUI)"=="OS2"
|
|
|
|
|
2008-12-09 02:43:20 -06:00
|
|
|
OUT2LIB= lib$/*.lib
|
2008-07-22 10:55:24 -05:00
|
|
|
OUT2BIN= lib$/*.dll
|
|
|
|
|
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 ------------------------------------------------------
|
|
|
|
|
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"
|
2007-03-26 09:38:49 -05:00
|
|
|
.IF "$(COM)"!="GCC"
|
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 :
|
2007-01-25 07:01:07 -06:00
|
|
|
@$(ECHONL)
|
2006-10-05 04:43:50 -05:00
|
|
|
@echo ERROR! this module can't use automated patch creation
|
|
|
|
@echo on windows.
|
2007-01-25 07:01:07 -06:00
|
|
|
@$(ECHONL)
|
2002-08-08 08:54:14 -05:00
|
|
|
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)
|
2007-01-25 07:01:07 -06:00
|
|
|
win32_custom.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
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)
|
2007-01-25 07:01:07 -06:00
|
|
|
win32_sdk.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
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
|
2007-03-26 09:38:49 -05:00
|
|
|
.ENDIF "$(COM)"=="GCC"
|
2007-01-25 07:01:07 -06:00
|
|
|
.ENDIF # "$(GUI)"=="WNT"
|
2008-03-18 07:13:31 -05:00
|
|
|
|
2011-02-08 21:21:48 -06:00
|
|
|
.ENDIF # "$(WITH_STLPORT)"!="YES"
|