You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by hd...@apache.org on 2013/07/25 09:57:42 UTC

svn commit: r1506838 - in /openoffice/branches/rejuvenate01/main/stlport: makefile.mk systemstl/list systemstl/set

Author: hdu
Date: Thu Jul 25 07:57:42 2013
New Revision: 1506838

URL: http://svn.apache.org/r1506838
Log:
fix rejuvenate01 branch after AOO400/trunk merges

Added:
    openoffice/branches/rejuvenate01/main/stlport/systemstl/list
    openoffice/branches/rejuvenate01/main/stlport/systemstl/set
Modified:
    openoffice/branches/rejuvenate01/main/stlport/makefile.mk

Modified: openoffice/branches/rejuvenate01/main/stlport/makefile.mk
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/stlport/makefile.mk?rev=1506838&r1=1506837&r2=1506838&view=diff
==============================================================================
--- openoffice/branches/rejuvenate01/main/stlport/makefile.mk (original)
+++ openoffice/branches/rejuvenate01/main/stlport/makefile.mk Thu Jul 25 07:57:42 2013
@@ -17,30 +17,28 @@
 #  specific language governing permissions and limitations
 #  under the License.
 #  
-# *************************************************************
+#**************************************************************
 
-TARGET=OpenOffice.org
-MAKEFILERC=true
 
-# 
-# build targets
-# 
 
-build_all : build_instsetoo_native
+PRJ=.
 
-all .PHONY : build_all
+PRJNAME=so_stlport
+TARGET=so_stlport
 
-check_modules .PHONY :
-	@+echo Checking module list
-	@+perl $(SOLARENV)$/bin$/build.pl --checkmodules
+# --- Settings -----------------------------------------------------
 
-# Only build when all modules available
-build_instsetoo_native .SETDIR=instsetoo_native/prj : check_modules
-	@+perl $(SOLARENV)$/bin$/build.pl --all $(PROFULLSWITCH)
+.INCLUDE :	settings.mk
 
-depend .SETDIR=instsetoo_native/prj : check_modules
-	@+perl $(SOLARENV)$/bin$/build.pl --all $(PROFULLSWITCH) depend=t
+.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 \
@@ -54,56 +52,156 @@ $(INCCOM)$/stlport$/set \
 $(INCCOM)$/stlport$/vector: systemstl$/$$(@:f)
     $(MKDIRHIER) $(@:d)
     $(COPY) $< $@
+.ENDIF #"$(OS)"=="SOLARIS" && "$(COM)"!="GCC"
 
-# 
-# bootstrap target
-# 
+.ELSE # "$(USE_SYSTEM_STL)"
+
+# --- Files --------------------------------------------------------
+.EXPORT : CC CXX
+.IF "$(COMID)"=="gcc3"
+	TARFILE_NAME=STLport-4.5
+    TARFILE_MD5=18f577b374d60b3c760a3a3350407632
+    PATCH_FILES=STLport-4.5.patch STLport-4.5-gcc43_warnings.patch
+.ELIF "$(GUI)"=="WNT"
+    TARFILE_NAME=STLport-4.5-0119
+    TARFILE_MD5=7376930b0d3f3d77a685d94c4a3acda8
+    PATCH_FILES=STLport-4.5-0119.patch
+.ELSE
+    TARFILE_NAME=STLport-4.0
+    TARFILE_MD5=c441926f3a552ed3e5b274b62e86af16
+    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
+
+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
 
-bootstrap .PHONY :
-	@bootstrap
 
+CONFIGURE_ACTION=none
+CONFIGURE_FLAGS=
 
-distclean .PHONY: clean
-	-rm config.cache
-	-rm config.log
-.IF "$(BUILD_DMAKE)"!="NO"
-	-$(GNUMAKE) -C dmake distclean
+BUILD_DIR=src
+
+.IF "$(COM)"=="MSC"
+BUILD_ACTION=nmake
+BUILD_FLAGS=-f vc7.mak EXFLAGS="/EHa /Zc:wchar_t-" CCNUMVER=$(CCNUMVER)
 .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
 
-clean .PHONY:
-	-rm -rf */$(INPATH)
-	-rm -rf solver/*/$(INPATH)
-.IF "$(ADDITIONAL_REPOSITORIES)"!=""
-	-rm -rf $(foreach,f,$(ADDITIONAL_REPOSITORIES) $f/*/$(INPATH))
+.IF "$(HAVE_LD_BSYMBOLIC_FUNCTIONS)"  == "TRUE"
+CXX+= -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo
 .ENDIF
-.IF "$(BUILD_DMAKE)"!="NO"
-	-echo cleaning up dmake...
-	-$(GNUMAKE) -C dmake clean
+
+.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
 
-# 
-# configure target
-# 
+OUTDIR2INC= \
+    stlport
+
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+
+OUT2LIB= \
+    lib$/lib*_static.a
 
-configure .PHONY SETDIR=. :
-	@configure
+OUT2BIN= \
+    lib$/*.dll
 
+.ELSE
 
-# 
-# install target
-# 
+OUT2LIB= \
+    lib$/*.lib
 
-install .PHONY :
-	@test "$(DESTDIR)$(prefix)" != "" || (echo Usage: make install [DESTDIR=DIR] prefix=DIR; exit 2)
-	cp -p instsetoo_native/$(INPATH)/bin/* $(SOLARVER)/$(INPATH)/bin
-	cd instsetoo_native/util \
-	    && OUT=$(INPATH)\
-	    LOCAL_OUT=$(INPATH)\
-	    LOCAL_COMMON_OUT=$(INPATH)\
-            DEFAULT_TO_ENGLISH_FOR_PACKING=1\
-	    PYTHONPATH=$(SOLARVER)/$(INPATH)/bin:$(SOLARVER)/$(INPATH)/lib:$(PYTHONPATH) \
-	    $(PERL) $(SOLARENV)/bin/make_installer.pl -f openoffice.lst -l $(WITH_LANG:f:t",") -p OpenOffice -buildid 0 -simple $(DESTDIR)$(prefix)
+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
 
+.ENDIF # "$(USE_SYSTEM_STL)"

Added: openoffice/branches/rejuvenate01/main/stlport/systemstl/list
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/stlport/systemstl/list?rev=1506838&view=auto
==============================================================================
--- openoffice/branches/rejuvenate01/main/stlport/systemstl/list (added)
+++ openoffice/branches/rejuvenate01/main/stlport/systemstl/list Thu Jul 25 07:57:42 2013
@@ -0,0 +1,38 @@
+/**************************************************************
+ * 
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * 
+ *************************************************************/
+
+#ifndef SYSTEM_STL_LIST
+#define SYSTEM_STL_LIST
+
+#ifdef HAVE_STL_INCLUDE_PATH
+	// TODO: use computed include file name
+	#include_next <list>
+#elif defined(_MSC_VER)
+	#include <../../VC/include/list>
+	// MSVC's list would cause a lot of expression-result-unused warnings
+	// unless it is compiled in iterator-debugging mode. Silence this noise
+	#pragma warning(disable:4555)
+#else // fall back to boost/tr1
+	#include <boost/tr1/tr1/list>
+#endif
+
+#endif
+

Added: openoffice/branches/rejuvenate01/main/stlport/systemstl/set
URL: http://svn.apache.org/viewvc/openoffice/branches/rejuvenate01/main/stlport/systemstl/set?rev=1506838&view=auto
==============================================================================
--- openoffice/branches/rejuvenate01/main/stlport/systemstl/set (added)
+++ openoffice/branches/rejuvenate01/main/stlport/systemstl/set Thu Jul 25 07:57:42 2013
@@ -0,0 +1,37 @@
+/**************************************************************
+ * 
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * 
+ *************************************************************/
+
+#ifndef SYSTEM_STL_SET
+#define SYSTEM_STL_SET
+
+#if defined(HAVE_STL_INCLUDE_PATH)
+	namespace std { class type_info; };
+	// TODO: use computed include file name
+	#include "utility"
+	#include_next <set>
+#elif defined(_MSC_VER)
+	#include <../../VC/include/set>
+#else // fall back to boost/tr1
+	#include <boost/tr1/tr1/set>
+#endif
+
+#endif
+