ced0d68a1e
2009-07-31 11:40:04 +0200 jsc r274518 : #103926# apply patch 2009-07-16 17:17:01 +0200 jsc r274063 : #i103311# check new Solaris compiler version ox5100 2009-07-07 17:20:41 +0200 jsc r273811 : cleanup 2009-07-07 15:21:26 +0200 jsc r273799 : #98322# correct LD_LIBRARY_PATH, sdk/lib dir instead of sdkout/platfrom/lib, all unix excepting mac 2009-07-07 15:07:05 +0200 jsc r273798 : #i98322# correct link 2009-07-07 09:43:57 +0200 jsc r273773 : #i98322# correct link path 2009-07-06 15:49:07 +0200 jsc r273749 : #i98322# correct typo 2009-07-06 14:17:27 +0200 jsc r273743 : #i103311# support sunstudio compiler 12u1, version 5.10 (which results in 0x5100) 2009-07-03 13:54:58 +0200 jsc r273693 : #i96576# support opensolaris and enhance docu to relfect usage of gmake 2009-07-02 13:12:02 +0200 jsc r273643 : #i103260# improve fix by using EXECPOST variable 2009-07-02 13:11:30 +0200 jsc r273642 : #i103260# improve fix by using EXECPOST variable 2009-07-02 13:05:35 +0200 jsc r273640 : #i103260# correct typo for windows 2009-07-02 13:01:34 +0200 jsc r273639 : #i103260# provide regview with path as argument 2009-07-01 07:18:01 +0200 jsc r273541 : CWS-TOOLING: rebase CWS jsc320 to trunk@273468 (milestone: DEV300:m51) 2009-06-30 08:01:13 +0200 jsc r273485 : #98322# include import purpenvhelper lib under windows 2009-06-10 15:07:29 +0200 jsc r272815 : CWS-TOOLING: rebase CWS jsc320 to trunk@272291 (milestone: DEV300:m49) 2009-05-27 09:36:23 +0200 jsc r272329 : #i98322# create link for purpenvhelper library in SDK 2009-05-27 09:35:41 +0200 jsc r272328 : #i98322# create link for purpenvhelpr library in SDK 2009-05-14 16:19:41 +0200 jsc r271900 : increase version number in SDK header image 2009-05-14 16:11:05 +0200 jsc r271899 : #i101408# new version 3.2 2009-05-14 15:33:47 +0200 jsc r271894 : #i99163# apply patch to correct wrong tags for autodoc 2009-05-14 14:49:58 +0200 jsc r271889 : #i99707# apply patch to remove unused code
266 lines
7.8 KiB
Makefile
266 lines
7.8 KiB
Makefile
#*************************************************************************
|
|
#
|
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
#
|
|
# Copyright 2008 by Sun Microsystems, Inc.
|
|
#
|
|
# OpenOffice.org - a multi-platform office productivity suite
|
|
#
|
|
# $RCSfile: makefile.mk,v $
|
|
#
|
|
# $Revision: 1.45.2.1 $
|
|
#
|
|
# This file is part of OpenOffice.org.
|
|
#
|
|
# 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.
|
|
#
|
|
# 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).
|
|
#
|
|
# 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.
|
|
#
|
|
#*************************************************************************
|
|
|
|
PRJ=.
|
|
|
|
PRJNAME=so_stlport
|
|
TARGET=so_stlport
|
|
|
|
# --- Settings -----------------------------------------------------
|
|
|
|
.INCLUDE : settings.mk
|
|
|
|
.IF "$(USE_SYSTEM_STL)"=="YES"
|
|
|
|
.IF "$(OS)"=="SOLARIS" && "$(COM)"!="GCC"
|
|
# System STL when building with SunStudio is just a version of STLport
|
|
# which comes with the compiler
|
|
all:
|
|
@echo "Nothing to do"
|
|
.ELSE #"$(OS)"=="SOLARIS" && "$(COM)"!="GCC"
|
|
#
|
|
# If you choose to build without stlport, some headers will be used to bring the
|
|
# sgi extensions into the std namespace:
|
|
$(INCCOM)$/stlport$/functional \
|
|
$(INCCOM)$/stlport$/hash_map \
|
|
$(INCCOM)$/stlport$/hash_set \
|
|
$(INCCOM)$/stlport$/numeric \
|
|
$(INCCOM)$/stlport$/slist \
|
|
$(INCCOM)$/stlport$/rope \
|
|
$(INCCOM)$/stlport$/vector: systemstl$/$$(@:f)
|
|
$(MKDIRHIER) $(@:d)
|
|
$(COPY) $< $@
|
|
.ENDIF #"$(OS)"=="SOLARIS" && "$(COM)"!="GCC"
|
|
|
|
.ELSE # "$(USE_SYSTEM_STL)"
|
|
|
|
# --- Files --------------------------------------------------------
|
|
.EXPORT : CC CXX
|
|
.IF "$(COMID)"=="gcc3"
|
|
TARFILE_NAME=STLport-4.5
|
|
PATCH_FILES=STLport-4.5.patch STLport-4.5-gcc43_warnings.patch
|
|
.ELIF "$(GUI)"=="WNT"
|
|
.IF "$(CCNUMVER)"<="001300000000"
|
|
TARFILE_NAME=STLport-4.0
|
|
PATCH_FILES=STLport-4.0.patch
|
|
.ELSE
|
|
TARFILE_NAME=STLport-4.5-0119
|
|
PATCH_FILES=STLport-4.5-0119.patch
|
|
.ENDIF
|
|
.ELSE
|
|
TARFILE_NAME=STLport-4.0
|
|
PATCH_FILES=STLport-4.0.patch STLport-4.0-sunstudio12u1.patch
|
|
# 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.)
|
|
.ENDIF
|
|
|
|
.IF "$(USE_SHELL)"=="4nt"
|
|
TAR_EXCLUDES=*/SC5/*
|
|
.ENDIF # "$(USE_SHELL)"=="4nt"
|
|
|
|
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 \
|
|
src$/gcc-3.0-os2.mak src$/gcc-3.0-os2.def src$/common_macros_os2.mak
|
|
|
|
|
|
CONFIGURE_ACTION=none
|
|
CONFIGURE_FLAGS=
|
|
|
|
BUILD_DIR=src
|
|
|
|
.IF "$(COM)"=="MSC"
|
|
BUILD_ACTION=nmake
|
|
.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"
|
|
.ENDIF
|
|
|
|
.IF "$(COM)"=="GCC"
|
|
.IF "$(COMID)"=="gcc3"
|
|
# FreeBSD needs a special makefile
|
|
.IF "$(OS)"=="FREEBSD"
|
|
BUILD_FLAGS=-f gcc-3.0-freebsd.mak
|
|
.ELIF "$(OS)"=="OS2"
|
|
BUILD_FLAGS=-f gcc-3.0-os2.mak
|
|
.ELIF "$(GUI)"=="WNT"
|
|
BUILD_FLAGS=-f gcc-3.0-mingw.mak
|
|
.ELSE
|
|
BUILD_FLAGS=-f gcc-3.0.mak
|
|
.ENDIF
|
|
.ELSE # "$(COMID)"=="gcc3"
|
|
.IF "$(OS)"=="FREEBSD"
|
|
BUILD_FLAGS=-f gcc-freebsd.mak
|
|
.ELSE
|
|
BUILD_FLAGS=-f gcc.mak
|
|
.ENDIF
|
|
.ENDIF # "$(COMID)"=="gcc3"
|
|
BUILD_ACTION=$(GNUMAKE)
|
|
# build in parallel
|
|
BUILD_FLAGS+= -j$(MAXPROCESS)
|
|
.ENDIF
|
|
.IF "$(HAVE_LD_HASH_STYLE)" == "TRUE"
|
|
CXX+= -Wl,--hash-style=both
|
|
.ENDIF
|
|
|
|
.IF "$(HAVE_LD_BSYMBOLIC_FUNCTIONS)" == "TRUE"
|
|
CXX+= -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo
|
|
.ENDIF
|
|
|
|
.IF "$(COM)"=="C52"
|
|
BUILD_ACTION=make
|
|
.IF "$(CCNUMVER)">="00050008"
|
|
BUILD_FLAGS=-f sunpro11.mak
|
|
.ELIF "$(CCNUMVER)">="00050005"
|
|
BUILD_FLAGS=-f sunpro8.mak
|
|
.ELSE
|
|
BUILD_FLAGS=-f sunpro6.mak
|
|
.ENDIF # "$(CCNUMVER)">="00050008"
|
|
|
|
OUT2INC= \
|
|
stlport$/SC5$/*.SUNWCCh
|
|
.ENDIF
|
|
|
|
.IF "$(OS)"=="IRIX"
|
|
TARFILE_NAME=STLport-4.5
|
|
PATCH_FILES=STLport-4.5.patch
|
|
BUILD_ACTION=gmake
|
|
BUILD_FLAGS=-f gcc-3.0.mak
|
|
BUILD_FLAGS+= -j$(MAXPROCESS)
|
|
.ENDIF
|
|
|
|
OUTDIR2INC= \
|
|
stlport
|
|
|
|
.IF "$(GUI)"=="WNT"
|
|
.IF "$(COM)"=="GCC"
|
|
|
|
OUT2LIB= \
|
|
lib$/lib*_static.a
|
|
|
|
OUT2BIN= \
|
|
lib$/*.dll
|
|
|
|
.ELSE
|
|
|
|
OUT2LIB= \
|
|
lib$/*.lib
|
|
|
|
OUT2BIN= \
|
|
lib$/*.dll \
|
|
lib$/*.pdb
|
|
|
|
.ENDIF # "$(COM)"=="GCC"
|
|
|
|
.ELIF "$(GUI)"=="OS2"
|
|
|
|
OUT2LIB= lib$/*.lib
|
|
OUT2BIN= lib$/*.dll
|
|
|
|
.ELSE # "$(GUI)"=="WNT"
|
|
|
|
OUT2LIB= \
|
|
lib$/lib*
|
|
|
|
.ENDIF # "$(GUI)"=="WNT"
|
|
|
|
# --- Targets ------------------------------------------------------
|
|
|
|
.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."
|
|
.ELIF "$(OS)"=="MACOSX"
|
|
all:
|
|
@echo '--with-stlport=yes is not supported on Mac OS X'
|
|
false
|
|
.ENDIF
|
|
|
|
.INCLUDE : set_ext.mk
|
|
.INCLUDE : target.mk
|
|
.INCLUDE : tg_ext.mk
|
|
|
|
.IF "$(GUI)"=="WNT"
|
|
.IF "$(COM)"!="GCC"
|
|
.IF "$(CCNUMVER)"<="001300000000"
|
|
|
|
$(MISC)$/$(TARFILE_ROOTDIR) : avoid_win32_patches
|
|
avoid_win32_patches :
|
|
@$(ECHONL)
|
|
@echo ERROR! this module can't use automated patch creation
|
|
@echo on windows.
|
|
@$(ECHONL)
|
|
force_dmake_to_error
|
|
|
|
$(PACKAGE_DIR)$/so_custom_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE)
|
|
.IF "$(USE_SHELL)"=="4nt"
|
|
win32_custom.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
|
.ELSE # "$(USE_SHELL)"=="4nt"
|
|
win32_custom.sh $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
|
|
.ENDIF # "$(USE_SHELL)"=="4nt"
|
|
|
|
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/so_custom_patch
|
|
|
|
.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"
|
|
|
|
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/win32_sdk_patch
|
|
.ENDIF # "$(USE_NEW_SDK)"!=""
|
|
.ENDIF # COMVER<=001300000000
|
|
.ENDIF "$(COM)"=="GCC"
|
|
.ENDIF # "$(GUI)"=="WNT"
|
|
|
|
.ENDIF # "$(USE_SYSTEM_STL)"
|