sufficiently large objects returned by the "new" operator. This
requires that the object have 16-byte alignment. The FreeBSD
malloc() implementation does the correct thing here, but OpenOffice
has a couple of internal memory allocator implementations that only
align to 8-byte boundaries at most. In addition OpenOffice overrides
the new operator to interpose a couple of layers of wrappers. If
the --enable-debug option is passed to configure, the wrapper adds
8 to the size passed to the allocator and adds an 8 byte offset to
the pointer returned by the allocator to make room for a signature
that it adds to the beginning of the memory block (the signature
is validated and the inverse transformation is done when the memory
is freed). This breaks the proper alignment done by the mamory
allocator. Fix these problems by adding an EXTRA_PATCH that teaches
the internal OpenOffice memory allocators to do 16-byte alignment
and to use a 16-byte offset in the "new" wrapper, and apply this
patch on amd64 if clang 4.0 is the system compiler.
Pass the --with-alloc=system flag to configure so that the libc
version of malloc() is used instead of one of the internal memory
allocator implementations.
Fix a few mis-sorts in BUILD_DEPENDS and don't list www/p5-libwww
twice.
Fix a compile error in the bridges code when --enable-debug is
specified.
Fix a sporadic failure in the clear_001 QA test that occasionally
breaks the build. The nominal mutex hold time is 5 seconds, but
because it is only checked one per second, the actual time is more
likely to be around 6 seconds. When the before time value is
subtracted from the after time value, the result might be 7 whole
seconds and a large negative number of nanoseconds. Since the
pass/fail check only looks at the difference in the seconds fields,
it will fail the "< 7" assertion. Relax the assertion to "<= 7"
as a quick fix.
The editors/openoffice-4 port does not need poppler. It is only
needed for the PDF import extension, which is not built in OpenOffice
4.1.x.
Cherrypick some cleanups from PR 216245 [1]:
* The --without-stlport configure flag is not needed.
* Pass the -with-build-version flag to configure (but use ${PKGNAME}
for completeness instead of just ${PORTNAME}-${PORTVERSION})
* Tweak a comment in the Makefile.
PR: 216245
Submitted by: pfg [1]
pointer comparision fixes required to compile with clang 4.0, so
delete patch-clang40. Also,
patch-lingucomponent_source_spellcheck_spell_sspellimp.cxx has been
incorporated upstream.
On amd64, clang++ 4.0 uses the MOVAPS SSE instruction to initialize
sufficiently large objects returned by the "new" operator. This
requires that the object have 16-byte alignment. The FreeBSD
malloc() implementation does the correct thing here, but OpenOffice
has a couple of internal memory allocator implementations that only
align to 8-byte boundaries at most. In addition OpenOffice overrides
the new operator to interpose a couple of layers of wrappers. If
the --enable-debug option is passed to configure, the wrapper adds
8 to the size passed to the allocator and adds an 8 byte offset to
the pointer returned by the allocator to make room for a signature
that it adds to the beginning of the memory block (the signature
is validated and the inverse transformation is done when the memory
is freed). This breaks the proper alignment done by the mamory
allocator. Fix these problems by adding an EXTRA_PATCH that teaches
the internal OpenOffice memory allocators to do 16-byte alignment
and to use a 16-byte offset in the "new" wrapper, and apply this
patch on amd64 if clang 4.0 is the system compiler.
Pass the --with-alloc=system flag to configure so that the libc
version of malloc() is used instead of one of the internal memory
allocator implementations.
Fix a few mis-sorts in BUILD_DEPENDS and don't list www/p5-libwww
twice.
Fix a sporadic failure in the clear_001 QA test that occasionally
breaks the build. The nominal mutex hold time is 5 seconds, but
because it is only checked one per second, the actual time is more
likely to be around 6 seconds. When the before time value is
subtracted from the after time value, the result might be 7 whole
seconds and a large negative number of nanoseconds. Since the
pass/fail check only looks at the difference in the seconds fields,
it will fail the "< 7" assertion. Relax the assertion to "<= 7"
as a quick fix.
Add PowerPC64 support. [1]
Add a section to pkg-message mentioning that spell check dictionaries
for the desired languages should be installed. [2]
Various fixes from PR 216245: [3]
* Add option for mysql driver, default off.
* Poppler is only needed for the optional PDF Import extension
(and we only need poppler and not poppler-glib).
* The --without-stlport configure flag is not needed.
* Pass the -with-build-version flag to configure (but use ${PKGNAME}
for completeness instead of just ${PORTNAME}-${PORTVERSION})
* Tweak a comment in the Makefile.
PR: 215130, 212103, 216245
Submitted by: Curtis Hamilton <hamiltcl@verizon.net> [1]
Submitted by: Arrigo Marchiori <ardovm AT yahoo.it> [2]
Submitted by: pfg [3]
In version 3.6.3, Ice started detecting 64 bit platforms by
checking __WORDSIZE. When using C++98/03, __STDC_LIMIT_MACROS isn't
set by default and __WORDSIZE is always set to 32, even if the
required headers weren't included beforehand. Until a proper
fix is available in base (e.g. not setting __WORDSIZE at all if
__STDC_LIMIT_MACROS isn't defined), we detect if C++11 or newer
is used and only rely on __WORDSIZE in this case, otherwise
we fall back to detecting the platform using other macros.
PR: 216609
Reported by: jbeich
Use devel/openmp to provide OpenMP runtime instead of the entire LLVM
(submitted by mandree@). This allows to use LLVM 3.9 at build time,
without fearing any dependency to multiple LLVM versions at runtime
(Mesa pulls LLVM 3.7 for instance).
Change `COMPILER_TYPE` to `CHOSEN_COMPILER_TYPE`, (submitted by
mandree@). This was blocking bug 199098.
Include the following patch from upstream, which fixes a regression
(suggested by upstream):
f7bc2b3338.patch
PR: 216561
Submitted by: mandree (CHOSEN_COMPILER_TYPE and devel/openmp dep.)
Approved by: bapt (mentor)
Differential Revision: https://reviews.freebsd.org/D9363
mkpatch
-------
Makes patch from (all or pattern matched) modified files in WRKSRC directory.
pcheck
------
Check for various errors that portlint don't catch:
* misspellings in description files
* files with no final new lines
* leading articles in COMMENT, tabs in WWW lines
pclean
------
Keeps your ports svn repo tidy, removes work directories, leftover files
and reverts any changes made.
pcommit
-------
Wrapper for svn commit, removes and adds files, sets props, etc.
pfind
-----
Simple port's search wrapper. Search parameters include build dependency,
category, name, maintainer, regexp pattern and slave ports.
pkg-deleaf
----------
Leaf package remover with nice dialog interface.
plist-sort
----------
Smart plist sorter which understands PLIST_SUB substitutions and options
determined conditional files.
plist-update
------------
Script utilizing check-plist port's framework target output for updating
outdated pkg-plist, understands PLIST_SUB substitutions and sorts
final files list.
plog
----
Easy way to send poudriere build logs to your FreeBSD account by scp or
view them on your computer.
reinplace-check
---------------
Checks for files with stale REINPLACE_CMD actions or shows diff's of them.
tbuilder
--------
Poudriere testport wrapper that makes easier to queue multiple builds of:
- specific port
- ports linking with certain library
- ports with certain names
- ports with Makefile matching regular expression
- slave ports etc.
upgrade-base
------------
Helper script for upgrading FreeBSD base. Detects and sets number of make
jobs possible. After upgrade rebuilds ports with kernel modules and offers
to remove old files using dialog inerface.
upgrade-ports
-------------
Helper script for updating ports tree and upgrading your ports. Combining
information gathered from UPDATING and MOVED files tries to provide upgrade
process as problem free as possible. This includes showing new UPDATING
entries since last upgrade, ports origin move tracking, simple conflict
resolution, removal of obsolete ports and sanity checking afterwards.
Before any change is made user is presented with summary of changes
intended similiar to pkg upgrade.
In file included from mozilla/ipc/contentproc/plugin-container.cpp:7:
In file included from ../../dist/include/nsXPCOM.h:10:
In file included from ../../dist/include/nscore.h:20:
In file included from ../../dist/include/mozilla/mozalloc.h:16:
In file included from objdir/dist/stl_wrappers/new:44:
In file included from objdir/dist/system_wrappers/new:3:
/usr/include/c++/v1/new:132:1: error: function declared '[[noreturn]]' after its first declaration
_LIBCPP_NORETURN _LIBCPP_FUNC_VIS void __throw_bad_alloc(); // not in C++ spec
^
/usr/include/c++/v1/__config:273:30: note: expanded from macro '_LIBCPP_NORETURN'
# define _LIBCPP_NORETURN [[noreturn]]
^
../../dist/include/mozilla/throw_gcc.h:35:1: note: declaration missing '[[noreturn]]' attribute is here
__throw_bad_alloc(void)
^
PR: 216186
Submitted by: dim
Obtained from: upstream
1) Create a platform-specific (FreeBSD/DF, NetBSD, Linux, Solaris) version
of /etc/shells for the builders. This resolves installation errors on
packages that manipulate /etc/shells.
2) Give in and finally mount /usr/games if available. This is a
performance impact ultimately caused by removing the strfile
application from ports with the faulty logic that the 400-line C
program can't exist because it's in a non-standard location in base.
The alternative is that Synth can't build any applications that
require strfile from games, e.g. all fortune ports. Thanks! <sarcasm/>