diff options
author | Caolán McNamara <cmc@openoffice.org> | 2010-08-03 10:01:07 +0100 |
---|---|---|
committer | Caolán McNamara <cmc@openoffice.org> | 2010-08-03 10:01:07 +0100 |
commit | bebc5687ca94696d8180a4c2a53b8ae0bd697167 (patch) | |
tree | 748904dd521449b9192730d03fe9345f3130b975 | |
parent | cmcfixes77: #i80021# system libtextcat (diff) | |
download | core-bebc5687ca94696d8180a4c2a53b8ae0bd697167.tar.gz core-bebc5687ca94696d8180a4c2a53b8ae0bd697167.zip |
cmcfixes77: #i113503# system non-stlport cppunit with OOo stlport
-rwxr-xr-x | configure | 10 | ||||
-rw-r--r-- | configure.in | 6 | ||||
-rw-r--r-- | stlport/prj/d.lst | 1 | ||||
-rw-r--r-- | stlport/systemstlguards/postextstl.h | 36 | ||||
-rw-r--r-- | stlport/systemstlguards/preextstl.h | 77 |
5 files changed, 114 insertions, 16 deletions
diff --git a/configure b/configure index fb986b5593fc..e0b389733209 100755 --- a/configure +++ b/configure @@ -13701,16 +13701,6 @@ echo "$as_me: error: Library requirements (cppunit >= 1.12.1 ) not met; consider { (exit 1); exit 1; }; } fi - echo "$as_me:$LINENO: checking STL compatibility" >&5 -echo $ECHO_N "checking STL compatibility... $ECHO_C" >&6 - if test "$WITH_STLPORT" != "no"; then - { { echo "$as_me:$LINENO: error: to use system cppunit you need to use --without-stlport" >&5 -echo "$as_me: error: to use system cppunit you need to use --without-stlport" >&2;} - { (exit 1); exit 1; }; } - else - echo "$as_me:$LINENO: result: OK" >&5 -echo "${ECHO_T}OK" >&6 - fi else echo "$as_me:$LINENO: result: internal" >&5 echo "${ECHO_T}internal" >&6 diff --git a/configure.in b/configure.in index fcc335990379..0a90dcec6f72 100644 --- a/configure.in +++ b/configure.in @@ -3613,12 +3613,6 @@ if test -n "$with_system_cppunit" -o -n "$with_system_libs" && \ # a system-cppunit before the first version using a proper cppunit # (and that being 1.12.1) anyway PKG_CHECK_MODULES( CPPUNIT, cppunit >= 1.12.1 ) - AC_MSG_CHECKING([STL compatibility]) - if test "$WITH_STLPORT" != "no"; then - AC_MSG_ERROR([to use system cppunit you need to use --without-stlport]) - else - AC_MSG_RESULT([OK]) - fi else AC_MSG_RESULT([internal]) SYSTEM_CPPUNIT=NO diff --git a/stlport/prj/d.lst b/stlport/prj/d.lst index f379d7d14c36..29848a6475e3 100644 --- a/stlport/prj/d.lst +++ b/stlport/prj/d.lst @@ -17,6 +17,7 @@ mkdir: %_DEST%\inc%_EXT%\stl\wrap_std\h ..\%__SRC%\inc\stlport\using\h\* %_DEST%\inc%_EXT%\stl\using\h\* ..\%__SRC%\inc\stlport\wrap_std\* %_DEST%\inc%_EXT%\stl\wrap_std\* ..\%__SRC%\inc\stlport\wrap_std\h\* %_DEST%\inc%_EXT%\stl\wrap_std\h\* +..\systemstlguards\*.h %_DEST%\inc%_EXT%\stl\*.h ..\%__SRC%\lib\lib*.so %_DEST%\lib%_EXT%\lib*.so ..\%__SRC%\lib\lib*.a %_DEST%\lib%_EXT%\lib*.a ..\%__SRC%\lib\*.lib %_DEST%\lib%_EXT%\*.lib diff --git a/stlport/systemstlguards/postextstl.h b/stlport/systemstlguards/postextstl.h new file mode 100644 index 000000000000..81a21e25c15b --- /dev/null +++ b/stlport/systemstlguards/postextstl.h @@ -0,0 +1,36 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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. + * + ************************************************************************/ + +#ifdef std_was_redefined_as_stlport +// put things back the way they were +# define std std_was_redefined_as_stlport +# undef _STLP_OUTERMOST_HEADER_ID +// force config to be re-read +# undef _STLP_NOTHROW_INHERENTLY +# undef _STLP_CONFIG_H +# include <stddef.h> +#endif diff --git a/stlport/systemstlguards/preextstl.h b/stlport/systemstlguards/preextstl.h new file mode 100644 index 000000000000..763f0dfa79f3 --- /dev/null +++ b/stlport/systemstlguards/preextstl.h @@ -0,0 +1,77 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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. + * + ************************************************************************/ +//1. Force inclusion of a std:: using header to ensure the stlport define +//of std as "stlport" +#include <algorithm> +#if defined(ADAPT_EXT_STL) +//2. Force inclusion of stlport headers to get their stlport:: definitions +# include <ostream> +# include <istream> +# include <fstream> +# include <iostream> +# include <sstream> +# include <vector> +# include <deque> +# include <set> +# include <list> +# include <map> +//3. Now force inclusion of native headers to get their std:: definitions +# if defined(std) +# define std_was_redefined_as_stlport std +# undef std +# define _STLP_OUTERMOST_HEADER_ID 0xdeadbeaf +# if defined(_GNUC__) +# pragma GCC visibility push(default) +# endif +# include _STLP_NATIVE_HEADER(exception_defines.h) +# include _STLP_NATIVE_HEADER(limits) +# include _STLP_NATIVE_HEADER(memory) +# include _STLP_NATIVE_HEADER(exception) +# include _STLP_NATIVE_HEADER(iosfwd) +# include _STLP_NATIVE_HEADER(algorithm) +# include _STLP_NATIVE_HEADER(string) +# include _STLP_NATIVE_HEADER(streambuf) +# include _STLP_NATIVE_HEADER(ios) +# include _STLP_NATIVE_HEADER(locale) +# include _STLP_NATIVE_HEADER(stdexcept) +# include _STLP_NATIVE_HEADER(ostream) +# include _STLP_NATIVE_HEADER(istream) +# include _STLP_NATIVE_HEADER(iostream) +# include _STLP_NATIVE_HEADER(sstream) +# include _STLP_NATIVE_HEADER(vector) +# include _STLP_NATIVE_HEADER(deque) +# include _STLP_NATIVE_HEADER(set) +# include _STLP_NATIVE_HEADER(list) +# include _STLP_NATIVE_HEADER(map) +# if defined(_GNUC__) +# pragma GCC visibility pop +# endif +# endif +#endif +//ext_std resolves to the std that external c++ libs, e.g. Graphite were built +//against regardless of whether that is stlport or system stl +namespace ext_std = std; |