1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-17 19:39:43 +00:00

editors/openoffice-devel: Upgrade and unbreak

Upgrade openoffice-devel to a more recent snapshot and unbreak. Recent
versions of clang do not like building system boost in -std=gnu++98 mode.

Add USE_GNOME=gdkpixbuf2xlib which now seems to be necessary.

Simplify the port by always using the bundled vigra and boost rather
than making this compiler version dependent.  The bundled versions
work (better) with modern clang in -std=gnu++98 mode.  Also, an
upcoming version of boost will require c++14 mode.  The bundled
boost needs a minor patch to work with modern clang in this mode.

Add upgrade advice to pkg-message.

Security:	6678211c-bd47-11ed-beb0-1c1b0d9ea7e6
(cherry picked from commit 0a5ce79fad)
This commit is contained in:
Don Lewis 2023-03-08 12:16:54 -08:00
parent 08f5d8f390
commit 9f2dea226e
4 changed files with 56 additions and 31 deletions

View File

@ -1,6 +1,6 @@
PORTNAME= apache-openoffice
PORTVERSION= ${AOOVERSION1}.${AOOVERSION2}.${TIMESTAMP}
PORTREVISION= 2
PORTREVISION= 0
PORTEPOCH= 4
CATEGORIES= editors java
MASTER_SITES= https://dist.apache.org/repos/dist/dev/openoffice/${AOOVERSION}-${AOORC}-${TIMESTAMP}/source/ \
@ -14,7 +14,8 @@ PKGNAMEPREFIX= ${LANG_PKGNAME}-
PKGNAMESUFFIX= -${LANG_SUFFIX}
.endif
PKGNAMESUFFIX= -devel
DISTFILES= ${AOOSRC}${AOODISTTAG} ${EXTSRC}:extsrc
DISTFILES= ${AOOSRC}${AOODISTTAG} ${EXTSRC}:extsrc \
${GCC_EXTRA_DISTFILES:C/.*/&:sf/g}
DIST_SUBDIR= openoffice
EXTRACT_ONLY= ${AOOSRC}
@ -50,7 +51,6 @@ LICENSE_PERMS_W3C= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
ONLY_FOR_ARCHS= amd64 i386 powerpc64
BROKEN_powerpc64= fails to compile: aoo-4.2.0/main/solver/420/unxfbsdppc64.pro/inc/stl/vector:31:11: fatal error: boost/tr1/tr1/vector: No such file or directory
BROKEN= does not build: fails to build vcl module with C++ errors in boost
BUILD_DEPENDS= \
p5-Archive-Zip>=0:archivers/p5-Archive-Zip \
@ -114,9 +114,9 @@ RUN_DEPENDS+= gcc${GCC_DEFAULT}>0:lang/gcc${GCC_DEFAULT}
USES= autoreconf bison compiler:c++11-lib cpe desktop-file-utils \
gettext-runtime gl gmake gnome iconv jpeg perl5 pkgconfig \
python:3.7 shared-mime-info ssl tar:${TARTYPE} xorg
python:3.9 shared-mime-info ssl tar:${TARTYPE} xorg
USE_GL= gl glu
USE_GNOME= gdkpixbuf2 gtk20 libxslt libidl glib20
USE_GNOME= gdkpixbuf2 gdkpixbuf2xlib gtk20 libxslt libidl glib20
USE_JAVA= yes
JAVA_BUILD= jdk
JAVA_RUN= jdk
@ -132,8 +132,8 @@ AOOVERSION2= 2
AOOVERSION3= 0
# From solenv/inc/minor.mk SOURCEREVISION LAST_MINOR BUILD
AOOTAG= AOO420m4\(Build:9823\)
GITREVISION= 5b75b699aa
TIMESTAMP= 1649975926
GITREVISION= e501375395
TIMESTAMP= 1678061694
#AOORC=rc3
EXTSRC= ApacheOpenOffice.ext_sources.${AOOVERSION1}.x.x.20150707.tar.gz
@ -256,20 +256,6 @@ GCC_EXTRA_DISTFILES= d6eef4b4cacb2183f2bf265a5a03a354-boost_1_55_0.tar.bz2 \
.if ${CHOSEN_COMPILER_TYPE} == clang
CPPFLAGS+= -I${LOCALBASE}/include
CONFIGURE_ARGS+= --with-system-boost
BUILD_DEPENDS+= ${LOCALBASE}/include/boost/shared_ptr.hpp:devel/boost-libs
. if ${COMPILER_VERSION} < 130
CONFIGURE_ARGS+= --with-system-vigra
BUILD_DEPENDS+= ${LOCALBASE}/bin/vigra-config:graphics/vigra
. endif
.endif
# These extra distfiles are needed to use the bundled versions of
# boost and vigra for compatiblity with gcc. Also include them
# for the makesum target so they are included in distinfo
.if ${CHOSEN_COMPILER_TYPE} == gcc || ${COMPILER_VERSION} >= 130 || \
make(makesum) || make(distclean)
DISTFILES+= ${GCC_EXTRA_DISTFILES:C/.*/&:sf/g}
.endif
.if ${ARCH} == amd64
@ -296,9 +282,9 @@ SUB_LIST= EXECBASE=${EXECBASE} AOOTAG=${AOOTAG} AOOUDIR=${AOOUDIR} \
PRINSTALLATION_BASEDIR=${PRINSTALLATION_BASEDIR}
CONFIGURE_ARGS+= \
--disable-gconf \
--enable-gio \
--disable-gnome-vfs \
--disable-gconf \
--with-unix-wrapper=${EXECBASE} \
--with-alloc=system \
--with-ant-home=${LOCALBASE}/share/java/apache-ant \
@ -380,11 +366,9 @@ do-extract-SDK-on:
post-extract:
${TAR} -C ${WRKSUBDIR} -xzf ${DISTDIR}/${DIST_SUBDIR}/${EXTSRC}
.if ${CHOSEN_COMPILER_TYPE} == gcc || ${COMPILER_VERSION} >= 130
. for f in ${GCC_EXTRA_DISTFILES}
.for f in ${GCC_EXTRA_DISTFILES}
${CP} ${DISTDIR}/${DIST_SUBDIR}/${f} ${WRKSUBDIR}/ext_sources/${f}
. endfor
.endif
.endfor
${CP} ${FILESDIR}/freebsd-aoo-intro-developer.png \
${WRKSRC}/default_images/introabout/intro.png
${CP} ${FILESDIR}/freebsd-aoo-about-developer.png \

View File

@ -1,11 +1,11 @@
TIMESTAMP = 1650526819
SHA256 (openoffice/apache-openoffice-1649975926-5b75b699aa-src.tar.xz) = 3330f35b9f36ad6d0e1302f80e5e5b9f02d62b1bc5596a1acbfd68906e4923a5
SIZE (openoffice/apache-openoffice-1649975926-5b75b699aa-src.tar.xz) = 239756848
TIMESTAMP = 1678253253
SHA256 (openoffice/apache-openoffice-1678061694-e501375395-src.tar.xz) = bbd933690fd09f0c059a03dc2918f1aa5a82497678bdee996bfe32b7b56c4de1
SIZE (openoffice/apache-openoffice-1678061694-e501375395-src.tar.xz) = 247232044
SHA256 (openoffice/ApacheOpenOffice.ext_sources.4.x.x.20150707.tar.gz) = 966a8333c83a18ddd84401389006d6e0b52b8175924b808b54b88211669985fa
SIZE (openoffice/ApacheOpenOffice.ext_sources.4.x.x.20150707.tar.gz) = 28957004
SHA256 (openoffice/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c
SIZE (openoffice/unowinreg.dll) = 6144
SHA256 (openoffice/d6eef4b4cacb2183f2bf265a5a03a354-boost_1_55_0.tar.bz2) = fff00023dd79486d444c8e29922f4072e1d451fc5a4d2b6075852ead7f2b7b52
SIZE (openoffice/d6eef4b4cacb2183f2bf265a5a03a354-boost_1_55_0.tar.bz2) = 58146647
SHA256 (openoffice/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz) = 1f188ac03a8aa4663223eca8c82f91a55293d066d67127082e29a7dba1a98c9f
SIZE (openoffice/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz) = 16525605
SHA256 (openoffice/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c
SIZE (openoffice/unowinreg.dll) = 6144

View File

@ -0,0 +1,18 @@
--- boost/boost_1_55_0.patch.orig 2021-04-02 12:58:20 UTC
+++ boost/boost_1_55_0.patch
@@ -359,3 +359,15 @@ +# if defined(__VARIADIC_TEMPLATES)
# define BOOST_HAS_VARIADIC_TMPL
# else
# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
+diff -ur misc/boost_1_55_0/boost/config/stdlib/libcpp.hpp misc/build/boost_1_55_0/boost/config/stdlib/libcpp.hpp
+--- misc/boost_1_55_0/boost/config/stdlib/libcpp.hpp 2012-05-15 04:57:21.000000000 -0700
++++ misc/build/boost_1_55_0/boost/config/stdlib/libcpp.hpp
+@@ -19,7 +19,7 @@
+
+ #define BOOST_HAS_THREADS
+
+-#ifdef _LIBCPP_HAS_NO_VARIADICS
++#if defined(_LIBCPP_HAS_NO_VARIADICS) || (__cplusplus < 201103)
+ # define BOOST_NO_CXX11_HDR_TUPLE
+ #endif
+

View File

@ -48,4 +48,27 @@ If you somehow run into problems, please remove the already installed
user installation and the problems should go away.
EOM
}
{ type: upgrade
maximum_version: "%%AOOVERSION%%"
message: <<EOM
In general, it is always a good idea to do a backup of important
and personal data, so we recommend to always back up your OpenOffice
user profile before doing an upgrade to a newer release.
Users can back up their profile by copying this directory:
/home/<user name>/.openoffice
EOM
}
{ type: upgrade
maximum_version: "1678061694"
message: <<EOM
It is recommended to make a backup of the Apache OpenOffice users
profile before upgrading. It is especially essential for users who
use the Master Password functionality and may decide to use an older
version later. There is a change in the encoding of stored passwords
between the 4.1.2 and 4.1.13 releases (and in a similar timeframe
for the -devel port) that may make your user profile unusable for
previous versions.
EOM
}
]