aboutsummaryrefslogtreecommitdiff
path: root/editors/libreoffice
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2013-02-14 01:28:36 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2013-02-14 01:28:36 +0000
commit6999eb11953cb8e28718e16d1cc985f36946da7b (patch)
tree199b26d8f10d657b91f1b3ad95af5d9733155ad6 /editors/libreoffice
parent617326bf5439a71b6ee661b0b4cd80a660686c32 (diff)
downloadports-6999eb11953cb8e28718e16d1cc985f36946da7b.tar.gz
ports-6999eb11953cb8e28718e16d1cc985f36946da7b.zip
- Consistently use clang to build LibreOffice. It works fine now.
- Speed up patching a little.
Notes
Notes: svn path=/head/; revision=312189
Diffstat (limited to 'editors/libreoffice')
-rw-r--r--editors/libreoffice/Makefile19
-rw-r--r--editors/libreoffice/files/patch-odk__settings__settings.mk11
-rw-r--r--editors/libreoffice/files/patch-solenv__gbuild__platform__unxgcc.mk20
-rw-r--r--editors/libreoffice/files/patch-solenv__inc__unxgcc.mk18
4 files changed, 51 insertions, 17 deletions
diff --git a/editors/libreoffice/Makefile b/editors/libreoffice/Makefile
index 20f165f48b83..4ca49cce6ab7 100644
--- a/editors/libreoffice/Makefile
+++ b/editors/libreoffice/Makefile
@@ -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 \
diff --git a/editors/libreoffice/files/patch-odk__settings__settings.mk b/editors/libreoffice/files/patch-odk__settings__settings.mk
new file mode 100644
index 000000000000..e524171ffc92
--- /dev/null
+++ b/editors/libreoffice/files/patch-odk__settings__settings.mk
@@ -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
diff --git a/editors/libreoffice/files/patch-solenv__gbuild__platform__unxgcc.mk b/editors/libreoffice/files/patch-solenv__gbuild__platform__unxgcc.mk
new file mode 100644
index 000000000000..c83340a64da7
--- /dev/null
+++ b/editors/libreoffice/files/patch-solenv__gbuild__platform__unxgcc.mk
@@ -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
+
diff --git a/editors/libreoffice/files/patch-solenv__inc__unxgcc.mk b/editors/libreoffice/files/patch-solenv__inc__unxgcc.mk
new file mode 100644
index 000000000000..7ec2d03efa62
--- /dev/null
+++ b/editors/libreoffice/files/patch-solenv__inc__unxgcc.mk
@@ -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