svn commit: r312189 - in head/editors/libreoffice: . files

Jung-uk Kim jkim at FreeBSD.org
Thu Feb 14 01:28:38 UTC 2013


Author: jkim
Date: Thu Feb 14 01:28:36 2013
New Revision: 312189
URL: http://svnweb.freebsd.org/changeset/ports/312189

Log:
  - Consistently use clang to build LibreOffice.  It works fine now.
  - Speed up patching a little.

Added:
  head/editors/libreoffice/files/patch-odk__settings__settings.mk   (contents, props changed)
  head/editors/libreoffice/files/patch-solenv__gbuild__platform__unxgcc.mk   (contents, props changed)
  head/editors/libreoffice/files/patch-solenv__inc__unxgcc.mk   (contents, props changed)
Modified:
  head/editors/libreoffice/Makefile

Modified: head/editors/libreoffice/Makefile
==============================================================================
--- head/editors/libreoffice/Makefile	Thu Feb 14 00:32:34 2013	(r312188)
+++ head/editors/libreoffice/Makefile	Thu Feb 14 01:28:36 2013	(r312189)
@@ -358,12 +358,6 @@ CONFIGURE_ARGS+=	--enable-release-build
 
 .include <bsd.port.pre.mk>
 
-# if compiled with clang on 8.x libreoffice exits with the following error:
-# terminate called after throwing an instance of 'com::sun::star::ucb::InteractiveAugmentedIOException'
-.if ${OSVERSION} < 900000
-WITH_GCC=	yes
-.endif
-
 .if defined(WITH_GCC)
 USE_GCC=	4.6+
 DISTFILES+=	bd30e9cf5523cdfc019b94f5e1d7fd19-cppunit-1.12.1.tar.gz:ext
@@ -376,8 +370,7 @@ CXX=		/usr/bin/clang++
 CONFIGURE_ENV+=	CXXCPP="${CPP}"
 .else
 # XXX Clang PR13308 (http://llvm.org/bugs/show_bug.cgi?id=13308)
-BUILD_DEPENDS+=	clang-devel>=3.2.r159895:${PORTSDIR}/lang/clang-devel
-USE_BINUTILS=	yes
+BUILD_DEPENDS+=	clang>=3.2:${PORTSDIR}/lang/clang
 CC=		${LOCALBASE}/bin/clang
 CPP=		${CC} -E
 CXX=		${LOCALBASE}/bin/clang++
@@ -408,16 +401,8 @@ post-extract:
 .endfor
 	@${TOUCH} ${WRKSRC}/clone/repos_changed
 
-post-patch:
-	@${FIND} ${WRKSRC} -type f -print0 | \
-	    ${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's#-Wl,-rpath,#-Wl,-z,origin,-rpath,#g'
-.if ${CC} == /usr/bin/clang && ${OSVERSION} < 900506
-#Visibility is broken with clang
-	@${REINPLACE_CMD} -e "s|HAVE_GCC_VISIBILITY_FEATURE=TRUE|HAVE_GCC_VISIBILITY_FEATURE=|g" \
-		${WRKSRC}/configure.in
-.endif
-
 .if ${PORT_OPTIONS:MJAVA}
+post-patch:
 	@${REINPLACE_CMD} -e 's/^ANT_OPT/#ANT_OPT/g' \
 		${WRKSRC}/apache-commons/java/codec/makefile.mk \
 		${WRKSRC}/apache-commons/java/httpclient/makefile.mk \

Added: head/editors/libreoffice/files/patch-odk__settings__settings.mk
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/editors/libreoffice/files/patch-odk__settings__settings.mk	Thu Feb 14 01:28:36 2013	(r312189)
@@ -0,0 +1,11 @@
+--- ./odk/settings/settings.mk.orig	2013-01-16 04:41:51.000000000 -0500
++++ ./odk/settings/settings.mk	2013-02-12 20:53:11.000000000 -0500
+@@ -566,7 +566,7 @@
+ 
+ CC_OUTPUT_SWITCH=-o
+ 
+-LIBRARY_LINK_FLAGS=-shared '-Wl,-rpath,$$ORIGIN'
++LIBRARY_LINK_FLAGS=-shared '-Wl,-z,origin,-rpath,$$ORIGIN'
+ COMP_LINK_FLAGS=$(LIBRARY_LINK_FLAGS)
+ 
+ EXE_LINK_FLAGS=-Wl,--allow-shlib-undefined 

Added: head/editors/libreoffice/files/patch-solenv__gbuild__platform__unxgcc.mk
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/editors/libreoffice/files/patch-solenv__gbuild__platform__unxgcc.mk	Thu Feb 14 01:28:36 2013	(r312189)
@@ -0,0 +1,20 @@
+--- ./solenv/gbuild/platform/unxgcc.mk.orig	2013-01-16 04:41:51.000000000 -0500
++++ ./solenv/gbuild/platform/unxgcc.mk	2013-02-12 20:48:19.000000000 -0500
+@@ -297,7 +297,7 @@
+ 	$(foreach lib,$(gb_Library_EXTENSIONLIBS),$(lib):OXT) \
+ 
+ define gb_Library__get_rpath
+-$(if $(1),$(strip '-Wl,-rpath,$(1)' '-Wl,-rpath-link,$(gb_Library_OUTDIRLOCATION)'))
++$(if $(1),$(strip '-Wl,-z,origin,-rpath,$(1)' '-Wl,-rpath-link,$(gb_Library_OUTDIRLOCATION)'))
+ endef
+ 
+ define gb_Library_get_rpath
+@@ -338,7 +338,7 @@
+ 
+ 
+ define gb_Executable_get_rpath
+-'-Wl,-rpath,$(call gb_LinkTarget__get_rpath_for_layer,$(call gb_Executable_get_layer,$(1)))' \
++'-Wl,-z,origin,-rpath,$(call gb_LinkTarget__get_rpath_for_layer,$(call gb_Executable_get_layer,$(1)))' \
+ -Wl,-rpath-link,$(gb_Library_OUTDIRLOCATION)
+ endef
+ 

Added: head/editors/libreoffice/files/patch-solenv__inc__unxgcc.mk
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/editors/libreoffice/files/patch-solenv__inc__unxgcc.mk	Thu Feb 14 01:28:36 2013	(r312189)
@@ -0,0 +1,18 @@
+--- ./solenv/inc/unxgcc.mk.orig	2013-01-16 04:41:51.000000000 -0500
++++ ./solenv/inc/unxgcc.mk	2013-02-12 20:50:31.000000000 -0500
+@@ -191,11 +191,11 @@
+ # entry. This will cause both, DT_RPATH and DT_RUNPATH entries, to be created
+ #
+ LINKFLAGSDEFS*=-Wl,-z,defs
+-LINKFLAGSRUNPATH_URELIB=-Wl,-rpath,\''$$ORIGIN'\',--enable-new-dtags
+-LINKFLAGSRUNPATH_UREBIN=-Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\',--enable-new-dtags
++LINKFLAGSRUNPATH_URELIB=-Wl,-z,origin,-rpath,\''$$ORIGIN'\',--enable-new-dtags
++LINKFLAGSRUNPATH_UREBIN=-Wl,-z,origin,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\',--enable-new-dtags
+     #TODO: drop $ORIGIN once no URE executable is also shipped in OOo
+-LINKFLAGSRUNPATH_OOO=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\',--enable-new-dtags
+-LINKFLAGSRUNPATH_SDKBIN=-Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\',--enable-new-dtags
++LINKFLAGSRUNPATH_OOO=-Wl,-z,origin,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\',--enable-new-dtags
++LINKFLAGSRUNPATH_SDKBIN=-Wl,-z,origin,-rpath,\''$$ORIGIN/../../ure-link/lib'\',--enable-new-dtags
+ LINKFLAGSRUNPATH_OXT=
+ LINKFLAGSRUNPATH_NONE=
+ # flag -Wl,-z,noexecstack sets the NX bit on the stack


More information about the svn-ports-all mailing list