Date: Sun, 18 Nov 2007 20:56:50 -0600 From: Stephen Montgomery-Smith <stephen@math.missouri.edu> To: FreeBSD Ports List <freebsd-ports@freebsd.org> Subject: stlport Message-ID: <4740FB72.5010206@math.missouri.edu>
next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------090900050108000702010709 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit I am trying to get the devel/stlport to work on FreeBSD 7.0. A start is to add the line USE_GCC= 3.4 in the appropriate place in the Makefile, but then it becomes clear that some additional change is needed to stlport/config/stl_gcc.h. This file is the most convoluted mess of #if's I have ever seen. The attached patch works on my particular system, but clearly it is a fudge and won't be universal to other situations. Is anyone working on this? If not, would you guys be kind enough to make my patch more proper? Thanks, Stephen --------------090900050108000702010709 Content-Type: text/plain; name="patch-stlport::config::stl_gcc.h" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="patch-stlport::config::stl_gcc.h" --- stlport/config/stl_gcc.h.orig 2003-11-02 02:59:11.000000000 -0600 +++ stlport/config/stl_gcc.h 2007-11-18 20:45:20.000000000 -0600 @@ -7,11 +7,20 @@ # define _STLP_USE_GLIBC #endif +#if !defined(__FreeBSD__) || (defined(__FreeBSD__) && (__FreeBSD_cc_version < 530001)) # define _STLP_NO_MEMBER_TEMPLATE_KEYWORD +#endif + -# if defined(__FreeBSD__) || defined (__hpux) || defined(__amigaos__) || ( defined(__OS2__) && defined(__EMX__) ) +#if defined (__hpux) || defined(__amigaos__) || ( defined(__OS2__) && defined(__EMX__) ) +# define _STLP_NO_WCHAR_T +#elif defined(__FreeBSD__) +# if (__FreeBSD_cc_version < 500005) # define _STLP_NO_WCHAR_T -# endif +# else +# define _STLP_FREEBSD_HAS_WFUNCS +# endif /* __FreeBSD_cc_version < 500005 */ +#endif #ifdef __USLC__ # include <config/stl_sco.h> @@ -81,7 +90,7 @@ # endif -#if defined (__CYGWIN__) || defined (__MINGW32__) || !(defined (_STLP_USE_GLIBC) || defined (__sun)) +#if defined (__CYGWIN__) || defined (__MINGW32__) || !(defined (_STLP_USE_GLIBC) || defined (_STLP_FREEBSD_HAS_WFUNCS) || defined (__sun)) #ifndef __MINGW32__ # define _STLP_NO_NATIVE_MBSTATE_T 1 #endif @@ -267,12 +276,15 @@ # define _STLP_NATIVE_INCLUDE_PATH ../g++-v3 # define _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH ../g++-v3/backward # else -# if defined(__GNUC_PATCHLEVEL__) && (__GNUC_PATCHLEVEL__ > 0) +# if defined(__GNUC_PATCHLEVEL__) && (__GNUC_PATCHLEVEL__ > 0) && !defined(__FreeBSD__) # define _STLP_NATIVE_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__ # define _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__/backward # else -# define _STLP_NATIVE_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__ -# define _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__/backward +# define tempi386 i386 +# undef i386 +# define _STLP_NATIVE_INCLUDE_PATH /usr/local/lib/gcc/i386-portbld-freebsd7.0/3.4.6/include/c++ +# define _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH /usr/local/lib/gcc/i386-portbld-freebsd7.0/3.4.6/include/c++ +# define i386 tempi386 # endif # endif @@ -371,6 +383,6 @@ # define _STLP_STATIC_TEMPLATE_DATA 1 # endif - +#define _STLP_NO_MEMBER_TEMPLATE_CLASSES --------------090900050108000702010709--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4740FB72.5010206>