Upgrade to Apache OpenOffice 4.1.2

* Release Notes:
   <https://cwiki.apache.org/confluence/display/OOOUSERS/AOO+4.1.2+Release+Notes
>

  * Bug Fixes: <http://s.apache.org/9uI>

  * Improvements / Enhancements

    o Several distinct enhancements were applied to the WebDAV
      management and file locking: OpenOffice is now able to properly
      interact with Microsoft Sharepoint, enabling a more productive
      usage in corporate-level environments. These enhancements were
      funded, and contributed upstream, by the Emilia-Romagna regional
      administration (Italy), where OpenOffice was adopted a few years
      ago.

    o The PDF export dialog was redesigned for better usability on small
      laptop screens.

    o Underlying libraries for the solver and digital signing
      functionality have been updated, for better performance and
      increased security.

    o OpenOffice 4.1.2 fixes security vulnerabilities. See:
      <http://www.openoffice.org/security/bulletin.html>.
      Note: CVE-2015-1774 was previously fixed in the FreeBSD port.

  * Removed/Retired Features

    o Support for the ancient .hwp file format was retired.  This was
      a rarely used format created with versions of the program named
      "Hangul Word Processor" prior to 1997; therefore impact on users
      is expected to be minimal.  The few users who have files in the
      .hwp format should convert them to ODF using Apache OpenOffice
      4.1.1 before upgrading.

Nuke the patches or the parts of patches that have been committed
upstream.

Add an option to build and install the SDK and disable it by default.
The port has been building it all along, but not installing it.  We
save only a small amount of time by not building it, but installing it
would require about 70 MB of extra space space.  The FreeBSD port has
been patched to allow building the SDK with OpenJDK8.

Add an option to build and install the Wiki Publisher extension.  If
it is enabled, it is now handled as an integrated extension, so the
user does not have manually use the extension manager to track it down
and install it.

Tweak an existing script to install the icons instead of using a bunch
of complicated code in the Makefile.  Add USES=shared-mime-info.

Nuke some unused targets in Makefiles.others.  The SDK is now explicitly
handled as an option, and the Uno Runtime Environment hasn't had the
capability for separate installation in quite some time.

Nuke an extraneous "-" from the tar command when unpacking the
installation archive during staging.
This commit is contained in:
Don Lewis 2015-10-29 16:29:50 +00:00
parent 7f565d830a
commit 8894071635
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=400472
22 changed files with 102 additions and 1085 deletions

View file

@ -3,7 +3,6 @@
PORTNAME= apache-openoffice
PORTVERSION= ${AOOVERSION}
PORTREVISION= 18
CATEGORIES= editors java
MASTER_SITES= APACHE/openoffice/${PORTVERSION}/source \
http://tools.openoffice.org/unowinreg_prebuild/680/:unoreg \
@ -97,10 +96,10 @@ RUN_DEPENDS= \
AOOVERSION1= 4
AOOVERSION2= 1
AOOVERSION3= 1
AOOVERSION3= 2
# From solenv/inc/minor.mk SOURCEREVISION LAST_MINOR BUILD
AOOTAG= AOO411m6\(Build:9775\)
SVNREVISION= 1617669
AOOTAG= AOO412m3\(Build:9782\)
SVNREVISION= 1709696
EXTSRC= ApacheOpenOffice.ext_sources.${AOOVERSION1}.x.x.20150707.tar.gz
AOOVERSION= ${AOOVERSION1}.${AOOVERSION2}.${AOOVERSION3}
@ -129,17 +128,19 @@ 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
shared-mime-info tar:bzip2
INSTALLS_ICONS= yes
WITHOUT_CPU_CFLAGS= true
CPE_PRODUCT= ${PORTNAME:S|apache-||}
CPE_VENDOR= apache
OPTIONS_DEFINE= CUPS GNOME GNOMEVFS MMEDIA CCACHE
OPTIONS_DEFAULT= CUPS GNOME GNOMEVFS MMEDIA
OPTIONS_DEFINE= CUPS GNOME GNOMEVFS MMEDIA SDK WIKI_PUBLISHER CCACHE
OPTIONS_DEFAULT= CUPS GNOME GNOMEVFS MMEDIA WIKI_PUBLISHER
GNOME_DESC= GConf + screensaver presentation control via DBUS
GNOMEVFS_DESC= GNOME Virtual File System
MMEDIA_DESC= Multimedia backend for impress
SDK_DESC= Build and install software development kit
WIKI_PUBLISHER_DESC= Build and install Wiki Publisher extension
CCACHE_DESC= Mimimize compile time of C/C++ programs
CUPS_CONFIGURE_ENABLE= cups
@ -157,6 +158,11 @@ GNOMEVFS_USE= GNOME=gnomevfs2
MMEDIA_CONFIGURE_ENABLE= gstreamer
MMEDIA_USE= GSTREAMER=yes
SDK_CONFIGURE_ENABLE= odk
WIKI_PUBLISHER_CONFIGURE_ENABLE= wiki-publisher
WIKI_PUBLISHER_VARS= BUNDLED_EXTENSIONS+=swext/wiki-publisher.oxt
.include <bsd.port.pre.mk>
.include <${FILESDIR}/Makefile.localized>
@ -254,16 +260,14 @@ CONFIGURE_ARGS+= \
--with-vendor="FreeBSD ports system" \
--enable-verbose \
--with-system-vigra \
--enable-wiki-publisher \
--with-system-xrender \
--with-system-zlib
#AOOEXTENSIONS+= minimizer/presentation-minimizer.oxt
#AOOEXTENSIONS+= presenter/presenter-screen.oxt
#AOOEXTENSIONS+= pdfimport/pdfimport.oxt
AOOEXTENSIONS+= swext/wiki-publisher.oxt
.if defined (BUNDLED_EXTENSIONS)
CONFIGURE_ARGS+= --with-bundled-prereg-extensions="${BUNDLED_EXTENSIONS}"
.endif
ICONS= ${WRKSRC}/sysui/desktop/icons
CREATE_TREE= ${WRKSRC}/sysui/desktop/share/create_tree.sh
.include <${FILESDIR}/Makefile.knobs>
@ -326,6 +330,7 @@ post-patch:
${WRKSRC}/sysui/desktop/productversion.mk
${REINPLACE_CMD} -e "s|%%JAVA_HOME%%|${JAVA_HOME}|" \
${WRKSRC}/desktop/scripts/soffice.sh
${REINPLACE_CMD} -e '/^mkdir -p/,$$d' ${CREATE_TREE}
.if ${COMPILER_TYPE} == gcc
# g++49 -Os sometimes leaves inline class methods undefined,
# affects fmgridif.cxx and ColumnControl.cxx
@ -390,19 +395,15 @@ do-build:
LANG=C LC_ALL=C build.pl --all -P$${numproc} -- -P$${dmproc}
do-install:
@${MKDIR} ${STAGEDIR}${PRINSTALLATION_BASEDIR}/extensions \
${STAGEDIR}${OOPATH}/uno_packages/cache/uno_packages \
${STAGEDIR}${DESKTOPDIR}
@${MKDIR} ${STAGEDIR}${PRINSTALLATION_BASEDIR} \
${STAGEDIR}${DESKTOPDIR} \
${STAGEDIR}${PREFIX}/share/mime/packages
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/Apache_OpenOffice/archive/install/${LOCALIZED_LANG}/ ; \
for i in *.tar.?z ; do \
${ECHO_CMD} "extracting $$i" ; \
${TAR} -s '|./[^/]*/||' -xz -f $$i - \
${TAR} -s '|./[^/]*/||' -xz -f $$i \
-C ${STAGEDIR}${PRINSTALLATION_BASEDIR} ; \
done
@${ECHO_CMD} "installing extensions" ; \
cd ${WRKSRC}/solver/${AOOXXX}/unxfbsd?.pro/bin/ ; \
${INSTALL_DATA} ${AOOEXTENSIONS} \
${STAGEDIR}${PRINSTALLATION_BASEDIR}/extensions/
${FIND} ${STAGEDIR}${PRINSTALLATION_BASEDIR} -type d -exec ${CHMOD} 755 {} \;
${REINPLACE_CMD} \
-e '/^UserInstallation/s/=.*/=$$SYSUSERCONFIG\/${AOOUDIR}/' \
@ -419,30 +420,33 @@ do-install:
simpress smath spadmin swriter ; do \
${LN} -f ${EXECBASE} ${EXECBASE}-$${i} ; \
done
${LN} -sf ${XDGDIR} ${STAGEDIR}${DESKTOPDIR}/${EXECBASE}
@${ECHO_CMD} "installing application icons"
@cd ${ICONS} ; for dir in hicolor/*/apps ; do \
${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/$${dir} ; \
for app in base calc draw impress math printeradmin startcenter writer; do \
icon_src=$${dir}/$${app}.png; \
icon_dst=share/icons/$${dir}/${EXECBASE}-$${app}.png; \
if [ -r $${icon_src} ]; then \
${INSTALL_DATA} $${icon_src} \
${STAGEDIR}${PREFIX}/$${icon_dst} ; \
fi \
done ; \
done
@${ECHO_CMD} "installing mimetype icons"
@cd ${ICONS} ; for dir in hicolor/*/mimetypes ; do \
dstdir=${STAGEDIR}${PREFIX}/share/icons/$${dir} ; \
${MKDIR} $${dstdir} ; \
${INSTALL_DATA} $${dir}/*.png $${dstdir}/ ; \
done
@${ECHO_CMD} "adding desktop support"
@${LN} -sf ${XDGDIR} ${STAGEDIR}${DESKTOPDIR}/${EXECBASE}
@cd ${WRKSRC}/sysui/unxfbsd?.pro/misc/openoffice ; \
DESTDIR=${STAGEDIR} \
GNOMEDIR=${PREFIX} \
ICON_PREFIX=openoffice${AOOVERSION1} \
ICON_SOURCE_DIR=${WRKSRC}/sysui/desktop/icons \
ICON_THEMES="hicolor/??x??" \
KDEMAINDIR=${PREFIX} \
PREFIX=openoffice${AOOVERSION1} \
${SH} ${CREATE_TREE} ; \
${INSTALL_DATA} apacheopenoffice.xml \
${STAGEDIR}/${PREFIX}/share/mime/packages
do-install-SDK-on:
${TAR} -s '|./[^/]*/||' -xz -C ${STAGEDIR}${PRINSTALLATION_BASEDIR} \
-f ${WRKSRC}/instsetoo_native/unxfbsd?.pro/Apache_OpenOffice_SDK/archive/install/${LOCALIZED_LANG}/*.tar.gz
@f=${STAGEDIR}${OOPATH}/sdk/bin/unoapploader ; \
${CHMOD} 644 $${f} ; ${STRIP_CMD} $${f} ; ${CHMOD} 444 $${f}
post-install:
@${ECHO_CMD} "generating plist";
@cd ${STAGEDIR}${PREFIX} ; (\
${ECHO_CMD} "share/applications/${EXECBASE}" ; \
${FIND} -s bin -name "${EXECBASE}*" ; \
${FIND} -s ${INSTALLATION_BASEDIR} share/icons \! -type d ; \
${FIND} -s ${INSTALLATION_BASEDIR} share/applications \
share/application-registry share/icons \
share/mime-info share/mime share/mimelnk \! -type d ; \
${FIND} ${INSTALLATION_BASEDIR} -type d -empty | ${SORT} -r | \
${SED} -e 's/^/@dir /' ; \
) >> ${TMPPLIST}

View file

@ -1,5 +1,5 @@
SHA256 (openoffice/apache-openoffice-4.1.1-r1617669-src.tar.bz2) = bb89a6d2324ddfe4c475e5484fde0dea316078f6b8ff4d8a4ebc801d17f3ff9f
SIZE (openoffice/apache-openoffice-4.1.1-r1617669-src.tar.bz2) = 219054455
SHA256 (openoffice/apache-openoffice-4.1.2-r1709696-src.tar.bz2) = 2e06774424eb564559f9e6d63ff79aa00522b210067717c5a8cfb54b3b7f1812
SIZE (openoffice/apache-openoffice-4.1.2-r1709696-src.tar.bz2) = 219041975
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

View file

@ -3,43 +3,9 @@
# $FreeBSD$
#other stuffs which are not directly related to making ports
#package-rename: rename package for uploading
#package-canonical: making official packages (WIP)
#ure: URE (Uno Runtime Environment) packages (WIP)
#solver: solver
#languagepack: language pack
package-rename:
@${ECHO_MSG} "===> Rename package for Apache OpenOffice mirror upload";
@${LN} ${PKGFILE} \
${WRKDIR}/../${PACKAGE_PREFIX}_${PACKAGE_MIDDLE}_install_${LOCALIZED_LANG}${PKG_SUFX}
package-canonical:
@${ECHO_MSG} "===> Canonical packaging for Apache OpenOffice";
@${CP} ${WRKSRC}/instsetoo_native/unxfbsd?.pro/Apache_OpenOffice/archive/install/${LOCALIZED_LANG}/${PACKAGE_PREFIX}* ${WRKDIR}/../.
sdk:
@${ECHO_MSG} "===> Make SDK of Apache OpenOffice"
@${RM} -fr ${WRKDIR}/sdk_tmp
@${MKDIR} ${WRKDIR}/sdk_tmp
@cd ${WRKDIR}/sdk_tmp ; \
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/Apache_OpenOffice_SDK/archive/install/${LOCALIZED_LANG}/Apache_OpenOffice-*SDK*.tar.gz
@cd ${WRKDIR}/sdk_tmp/Apache_*/openoffice* ; \
${MKDIR} ../${INSTALLATION_BASEDIR}_sdk ; \
${MV} * ../${INSTALLATION_BASEDIR}_sdk ; cd .. ; \
${TAR} cfj ${WRKDIR}/../${PACKAGE_PREFIX}-SDK_${PACKAGE_MIDDLE}_install_en-US.tbz ${INSTALLATION_BASEDIR}_sdk
ure:
@${ECHO_MSG} "===> Make Uno Runtime Environment of Apache OpenOffice"
@${RM} -fr ${WRKDIR}/ure_tmp
@${MKDIR} ${WRKDIR}/ure_tmp
@cd ${WRKDIR}/ure_tmp ; \
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/URE/archive/install/${LOCALIZED_LANG}/Apache_OpenOffice_*URE*.tar.gz
@cd ${WRKDIR}/ure_tmp/Apache_OpenOffice*URE* ; \
${MKDIR} ../${INSTALLATION_BASEDIR} ; \
${MV} * ../${INSTALLATION_BASEDIR} ; cd .. ; \
${TAR} cfj ${WRKDIR}/../${PACKAGE_PREFIX}-URE_${PACKAGE_MIDDLE}_install_en-US.tbz ${INSTALLATION_BASEDIR}
solver:
@${ECHO_MSG} "===> Make Solver of Apache OpenOffice"
@cd ${WRKSRC} ; ${TAR} cfj ${WRKDIR}/../${PACKAGE_PREFIX}-solver_${PACKAGE_MIDDLE}.tar.bz2 solver

View file

@ -1,39 +0,0 @@
--- scp2/source/writer/file_writer.scp.orig 2014-02-25 08:22:30 UTC
+++ scp2/source/writer/file_writer.scp
@@ -25,8 +25,6 @@
STD_LIB_FILE( gid_File_Lib_Swd , swd)
-SPECIAL_LIB_FILE(gid_File_Lib_Hwpreader, hwp)
-
File gid_File_Exe_Swriter
BIN_FILE_BODY;
Dir = gid_Brand_Dir_Program;
--- scp2/source/writer/module_writer.scp.orig 2014-02-25 08:22:30 UTC
+++ scp2/source/writer/module_writer.scp
@@ -40,7 +40,6 @@ Module gid_Module_Prg_Wrt_Bin
Styles = (HIDDEN_ROOT);
Files = (gid_File_Bin_Cde_Sagenda,gid_File_Bin_Cde_Sfax,gid_File_Bin_Cde_Slabel,
gid_File_Bin_Cde_Sletter,gid_File_Bin_Cde_Smemo,gid_File_Bin_Cde_Svcard,
- gid_File_Lib_Hwpreader,
gid_File_Lib_Swd,
gid_File_Lib_Swui,
gid_File_Lib_Msword,
--- postprocess/packcomponents/makefile.mk.orig 2014-06-18 11:45:22 UTC
+++ postprocess/packcomponents/makefile.mk
@@ -121,7 +121,6 @@ my_components = \
fps_office \
frm \
guesslang \
- hwp \
i18npool \
i18nsearch \
lng \
--- postprocess/prj/build.lst.orig 2014-02-25 08:23:13 UTC
+++ postprocess/prj/build.lst
@@ -1,4 +1,4 @@
-po postprocess :: svgio accessibility automation basctl bean chart2 configmgr CRASHREP:crashrep COINMP:coinmp cui dbaccess desktop dtrans embeddedobj embedserv EPM:epm eventattacher extensions extras fileaccess filter forms fpicker helpcontent2 hwpfilter io JAVAINSTALLER2:javainstaller2 lingucomponent MATHMLDTD:MathMLDTD ODK:odk officecfg package padmin psprint_config remotebridges sc scaddins sccomp scp2 scripting sd setup_native slideshow starmath sw sysui testtools ucb UnoControls unoxml ure wizards xmerge xmlsecurity MORE_FONTS:more_fonts OOo:pyuno OOo:readlicense_oo SO:top unodevtools JFREEREPORT:jfreereport REPORTBUILDER:reportbuilder reportdesign sdext SWEXT:swext smoketestdoc uui writerfilter winaccessibility oox MYSQLC:mysqlc LIBXSLT:libxslt NULL
+po postprocess :: svgio accessibility automation basctl bean chart2 configmgr CRASHREP:crashrep COINMP:coinmp cui dbaccess desktop dtrans embeddedobj embedserv EPM:epm eventattacher extensions extras fileaccess filter forms fpicker helpcontent2 io JAVAINSTALLER2:javainstaller2 lingucomponent MATHMLDTD:MathMLDTD ODK:odk officecfg package padmin psprint_config remotebridges sc scaddins sccomp scp2 scripting sd setup_native slideshow starmath sw sysui testtools ucb UnoControls unoxml ure wizards xmerge xmlsecurity MORE_FONTS:more_fonts OOo:pyuno OOo:readlicense_oo SO:top unodevtools JFREEREPORT:jfreereport REPORTBUILDER:reportbuilder reportdesign sdext SWEXT:swext smoketestdoc uui writerfilter winaccessibility oox MYSQLC:mysqlc LIBXSLT:libxslt NULL
po postprocess usr1 - all po_mkout NULL
po postprocess\checkxml nmake - all po_checkxml NULL
po postprocess\checkdeliver nmake - all po_checkdlv NULL

View file

@ -1,32 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx.orig 2014-02-25 08:29:00 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx
@@ -24,6 +24,11 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_bridges.hxx"
+#include <typeinfo>
+#include <exception>
+#include <cstddef>
+#include <cxxabi.h>
+
#include <com/sun/star/uno/genfunc.hxx>
#include "com/sun/star/uno/RuntimeException.hpp"
#include <uno/data.h>
@@ -159,7 +164,7 @@ void cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -178,7 +183,7 @@ void cpp2uno_call(
&aUnoExc, pThis->getBridge()->getUno2Cpp() );
// has to destruct the any
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )

View file

@ -1,56 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx.orig 2014-02-25 08:29:00 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx
@@ -24,7 +24,12 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_bridges.hxx"
+#include <cstddef>
+#include <exception>
+#include <typeinfo>
+
#include <stdio.h>
+#include <string.h>
#include <dlfcn.h>
#include <cxxabi.h>
#include <hash_map>
@@ -177,7 +182,12 @@ type_info * RTTI::getRTTI( typelib_Compo
char const * rttiName = symName.getStr() +4;
#if OSL_DEBUG_LEVEL > 1
fprintf( stderr,"generated rtti for %s\n", rttiName );
+#ifndef __GLIBCXX__ /* #i124421# */
+ const OString aCUnoName = OUStringToOString( unoName, RTL_TEXTENCODING_UTF8);
+ OSL_TRACE( "TypeInfo for \"%s\" not found and cannot be generated.\n", aCUnoName.getStr());
+#endif /* __GLIBCXX__ */
#endif
+#ifdef __GLIBCXX__ /* #i124421# */
if (pTypeDescr->pBaseTypeDescription)
{
// ensure availability of base
@@ -191,6 +201,9 @@ type_info * RTTI::getRTTI( typelib_Compo
// this class has no base class
rtti = new __class_type_info( strdup( rttiName ) );
}
+#else /* __GLIBCXX__ */
+ rtti = NULL;
+#endif /* __GLIBCXX__ */
pair< t_rtti_map::iterator, bool > insertion(
m_generatedRttis.insert( t_rtti_map::value_type( unoName, rtti ) ) );
@@ -233,7 +246,7 @@ void raiseException( uno_Any * pUnoExc,
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -307,7 +320,7 @@ void fillUnoException( __cxa_exception *
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)

View file

@ -1,54 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_intel/share.hxx.orig 2014-02-25 08:28:59 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/share.hxx
@@ -23,10 +23,6 @@
#include "uno/mapping.h"
-#include <typeinfo>
-#include <exception>
-#include <cstddef>
-
namespace CPPU_CURRENT_NAMESPACE
{
@@ -34,6 +30,7 @@ void dummy_can_throw_anything( char cons
// ----- following decl from libstdc++-v3/libsupc++/unwind-cxx.h and unwind.h
+#ifdef __GLIBCXX__
struct _Unwind_Exception
{
unsigned exception_class __attribute__((__mode__(__DI__)));
@@ -62,18 +59,21 @@ struct __cxa_exception
_Unwind_Exception unwindHeader;
};
+#endif /* __GLIBCXX__ */
extern "C" void *__cxa_allocate_exception(
std::size_t thrown_size ) throw();
extern "C" void __cxa_throw (
void *thrown_exception, std::type_info *tinfo, void (*dest) (void *) ) __attribute__((noreturn));
+#ifdef __GLIBCXX__
struct __cxa_eh_globals
{
__cxa_exception *caughtExceptions;
unsigned int uncaughtExceptions;
};
extern "C" __cxa_eh_globals *__cxa_get_globals () throw();
+#endif /* __GLIBCXX__ */
// -----
@@ -81,6 +81,10 @@ extern "C" __cxa_eh_globals *__cxa_get_g
void raiseException(
uno_Any * pUnoExc, uno_Mapping * pUno2Cpp );
//==================================================================================================
+#ifndef __GLIBCXX__
+using __cxxabiv1:: __cxa_exception;
+#endif /* __GLIBCXX__ */
+
void fillUnoException(
__cxa_exception * header, uno_Any *, uno_Mapping * pCpp2Uno );
}

View file

@ -1,43 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx.orig 2014-02-25 08:29:00 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx
@@ -24,6 +24,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_bridges.hxx"
+#include <typeinfo>
+#include <exception>
+#include <cstddef>
+#include <cxxabi.h>
#include <stdlib.h>
#include <com/sun/star/uno/genfunc.hxx>
@@ -39,6 +43,11 @@
using namespace ::rtl;
using namespace ::com::sun::star::uno;
+#ifdef __GLIBCXX__
+using CPPU_CURRENT_NAMESPACE::__cxa_get_globals;
+#else
+using __cxxabiv1::__cxa_get_globals;
+#endif
namespace
{
@@ -266,7 +275,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
@@ -305,7 +314,7 @@ static void cpp_call(
catch (...)
{
// fill uno exception
- fillUnoException( CPPU_CURRENT_NAMESPACE::__cxa_get_globals()->caughtExceptions, *ppUnoExc, pThis->getBridge()->getCpp2Uno() );
+ CPPU_CURRENT_NAMESPACE::fillUnoException( __cxa_get_globals()->caughtExceptions, *ppUnoExc, pThis->getBridge()->getCpp2Uno() );
// temporary params
for ( ; nTempIndizes--; )

View file

@ -1,34 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx.orig 2014-02-25 08:28:59 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx
@@ -24,9 +24,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_bridges.hxx"
-#include <stdio.h>
-#include <stdlib.h>
-#include <hash_map>
+#include <typeinfo>
+#include <exception>
+#include <cstddef>
+#include <cxxabi.h>
#include <rtl/alloc.h>
#include <osl/mutex.hxx>
@@ -194,7 +195,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if ( pUnoExc )
{
// destruct temporary in/inout params
@@ -213,7 +214,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )

View file

@ -1,57 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx.orig 2014-02-25 08:29:00 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx
@@ -24,9 +24,9 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_bridges.hxx"
-#if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 6))
+#include <cstddef>
#include <exception>
-#endif
+#include <typeinfo>
#include <stdio.h>
#include <string.h>
@@ -182,7 +182,12 @@ type_info * RTTI::getRTTI( typelib_Compo
char const * rttiName = symName.getStr() +4;
#if OSL_DEBUG_LEVEL > 1
fprintf( stderr,"generated rtti for %s\n", rttiName );
+#ifndef __GLIBCXX__ /* #i124421# */
+ const OString aCUnoName = OUStringToOString( unoName, RTL_TEXTENCODING_UTF8);
+ OSL_TRACE( "TypeInfo for \"%s\" not found and cannot be generated.\n", aCUnoName.getStr());
+#endif /* __GLIBCXX__ */
#endif
+#ifdef __GLIBCXX__ /* #i124421# */
if (pTypeDescr->pBaseTypeDescription)
{
// ensure availability of base
@@ -196,7 +201,10 @@ type_info * RTTI::getRTTI( typelib_Compo
// this class has no base class
rtti = new __class_type_info( strdup( rttiName ) );
}
-
+#else /* __GLIBCXX__ */
+ rtti = NULL;
+#endif /* __GLIBCXX__ */
+
pair< t_rtti_map::iterator, bool > insertion(
m_generatedRttis.insert( t_rtti_map::value_type( unoName, rtti ) ) );
OSL_ENSURE( insertion.second, "### inserting new generated rtti failed?!" );
@@ -238,7 +246,7 @@ void raiseException( uno_Any * pUnoExc,
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -312,7 +320,7 @@ void fillUnoException( __cxa_exception *
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)

View file

@ -1,54 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/share.hxx.orig 2014-02-25 08:28:59 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/share.hxx
@@ -23,10 +23,6 @@
#include "uno/mapping.h"
-#include <typeinfo>
-#include <exception>
-#include <cstddef>
-
namespace CPPU_CURRENT_NAMESPACE
{
@@ -34,6 +30,7 @@ void dummy_can_throw_anything( char cons
// ----- following decl from libstdc++-v3/libsupc++/unwind-cxx.h and unwind.h
+#ifdef __GLIBCXX__
struct _Unwind_Exception
{
unsigned exception_class __attribute__((__mode__(__DI__)));
@@ -62,18 +59,21 @@ struct __cxa_exception
_Unwind_Exception unwindHeader;
};
+#endif /* __GLIBCXX__ */
extern "C" void *__cxa_allocate_exception(
std::size_t thrown_size ) throw();
extern "C" void __cxa_throw (
void *thrown_exception, std::type_info *tinfo, void (*dest) (void *) ) __attribute__((noreturn));
+#ifdef __GLIBCXX__
struct __cxa_eh_globals
{
__cxa_exception *caughtExceptions;
unsigned int uncaughtExceptions;
};
extern "C" __cxa_eh_globals *__cxa_get_globals () throw();
+#endif /* __GLIBCXX__ */
// -----
@@ -81,6 +81,10 @@ extern "C" __cxa_eh_globals *__cxa_get_g
void raiseException(
uno_Any * pUnoExc, uno_Mapping * pUno2Cpp );
//==================================================================================================
+#ifndef __GLIBCXX__
+using __cxxabiv1:: __cxa_exception;
+#endif /* __GLIBCXX__ */
+
void fillUnoException(
__cxa_exception * header, uno_Any *, uno_Mapping * pCpp2Uno );
}

View file

@ -1,45 +0,0 @@
--- bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx.orig 2014-02-25 08:29:00 UTC
+++ bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx
@@ -24,9 +24,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_bridges.hxx"
-#include <exception>
#include <typeinfo>
-#include <stdio.h>
+#include <exception>
+#include <cstddef>
+#include <cxxabi.h>
#include <stdlib.h>
#include <string.h>
@@ -47,6 +48,11 @@
using namespace ::rtl;
using namespace ::com::sun::star::uno;
+#ifdef __GLIBCXX__
+using CPPU_CURRENT_NAMESPACE::__cxa_get_globals;
+#else
+using __cxxabiv1::__cxa_get_globals;
+#endif
//==================================================================================================
static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex,
@@ -407,7 +413,7 @@ static void cpp_call(
Reference< XInterface >());
}
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
@@ -446,7 +452,7 @@ static void cpp_call(
catch (...)
{
// fill uno exception
- fillUnoException( CPPU_CURRENT_NAMESPACE::__cxa_get_globals()->caughtExceptions, *ppUnoExc, pThis->getBridge()->getCpp2Uno() );
+ CPPU_CURRENT_NAMESPACE::fillUnoException( __cxa_get_globals()->caughtExceptions, *ppUnoExc, pThis->getBridge()->getCpp2Uno() );
// temporary params
for ( ; nTempIndizes--; )

View file

@ -1,343 +0,0 @@
--- 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 \

View file

@ -0,0 +1,32 @@
--- configure.in.orig 2015-10-09 07:11:14 UTC
+++ configure.in
@@ -369,11 +369,11 @@ AC_ARG_WITH(bundled-extension-blobs,
and comply with their distribution requirements by updating the
files LICENSE_aggregated and NOTICE_aggregated accordingly
],,)
-#AC_ARG_WITH(bundled-prereg-extensions,
-#[ --with-bundled-prereg-extensions Whitespace seperated list of files in the tarball directory that
-# are to be bundled as pre-registered extensions. Make sure to only bundle
-# extensions which can be installed without requiring a license dialog
-#],,)
+AC_ARG_WITH(bundled-prereg-extensions,
+[ --with-bundled-prereg-extensions Whitespace seperated list of files in the tarball directory that
+ are to be bundled as pre-registered extensions. Make sure to only bundle
+ extensions which can be installed without requiring a license dialog
+],,)
AC_ARG_ENABLE(bundled-dictionaries,
[ --enable-bundled-dictionaries Download dictionaries (spelling, hyphenation, thesaurus)
according to main/extensions.lst and bundle them. Make sure to
@@ -1540,9 +1540,9 @@ else
fi
AC_SUBST(BUNDLED_EXTENSION_BLOBS)
-#dnl ===================================================================
-#dnl Check extensions that are to be bundled as pre-registerd
-#dnl ===================================================================
+dnl ===================================================================
+dnl Check extensions that are to be bundled as pre-registerd
+dnl ===================================================================
if test -n "$with_bundled_prereg_extensions"; then
BUNDLED_PREREG_EXTENSIONS="$with_bundled_prereg_extensions"
else

View file

@ -1,15 +0,0 @@
--- svtools/Library_svt.mk.orig 2014-09-19 17:47:52 UTC
+++ svtools/Library_svt.mk
@@ -76,6 +76,12 @@ $(eval $(call gb_Library_add_linked_libs
$(eval $(call gb_Library_set_ldflags,svt,\
$$(filter-out -L/usr/lib/jvm%,$$(LDFLAGS)) \
))
+ifeq ($(OS),FREEBSD)
+# JDK jpeg library on FreeBSD lives under ${JAVA_HOME}/jre/lib/${ARCH}/
+$(eval $(call gb_Library_set_ldflags,svt,\
+ $$(filter-out -L$$(JAVA_HOME)/jre/lib/%,$$(LDFLAGS)) \
+))
+endif
ifeq ($(GUIBASE),os2)
# YD FIXME above is not working... needs ldflags hack...
$(eval $(call gb_Library_set_ldflags,svt,\

View file

@ -1,62 +0,0 @@
--- set_soenv.in.orig 2014-06-06 06:58:10 UTC
+++ set_soenv.in
@@ -1823,6 +1823,8 @@ ToFile( "PKGFORMAT", "@PKGFORMAT
ToFile( "SYSTEM_STDLIBS", "@SYSTEM_STDLIBS@", "e" );
ToFile( "SYSTEM_ZLIB", "@SYSTEM_ZLIB@", "e" );
ToFile( "SYSTEM_NSS", "@SYSTEM_NSS@", "e" );
+ToFile( "NSS_CFLAGS", "@NSS_CFLAGS@", "e" );
+ToFile( "NSS_LIBS", "@NSS_LIBS@", "e" );
ToFile( "SYSTEM_OPENSSL", "@SYSTEM_OPENSSL@", "e" );
ToFile( "OPENSSL_CFLAGS", "@OPENSSL_CFLAGS@", "e" );
ToFile( "OPENSSL_LIBS", "@OPENSSL_LIBS@", "e" );
--- xmlsecurity/source/xmlsec/nss/makefile.mk.orig 2014-02-25 08:23:37 UTC
+++ xmlsecurity/source/xmlsec/nss/makefile.mk
@@ -44,12 +44,8 @@ CFLAGS+=-DSYSTEM_LIBXML $(LIBXML_CFLAGS)
.IF "$(SYSTEM_NSS)" != "YES"
MOZ_INC = $(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/mozilla
-NSS_INC = $(MOZ_INC)$/nss
-NSPR_INC = $(MOZ_INC)$/nspr
-.ELSE
-# TODO: better use pkgconfig to find the proper system include path
-NSS_INC = /usr/include/nss3
-NSPR_INC = /usr/include/nspr4
+NSS_CFLAGS = -I$(MOZ_INC)$/nss
+NSPR_CFLAGS = -I$(MOZ_INC)$/nspr
.ENDIF
.IF "$(GUI)" == "WNT"
@@ -105,10 +101,10 @@ CDEFS += -DXMLSEC_NO_XSLT
# --- Files --------------------------------------------------------
SOLARINC += \
- -I$(NSPR_INC) \
+ $(NSPR_CFLAGS) \
-I$(PRJ)$/source$/xmlsec
-SOLARINC += -I$(NSS_INC)
+SOLARINC += $(NSS_CFLAGS)
SLOFILES = \
$(SLO)$/nssinitializer.obj \
--- xmlsecurity/util/makefile.mk.orig 2014-02-25 08:23:37 UTC
+++ xmlsecurity/util/makefile.mk
@@ -98,13 +98,17 @@ SHL2STDLIBS += \
SHL2STDLIBS +=-ldl
.ENDIF
-.IF "$(ENABLE_NSS_MODULE)"=="YES" && "$(SYSTEM_NSS)"!="YES"
+.IF "$(ENABLE_NSS_MODULE)"=="YES"
+.IF "$(SYSTEM_NSS)"!="YES"
.IF "$(NSPR_LIB)" != ""
SHL2STDLIBS += $(NSPR_LIB)
.ENDIF
.IF "$(NSS_LIB)" != ""
SHL2STDLIBS += $(NSS_LIB)
.ENDIF
+.ELSE
+SHL2STDLIBS += $(NSS_LIBS)
+.ENDIF
.ENDIF
.IF "$(CRYPTO_ENGINE)" == "mscrypto"

View file

@ -1,13 +0,0 @@
--- sal/inc/rtl/string.hxx.orig 2014-06-19 07:47:24 UTC
+++ sal/inc/rtl/string.hxx
@@ -234,8 +234,9 @@ private:
@return a pointer to a (not necessarily null-terminated) byte string
representing the characters of this string object.
*/
- operator const sal_Char *() const SAL_THROW(()) { return pData->buffer; }
+
public:
+ operator const sal_Char *() const SAL_THROW(()) { return pData->buffer; }
/** Returns a reference to a character of this string. */
sal_Char& operator[]( int n ) { return pData->buffer[n]; }
/** Returns a const reference to a character of this string. */

View file

@ -1,10 +0,0 @@
--- shell/source/unix/sysshell/recently_used_file_handler.cxx.orig 2014-09-19 18:15:07 UTC
+++ shell/source/unix/sysshell/recently_used_file_handler.cxx
@@ -40,6 +40,7 @@
#include <algorithm>
#include <functional>
#include <string.h>
+#include <time.h>
namespace /* private */ {
//########################################

View file

@ -0,0 +1,20 @@
--- solenv/bin/modules/installer/scriptitems.pm.orig 2014-02-27 09:52:15 UTC
+++ solenv/bin/modules/installer/scriptitems.pm
@@ -608,7 +608,7 @@
}
# Find the prereg directory entry so that we can create a new sub-directory.
- my $parentdir_gid = "gid_Brand_Dir_Share_Prereg_Bundled";
+ my $parentdir_gid = "gid_Brand_Dir_Share_Extensions";
my $parentdir = undef;
foreach my $dir (@{$dirsref})
{
@@ -645,7 +645,7 @@
'UnixRights' => '444',
'sourcepath' => File::Spec->catfile($ENV{'OUTDIR'}, "bin", $filename),
'specificlanguage' => "",
- 'modules' => "gid_Module_Dictionaries",
+ 'modules' => "gid_Module_Root_Brand",
'gid' => "gid_File_Extension_".$basename
};
push( @filelist, $onefile);

View file

@ -1,16 +0,0 @@
--- 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(

View file

@ -1,132 +0,0 @@
--- ucb/source/ucp/webdav/SerfCallbacks.hxx.orig 2014-02-25 08:24:42 UTC
+++ ucb/source/ucp/webdav/SerfCallbacks.hxx
@@ -23,7 +23,7 @@
#ifndef INCLUDED_CALLBACKS_HXX
#define INCLUDED_CALLBACKS_HXX
-#include <serf/serf.h>
+#include <serf.h>
extern "C" apr_status_t Serf_ConnectSetup( apr_socket_t *skt,
serf_bucket_t **read_bkt,
--- ucb/source/ucp/webdav/SerfCopyReqProcImpl.cxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfCopyReqProcImpl.cxx
@@ -24,7 +24,7 @@
#include "SerfCopyReqProcImpl.hxx"
-#include <serf/serf.h>
+#include <serf.h>
namespace http_dav_ucp
{
--- ucb/source/ucp/webdav/SerfDeleteReqProcImpl.cxx.orig 2014-02-25 08:24:42 UTC
+++ ucb/source/ucp/webdav/SerfDeleteReqProcImpl.cxx
@@ -24,7 +24,7 @@
#include "SerfDeleteReqProcImpl.hxx"
-#include <serf/serf.h>
+#include <serf.h>
namespace http_dav_ucp
{
--- ucb/source/ucp/webdav/SerfMkColReqProcImpl.cxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfMkColReqProcImpl.cxx
@@ -24,7 +24,7 @@
#include "SerfMkColReqProcImpl.hxx"
-#include <serf/serf.h>
+#include <serf.h>
namespace http_dav_ucp
{
--- ucb/source/ucp/webdav/SerfMoveReqProcImpl.cxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfMoveReqProcImpl.cxx
@@ -24,7 +24,7 @@
#include "SerfMoveReqProcImpl.hxx"
-#include <serf/serf.h>
+#include <serf.h>
namespace http_dav_ucp
{
--- ucb/source/ucp/webdav/SerfPostReqProcImpl.cxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfPostReqProcImpl.cxx
@@ -24,7 +24,7 @@
#include "SerfPostReqProcImpl.hxx"
-#include <serf/serf.h>
+#include <serf.h>
using namespace com::sun::star;
--- ucb/source/ucp/webdav/SerfPutReqProcImpl.cxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfPutReqProcImpl.cxx
@@ -26,7 +26,7 @@
#include "SerfPutReqProcImpl.hxx"
-#include <serf/serf.h>
+#include <serf.h>
namespace http_dav_ucp
{
--- ucb/source/ucp/webdav/SerfRequestProcessor.hxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfRequestProcessor.hxx
@@ -26,7 +26,7 @@
#include <apr_errno.h>
#include <apr_pools.h>
-#include <serf/serf.h>
+#include <serf.h>
#include "DAVTypes.hxx"
#include "DAVResource.hxx"
--- ucb/source/ucp/webdav/SerfRequestProcessorImpl.hxx.orig 2014-02-25 08:24:42 UTC
+++ ucb/source/ucp/webdav/SerfRequestProcessorImpl.hxx
@@ -22,7 +22,7 @@
#ifndef INCLUDED_SERFREQUESTPROCESSORIMPL_HXX
#define INCLUDED_SERFREQUESTPROCESSORIMPL_HXX
-#include <serf/serf.h>
+#include <serf.h>
#include <sal/types.h>
#include "DAVRequestEnvironment.hxx"
--- ucb/source/ucp/webdav/SerfSession.cxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfSession.cxx
@@ -30,7 +30,7 @@
#include "ucbhelper/simplecertificatevalidationrequest.hxx"
#include "AprEnv.hxx"
-#include <apr/apr_strings.h>
+#include <apr_strings.h>
#include "DAVAuthListener.hxx"
#include "SerfTypes.hxx"
--- ucb/source/ucp/webdav/SerfTypes.hxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfTypes.hxx
@@ -24,7 +24,7 @@
#ifndef INCLUDED_SERFTYPES_HXX
#define INCLUDED_SERFTYPES_HXX
-#include <serf/serf.h>
+#include <serf.h>
typedef serf_connection_t SerfConnection;
--- ucb/source/ucp/webdav/SerfUri.hxx.orig 2014-02-25 08:24:43 UTC
+++ ucb/source/ucp/webdav/SerfUri.hxx
@@ -23,7 +23,7 @@
#ifndef INCLUDED_SERFURI_HXX
#define INCLUDED_SERFURI_HXX
-#include <apr-util/apr_uri.h>
+#include <apr_uri.h>
#include <rtl/ustring.hxx>
#include "DAVException.hxx"

View file

@ -34,8 +34,8 @@ OpenOffice does need $LANG to be set to a suitable value.
4. Wiki Publisher Extension
---------------------------
The Wiki Publisher extension can be installed from
%%PRINSTALLATION_BASEDIR%%/extensions/
The Wiki Publisher extension is now an integrated extension and manual
installation with the extension manager is no longer needed.
5. If you run into problems
---------------------------