Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Sep 2015 15:19:19 +0000 (UTC)
From:      Don Lewis <truckman@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r396278 - in head/editors/openoffice-4: . files
Message-ID:  <201509071519.t87FJJ82098685@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: truckman
Date: Mon Sep  7 15:19:18 2015
New Revision: 396278
URL: https://svnweb.freebsd.org/changeset/ports/396278

Log:
  Import various improvements from openoffice-devel r393676, r395652, and
  r396247:
  
   * Consolidate patch-freebsd.mk, patch-set_soenv.in, patch-unxfbsd.mk,
     and other changes that were committed to the upstream trunk
     into patch-build-framework:
  
     o Changes to aid building with gcc from ports on FreeBSD
  
     o Changes to detect when building with clang and to decode the
       compiler version
  
   * Remove the REINPLACE_CMD patches from post-patch and $FBSD_LDFLAGS
     from do-build that are no longer needed for building with gcc in
     the general case because of the previous patch
  
   * Disable optimization when compiling one source file with clang 3.4
     to avoid tripping on a compiler code generation bug.  This allows
     us to build with clang 3.4 from base on FreeBSD 10, so remove
     the dependency on clang 3.5.
  
   * Fine tune compiler optimization flags when using clang 3.6 on
     FreeBSD 11 i386 or gcc 4.9 instead of totally disabling
     optimization
  
   * Unbreak the build with gcc 4.9 on amd64
  
   * Makefile cleanups without functional change:
  
     o Combine two .if ${ARCH} == amd64 sections of Makefile
  
     o Merge the pre-configure target into post-extract
  
     o Simplify the code in the do-build target
  
     o Sort USE_XORG
  
   * Replace the default images in the opening splash window and the
     Help->About window with FreeBSD-branded versions.  Thanks to pfg
     for suggesting this and reviewing the new images.

Added:
  head/editors/openoffice-4/files/freebsd-aoo-about.png   (contents, props changed)
  head/editors/openoffice-4/files/freebsd-aoo-intro.png   (contents, props changed)
  head/editors/openoffice-4/files/patch-build_framework   (contents, props changed)
  head/editors/openoffice-4/files/patch-testtools_source_bridgetest_bridgetest.cxx   (contents, props changed)
Deleted:
  head/editors/openoffice-4/files/patch-freebsd.mk
  head/editors/openoffice-4/files/patch-set_soenv.in
  head/editors/openoffice-4/files/patch-unxfbsd.mk
Modified:
  head/editors/openoffice-4/Makefile

Modified: head/editors/openoffice-4/Makefile
==============================================================================
--- head/editors/openoffice-4/Makefile	Mon Sep  7 15:13:37 2015	(r396277)
+++ head/editors/openoffice-4/Makefile	Mon Sep  7 15:19:18 2015	(r396278)
@@ -3,7 +3,7 @@
 
 PORTNAME=	apache-openoffice
 PORTVERSION=	${AOOVERSION}
-PORTREVISION=	11
+PORTREVISION=	12
 CATEGORIES=	editors java
 MASTER_SITES=	APACHE/openoffice/${PORTVERSION}/source \
 		http://tools.openoffice.org/unowinreg_prebuild/680/:unoreg \
@@ -120,8 +120,8 @@ JAVA_BUILD=	jdk
 JAVA_VENDOR=	openjdk
 JAVA_VERSION=	1.6+
 USE_PERL5=	build
-USE_XORG=	x11 ice xaw xau xext xrender xrandr \
-		xi xt xcursor xdamage xcomposite xfixes
+USE_XORG=	ice x11 xau xaw xcomposite xcursor xdamage xext xfixes xi \
+		xrandr xrender xt
 USES=		autoreconf:autoconf bison compiler cpe desktop-file-utils \
 		gettext-runtime gmake iconv jpeg perl5 pkgconfig python \
 		tar:bzip2
@@ -156,12 +156,6 @@ MMEDIA_USE=			GSTREAMER=yes
 .include <${FILESDIR}/Makefile.localized>
 
 .if ${COMPILER_TYPE} == clang
-. if ${COMPILER_VERSION} < 35 && ${ARCH} == amd64
-BUILD_DEPENDS+=		clang35:${PORTSDIR}/lang/clang35
-CPP=			clang-cpp35
-CC=			clang35
-CXX=			clang++35
-. endif
 CPPFLAGS+=		-I${LOCALBASE}/include
 .else
 USE_GCC=		yes
@@ -170,19 +164,14 @@ SUBST=			"s/-fexceptions/& -fno-enforce-
 
 .if ${ARCH} == amd64
 FREEBSD_ENV_SET=	FreeBSDAMDEnv.Set.sh
+PACKAGE_MIDDLE=		${PORTVERSION}_${OPSYS}_x86-64
 .else
 FREEBSD_ENV_SET=	FreeBSDX86Env.Set.sh
+PACKAGE_MIDDLE=		${PORTVERSION}_${OPSYS}_x86
 .endif
-
-LOCALIZED_LANG?=	en-US
-
 PACKAGE_PREFIX=		Apache_OpenOffice
 
-.if ${ARCH} == amd64
-PACKAGE_MIDDLE=		${PORTVERSION}_${OPSYS}_x86-64
-.else
-PACKAGE_MIDDLE=		${PORTVERSION}_${OPSYS}_x86
-.endif
+LOCALIZED_LANG?=	en-US
 
 .if ${PORT_OPTIONS:MCCACHE} || defined(WITH_CCACHE)
 BUILD_DEPENDS+=	ccache:${PORTSDIR}/devel/ccache
@@ -293,7 +282,10 @@ pre-everything::
 post-extract:
 	${TAR} -C ${WRKSUBDIR} -xzf ${DISTDIR}/${DIST_SUBDIR}/${EXTSRC}
 	${CP} ${DISTDIR}/${DIST_SUBDIR}/unowinreg.dll ${WRKSRC}/external/unowinreg/
+	${CP} ${FILESDIR}/freebsd-aoo-intro.png ${WRKSRC}/default_images/introabout/intro.png
+	${CP} ${FILESDIR}/freebsd-aoo-about.png ${WRKSRC}/default_images/introabout/about.png
 	${RM} -rf ${WRKSRC}/l10n
+	${LN} -sf ${UNZIP_CMD} ${WRKSRC}/solenv/bin/unzip
 	${SED}  -e '\|^For main/vcl/unx/generic/fontmanager/parseAFM|,/^__/p' \
 		-e '\|^For PostScript(R) AFM|,/^__/p'			\
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_ADOBE}
@@ -324,27 +316,28 @@ post-extract:
 		-e d  ${WRKSRC}/LICENSE > ${LICENSE_FILE_W3C}
 
 post-patch:
-.if defined (USE_GCC)
-	${REINPLACE_CMD} -e ${SUBST} ${WRKSRC}/solenv/gbuild/platform/freebsd.mk
-	${REINPLACE_CMD} -e ${SUBST} ${WRKSRC}/solenv/inc/unxfbsd.mk
-.endif
-.if ${ARCH} == i386
-	# g++49 -Os sometimes leaves inline class methods undefined
-	# autodoc core dumps when built with with -Os clang 3.6 on i386
-	if [ ${CXX} = g++49 -o \
-	     ${COMPILER_TYPE} = clang -a ${COMPILER_VERSION} = 36 ]; then \
-		${REINPLACE_CMD} -e "s/ := -Os/ := -O0/" ${WRKSRC}/solenv/gbuild/platform/freebsd.mk; \
-		${REINPLACE_CMD} -e "s/=-Os /=-O0 /" ${WRKSRC}/solenv/inc/unxfbsdi.mk; \
+.if ${COMPILER_TYPE} == gcc
+	# g++49 -Os sometimes leaves inline class methods undefined,
+	# affects fmgridif.cxx and ColumnControl.cxx
+	# See: <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65009>;
+	if [ ${CXX} = g++49  ]; then \
+		${REINPLACE_CMD} -e "s/ := -Os/ := -Os -fno-devirtualize -fno-devirtualize-speculatively/" ${WRKSRC}/solenv/gbuild/platform/freebsd.mk; \
+		${REINPLACE_CMD} -e "s/=-Os /=-Os -fno-devirtualize -fno-devirtualize-speculatively /" ${WRKSRC}/solenv/inc/unxfbsdi.mk; \
 	fi
+.elif ${ARCH} == i386 && ${COMPILER_TYPE} == clang && ${COMPILER_VERSION} == 36
+	# autodoc and uno (bridgetest) core dump when built with with -Os
+	# on i386, affects file.cxx and bridgetest.cxx
+	# Using -O2 optimiztion works, and -Os is essentially -O2 with out
+	# loop unrolling.
+	# Changing optimization in just unxfbsdi.mk is sufficient to get
+	# a successful build, but change it in both places to avoid the
+	# possibility of obscure runtime problems.
+	${REINPLACE_CMD} -e "s/=-Os /=-O2 -fno-unroll-loops /" ${WRKSRC}/solenv/inc/unxfbsdi.mk
+	${REINPLACE_CMD} -e "s/ := -Os/ := -O2 -fno-unroll-loops/" ${WRKSRC}/solenv/gbuild/platform/freebsd.mk
 .endif
 
-pre-configure:
-	${LN} -sf ${UNZIP_CMD} ${WRKSRC}/solenv/bin/unzip
-
 do-build:
-	cd ${WRKSUBDIR} ; ${PRINTF} "[repositories]\n" > source_config
-	cd ${WRKSUBDIR} ; ${PRINTF} "main=active\n" >> source_config
-	cd ${WRKSUBDIR} ; ${PRINTF} "extras=active\n" >> source_config
+	${PRINTF} "[repositories]\nmain=active\nextras=active\n" > ${WRKSUBDIR}/source_config
 	cd ${WRKSRC} ; ./bootstrap
 	#
 	# numproc controls the number of parallel makes.
@@ -361,27 +354,27 @@ do-build:
 	#  * dmproc >= numproc
 	#  * dmproc <= 2*numproc if MAKE_JOBS_NUMBER <= 3
 	#
-	cd ${WRKSRC} ; . ${FREEBSD_ENV_SET} ; cd instsetoo_native/util ;  \
-	 export LANG=C LC_ALL=C FBSD_LDFLAGS="${LDFLAGS}" ;		  \
-	 if [ ${MAKE_JOBS_NUMBER} -le 3 ] ; then			  \
-	  numproc=1 ; dmproc=${MAKE_JOBS_NUMBER} ;			  \
+	if [ ${MAKE_JOBS_NUMBER} -le 3 ] ; then				  \
+	 numproc=1 ; dmproc=${MAKE_JOBS_NUMBER} ;			  \
+	else								  \
+	 a=1 ;								  \
+	 while [ $$(( 2 * $${a} * $${a} )) -lt ${MAKE_JOBS_NUMBER} ]; do  \
+	  a=$$(( $${a} + 1 )) ;						  \
+	 done ;								  \
+	 b=$$(( $${a} + 1 )) ;						  \
+	 ad=$$(( ( ${MAKE_JOBS_NUMBER} + $${a} - 1 ) / $${a} )) ;	  \
+	 ap=$$(( $${a} * $${ad} )) ;					  \
+	 bd=$$(( ( ${MAKE_JOBS_NUMBER} + $${b} - 1 ) / $${b} )) ;	  \
+	 bp=$$(( $${b} * $${bd} )) ;					  \
+	 if [ $${ap} -le $${bp} ]; then					  \
+	  numproc=$${a} ; dmproc=$${ad} ;				  \
 	 else								  \
-	  a=1 ;								  \
-	  while [ $$(( 2 * $${a} * $${a} )) -lt ${MAKE_JOBS_NUMBER} ]; do \
-	   a=$$(( $${a} + 1 )) ;					  \
-	  done ;							  \
-	  b=$$(( $${a} + 1 )) ;						  \
-	  ad=$$(( ( ${MAKE_JOBS_NUMBER} + $${a} - 1 ) / $${a} )) ;	  \
-	  ap=$$(( $${a} * $${ad} )) ;					  \
-	  bd=$$(( ( ${MAKE_JOBS_NUMBER} + $${b} - 1 ) / $${b} )) ;	  \
-	  bp=$$(( $${b} * $${bd} )) ;					  \
-	  if [ $${ap} -le $${bp} ]; then				  \
-	   numproc=$${a} ; dmproc=$${ad} ;				  \
-	  else								  \
-	   numproc=$${b} ; dmproc=$${bd} ;				  \
-	  fi ;								  \
+	  numproc=$${b} ; dmproc=$${bd} ;				  \
 	 fi ;								  \
-	 build.pl --all -P$${numproc} -- -P$${dmproc}
+	fi ;								  \
+	cd ${WRKSRC}/instsetoo_native ;					  \
+	. ../${FREEBSD_ENV_SET} ; 					  \
+	LANG=C LC_ALL=C build.pl --all -P$${numproc} -- -P$${dmproc}
 
 do-install:
 	cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/Apache_OpenOffice/archive/install/${LOCALIZED_LANG}/ ; ${LS} *.tar.?z > ${WRKDIR}/INSTALLFILES

Added: head/editors/openoffice-4/files/freebsd-aoo-about.png
==============================================================================
Binary file. No diff available.

Added: head/editors/openoffice-4/files/freebsd-aoo-intro.png
==============================================================================
Binary file. No diff available.

Added: head/editors/openoffice-4/files/patch-build_framework
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/editors/openoffice-4/files/patch-build_framework	Mon Sep  7 15:19:18 2015	(r396278)
@@ -0,0 +1,343 @@
+--- bridges/source/cpp_uno/gcc3_freebsd_intel/makefile.mk.orig	2014-02-25 08:29:00 UTC
++++ bridges/source/cpp_uno/gcc3_freebsd_intel/makefile.mk
+@@ -34,7 +34,7 @@ ENABLE_EXCEPTIONS=TRUE
+ 
+ # --- Files --------------------------------------------------------
+ 
+-.IF "$(COM)$(OS)$(CPU)$(COMNAME)" == "GCCFREEBSDIgcc3"
++.IF "$(OS)$(CPU)$(COMNAME)" == "FREEBSDIgcc3"
+ 
+ .IF "$(cppu_no_leak)" == ""
+ CFLAGS += -DLEAK_STATIC_DATA
+--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/makefile.mk.orig	2014-02-25 08:29:00 UTC
++++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/makefile.mk
+@@ -34,7 +34,7 @@ ENABLE_EXCEPTIONS=TRUE
+ 
+ # --- Files --------------------------------------------------------
+ 
+-.IF "$(COM)$(OS)$(CPU)$(COMNAME)" == "GCCFREEBSDXgcc3"
++.IF "$(OS)$(CPU)$(COMNAME)" == "FREEBSDXgcc3"
+ 
+ .IF "$(cppu_no_leak)" == ""
+ CFLAGS += -DLEAK_STATIC_DATA
+--- configure.in.orig	2014-02-25 08:19:25 UTC
++++ configure.in
+@@ -1679,6 +1679,23 @@ if test "$_os" != "WINNT" -o "$WITH_MING
+    AC_PROG_CC
+ fi
+ 
++if test "$_os" = "FreeBSD"; then
++    FBSD_GCC_RPATH=
++    if $CC --version 2>&1 | grep clang > /dev/null ; then
++        COM_IS=CLANG
++    else
++        COM_IS=GCC
++        rpath=`$CC --print-file-name libstdc++.so`
++        rpath=`realpath $rpath`
++        rpath=`dirname $rpath`
++	if test "$rpath" != "/usr/lib" ; then
++            FBSD_GCC_RPATH="-Wl,-rpath=$rpath"
++	fi
++    fi
++    AC_SUBST(COM_IS)
++    AC_SUBST(FBSD_GCC_RPATH)
++fi
++
+ COMPATH=`dirname "$CC"`
+ if test "$COMPATH" = "." ; then
+     AC_PATH_PROGS(COMPATH, $CC)
+@@ -6817,6 +6834,18 @@ dnl ====================================
+ SYSTEM_GETTEXT=YES
+ AC_SUBST(SYSTEM_GETTEXT)
+ 
++if test "$_os" = "FreeBSD"; then
++    LIBINTL_PREFIX=
++    for dir in $CPPFLAGS; do
++      if dir=`expr -- $dir : '-I\(.*\)'`; then
++        if test -f "$dir/libintl.h" ; then
++          LIBINTL_PREFIX=`dirname $dir`
++        fi
++      fi
++    done
++    AC_SUBST(LIBINTL_PREFIX)
++fi
++
+ dnl ===================================================================
+ dnl always rely on the system version of pango
+ dnl ===================================================================
+--- connectivity/source/drivers/dbase/makefile.mk.orig	2014-02-25 08:22:58 UTC
++++ connectivity/source/drivers/dbase/makefile.mk
+@@ -76,7 +76,9 @@ EXCEPTIONSFILES=\
+ 	$(SLO)$/DDriver.obj
+ 
+ # [kh] ppc linux gcc compiler problem
+-.IF "$(OS)$(COM)$(CPUNAME)"=="LINUXGCCPOWERPC"
++# [Don Lewis] clang 3.4 -O2 on amd64 tries to use R_X86_64_PC32 relocation with
++#             symbol _ZThn192_N12connectivity4file10OFileTable7acquireEvj
++.IF "$(OS)$(COM)$(CPUNAME)"=="LINUXGCCPOWERPC" || ("$(OS)$(COM)$(CPUNAME)"=="FREEBSDCLANGX86_64" && $(CCNUMVER)>=000300040000 && $(CCNUMVER)<000300050000)
+ EXCEPTIONSNOOPTFILES= \
+ 	$(SLO)$/DTable.obj
+ .ELSE
+--- graphite/makefile.mk.orig	2014-02-25 08:21:04 UTC
++++ graphite/makefile.mk
+@@ -92,7 +92,7 @@ CFLAGS4MSC= $(CFLAGS2MSC:s/ -/ $(JUSTASL
+ BUILD_FLAGS+= "CFLAGS4MSC=$(CFLAGS4MSC)" /F makefile.vc$(VCNUM) lib_dll
+ .ENDIF
+ 
+-.IF "$(COM)"=="GCC"
++.IF "$(COM)"=="GCC" || "$(OS)"=="FREEBSD"
+ 
+ # Does linux want --disable-shared?
+ .IF "x$(debug)"!="x"
+@@ -137,7 +137,7 @@ OUT2LIB=engine$/release$/*.lib
+ OUT2LIB=engine$/src$/.libs$/libgraphite*.a
+ .ENDIF
+ 
+-.IF "$(COM)"=="GCC"
++.IF "$(COM)"=="GCC" || "$(OS)"=="FREEBSD"
+ BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS)
+ .ENDIF
+ 
+--- set_soenv.in.orig	2014-06-06 06:58:10 UTC
++++ set_soenv.in
+@@ -358,8 +358,8 @@ elsif ( $platform =~ m/kfreebsd/ ) 
+ }
+ elsif ( $platform =~ m/freebsd/ ) 
+ {     $BIG_SVX        = "TRUE";
+-      $COM            = "GCC";
+-      $COMPATH        = '@COMPATH@'; 
++      $COM            = "@COM_IS@";
++      $COMPATH        = '@COMPATH@' . '/bin'; 
+       $CVER           = "C300";
+       $GUI            = "UNX";
+       $GUIBASE        = "unx";
+@@ -1680,6 +1680,11 @@ if ( $platform =~ m/darwin/ )
+     ToFile( "MACOSX_DEPLOYMENT_TARGET",       "@MACOSX_DEPLOYMENT_TARGET@",       "e" );
+     ToFile( "MACOSX_SDK_PATH",       "@MACOSX_SDK_PATH@",       "e" );
+ }
++if ( $platform =~ m/freebsd/ )
++{
++    ToFile( "FBSD_GCC_RPATH",       "@FBSD_GCC_RPATH@", "e" );
++    ToFile( "LIBINTL_PREFIX",       "@LIBINTL_PREFIX@", "e" );
++}
+ 
+ #
+ # Writing the variables to file.
+@@ -2575,26 +2580,37 @@ sub GetCorrectPath
+ 	my @originalPairs = @_;
+ 	my @pairs = @originalPairs;
+ 	my @Path = split /$ps/, $oldPath;
++	my @buildPath;
++	my @sysPath;
++	my $elem;
++
++	for $elem (@Path) {
++	    if ($elem eq '.' || $elem =~ m'^$SOLARENV/' ||
++		$elem =~ m'/solenv/') {
++		    push @buildPath, $elem;
++	    } else {
++		    push @sysPath, $elem;
++	    }
++	}
+ 
+ 	while (@pairs) {
+ 	    my $path = shift @pairs;
+ 	    my $cmd = shift @pairs;
+ 	    my $to_append = 1;
+-	    my $elem;
+ 
+ 	    if (! -x "$path/$cmd") {
+ 		AddWarning ("Missing executable $path/$cmd\n");
+ 	    }
+ 
+-	    for $elem (@Path) {
++	    for $elem (@sysPath) {
+ 		if ($elem eq $path) {
+ #		    print "Hit duplicate path in path; break\n";
+ 		    $to_append = 0;
+ 		    last;
+ 		}
+-		if (-f "$elem/$cmd") {
++		if (-f "$elem/$cmd" && ! -l "$elem/$cmd") {
+ #		    print "Element already in path ...\n";
+-		    unshift @Path, $path;
++		    unshift @sysPath, $path;
+ 		    $to_append = 0;
+ 		    last;
+ 		} else {
+@@ -2602,7 +2618,7 @@ sub GetCorrectPath
+ 		}
+ 	    }
+ 	    if ($to_append) {
+-		push @Path, $path;
++		push @sysPath, $path;
+ 	    }
+ 	}
+ 
+@@ -2612,14 +2628,14 @@ sub GetCorrectPath
+ 	    my $cmd = shift @pairs;
+ 	    my $realpath;
+ 
+-	    $realpath = PathLookup ($cmd, @Path);
++	    $realpath = PathLookup ($cmd, @sysPath);
+ 	    if (!($realpath eq $path)) {
+ 		AddWarning ("Path conflict for executables " .
+                             "$path/$cmd against $realpath");
+ 	    }
+ 	}
+ 
+-	return join $ps, CleanupPath (@Path);
++	return join $ps, @buildPath, CleanupPath (@sysPath);
+ }
+ 
+ #------------------------------------------------------------
+--- solenv/gbuild/platform/freebsd.mk.orig	2014-02-25 08:33:29 UTC
++++ solenv/gbuild/platform/freebsd.mk
+@@ -20,7 +20,6 @@
+ #*************************************************************************
+ 
+ GUI := UNX
+-COM := GCC
+ 
+ # BSD mktemp -t expects a prefix, not a pattern
+ gb_MKTEMP ?= /usr/bin/mktemp -t gbuild.
+@@ -95,7 +94,12 @@ gb_CXXFLAGS := \
+ 	-fno-use-cxa-atexit \
+ 	-fvisibility-inlines-hidden \
+ 	-fvisibility=hidden \
+-	-pipe \
++	-pipe
++ifeq ($(COM),CLANG)
++gb_CXXFLAGS += -DHAVE_STL_INCLUDE_PATH
++else
++gb_CXXFLAGS += -DBOOST_TR1_DISABLE_INCLUDE_NEXT -DBOOST_TR1_GCC_INCLUDE_PATH=c++
++endif
+ 
+ ifneq ($(EXTERNAL_WARNINGS_NOT_ERRORS),TRUE)
+ gb_CFLAGS_WERROR := -Werror
+@@ -109,8 +113,10 @@ gb_LinkTarget_LDFLAGS := -Wl,--sysroot=$
+ endif
+ gb_LinkTarget_EXCEPTIONFLAGS := \
+ 	-DEXCEPTIONS_ON \
+-	-fexceptions \
+-	-fno-enforce-eh-specs \
++	-fexceptions
++ifeq ($(COM),GCC)
++gb_LinkTarget_EXCEPTIONFLAGS +=  -fno-enforce-eh-specs
++endif
+ 
+ gb_LinkTarget_NOEXCEPTIONFLAGS := \
+ 	-DEXCEPTIONS_OFF \
+@@ -121,6 +127,7 @@ gb_LinkTarget_LDFLAGS += \
+ 	-Wl,-z,combreloc \
+ 	-Wl,-z,defs \
+ 	$(subst -L../lib , ,$(SOLARLIB)) \
++	${FBSD_GCC_RPATH} \
+ 	 \
+ 
+ ifeq ($(HAVE_LD_HASH_STYLE),TRUE)
+--- solenv/inc/tg_compv.mk.orig	2014-02-25 08:33:36 UTC
++++ solenv/inc/tg_compv.mk
+@@ -37,6 +37,12 @@ CFLAGSNUMVERSION_CMD=-dumpversion $(PIPE
+ #CFLAGSNUMVERSION_CMD=-dumpversion | 2>&1  $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk
+ .ENDIF
+ 
++.IF "$(COM)"=="CLANG" && "$(OS)"="FREEBSD"
++CFLAGSVERSION=--version
++CFLAGSVERSION_CMD=--version | head -n1 | sed -e"s/.*version //" -e"s/ .*//"
++CFLAGSNUMVERSION_CMD=${CFLAGSVERSION_CMD} | $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk
++.ENDIF
++
+ .IF "$(COM)"=="MSC"
+ CFLAGSVERSION=
+ CFLAGSVERSION_CMD=  $(PIPEERROR) $(AWK) -f $(SOLARENV)/bin/getcompver.awk
+@@ -130,9 +136,14 @@ COMNAME=MipsPro
+ .ENDIF
+ 
+ .IF "$(COM)"=="CLANG"
++.IF "$(OS)" == "FREEBSD"
++COMID=gcc3
++COMNAME=gcc3
++.ELSE
+ COMID=s5abi
+ COMNAME=s5abi
+ .ENDIF
++.ENDIF
+ 
+ .IF "$(COMNAME)"==""
+ 
+--- solenv/inc/unx.mk.orig	2014-02-25 08:33:36 UTC
++++ solenv/inc/unx.mk
+@@ -139,7 +139,7 @@
+ .INCLUDE : unxbsds.mk
+ .ENDIF
+ 
+-.IF "$(COM)$(OS)" == "GCCFREEBSD"
++.IF "$(OS)" == "FREEBSD"
+ .INCLUDE : unxfbsd.mk
+ .ENDIF
+ 
+--- solenv/inc/unxfbsd.mk.orig	2014-02-25 08:33:35 UTC
++++ solenv/inc/unxfbsd.mk
+@@ -27,7 +27,7 @@ ASM=
+ AFLAGS=
+ 
+ SOLAR_JAVA*=
+-PICSWITCH*:=-fpic
++PICSWITCH*:=-fPIC
+ JAVAFLAGSDEBUG=-g
+ 
+ # Include arch specific makefile.
+@@ -44,6 +44,11 @@ JAVAFLAGSDEBUG=-g
+ 
+ # _PTHREADS is needed for the stl
+ CDEFS+=$(PTHREAD_CFLAGS) -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=450
++.IF "$(COM)"=="CLANG"
++CDEFS+=-DHAVE_STL_INCLUDE_PATH
++.ELSE
++CDEFS+=-DBOOST_TR1_DISABLE_INCLUDE_NEXT -DBOOST_TR1_GCC_INCLUDE_PATH=c++
++.ENDIF
+ 
+ # enable visibility define in "sal/types.h"
+ .IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+@@ -82,7 +87,11 @@ CFLAGSENABLESYMBOLS=-g # was temporarily
+ # flags for the C++ Compiler
+ CFLAGSCC= -pipe $(ARCH_FLAGS) 
+ # Flags for enabling exception handling
++.IF "$(COM)"=="CLANG"
++CFLAGSEXCEPTIONS=-fexceptions
++.ELSE
+ CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
++.ENDIF
+ # Flags for disabling exception handling
+ CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+ 
+@@ -193,11 +202,11 @@ STDSHLCUIMT+=-ltcmalloc
+ .ENDIF
+ 
+ # libraries for linking applications
+-STDLIBGUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
+-STDLIBCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
++STDLIBGUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed ${FBSD_GCC_RPATH}
++STDLIBCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed ${FBSD_GCC_RPATH}
+ # libraries for linking shared libraries
+-STDSHLGUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
+-STDSHLCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed
++STDSHLGUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed ${FBSD_GCC_RPATH}
++STDSHLCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed ${FBSD_GCC_RPATH}
+ 
+ X11LINK_DYNAMIC = -Wl,--as-needed -lXext -lX11 -Wl,--no-as-needed
+ 
+--- testtools/source/bridgetest/makefile.mk.orig	2014-02-25 08:19:34 UTC
++++ testtools/source/bridgetest/makefile.mk
+@@ -134,8 +134,8 @@ ALLTAR: \
+ 
+ runtest : $(DLLDEST)$/uno_types.rdb $(DLLDEST)$/uno_services.rdb makefile.mk \
+         $(SHL1TARGETN) $(SHL2TARGETN) $(SHL3TARGETN)
+-.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXP" || "$(COM)$(OS)$(CPU)" == "GCCFREEBSDI" || "$(OS)$(CPU)"=="SOLARISS"
+-	@echo "Mac OSX PPC GCC ad FreeBDS/i386 fails this test! likely broken UNO bridge. Fix me."
++.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXP" || "$(OS)$(CPU)"=="SOLARISS"
++	@echo "Mac OSX PPC GCC and Solaris fails this test! likely broken UNO bridge. Fix me."
+ .ELSE
+         cd $(DLLDEST) && $(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/uno \
+ 		-ro uno_services.rdb -ro uno_types.rdb \

Added: head/editors/openoffice-4/files/patch-testtools_source_bridgetest_bridgetest.cxx
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/editors/openoffice-4/files/patch-testtools_source_bridgetest_bridgetest.cxx	Mon Sep  7 15:19:18 2015	(r396278)
@@ -0,0 +1,16 @@
+--- testtools/source/bridgetest/bridgetest.cxx.orig	2014-02-25 08:19:34 UTC
++++ testtools/source/bridgetest/bridgetest.cxx
+@@ -544,7 +544,12 @@ static sal_Bool performTest(
+             } catch (...) {
+                 bRet &= check(false, "getRaiseAttr2 threw wrong type");
+             }
+-#ifndef OS2 // see i120310 for details
++#if !defined(OS2) && !(defined(FREEBSD) && defined(INTEL))
++// see i120310 for OS2 details
++// FreeBSD i386 coredumps on this test in cpp_vtable_call():
++//  pTypeDescr appears to point to garbage, pMapFunctionIndexToMemberIndex
++//  points to unreadable memory, as does abase.pTypeName.  Refcounts
++//  don't look reasonable, etc.
+             // Test instantiated polymorphic struct types:
+             {
+                 bRet &= check(



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201509071519.t87FJJ82098685>