This commit is earlier than the maintainer timeout but saves the
port from being removed because Python 2.7 expires today.
PR: 252158
Submitted by: sdalu@sdalu.com
Some changes have been made in this release that break backwards
compatibility. Let USES=gmake force users to upgrade to this version so
port maintainers don't have to support older versions.
PR: 245725
Exp-run by: antoine
Approved by: portmgr (antoine)
There's a race condition when compiling with 18-core POWER9 (72 threads):
In file included from ../../../../../src/mame/drivers/konamigq.cpp:76:
../../../../../src/devices/cpu/tms57002/tms57002.h:208:10: fatal error: '../../emu/cpu/tms57002/tms57002.hxx' file not found
#include "../../emu/cpu/tms57002/tms57002.hxx"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
a symbol matches multiple clauses the last one takes precedence. If the
catch-all is last it captures everything. In the case of Qt5 libraries
this caused all symbols to have a Qt_5 label while some should have
Qt_5_PRIVATE_API. This only affects lld because GNU ld always gives the
catch-all lowest priority.
Older versions of Qt5Webengine exported some memory allocation symbols from
the bundled Chromium. Version 5.9 stopped exporting these [1] but the
symbols were kept as weak wrappers for the standard allocation functions to
maintain binary compatibility. [2][3] The problem is that the call to the
standard function in these weak wrappers is only resolved to the standard
function if there's a call to this standard function in other parts of
Qt5Webengine, because only then is there a non-weak symbol that takes
precedence over the weak one. If there's no such non-weak symbol the call
in the weak wrapper resolves to the weak wrapper itself creating an infinite
call loop that overflows the stack and causes a crash. Some of the
allocation functions are variants of C++ new and delete and it probably
depends on the compiler whether these variants are used in other parts of
Qt5Webengine.
Remove the weak wrappers (make them Linux specific). This isn't binary
compatible but we are already breaking that with the changes to the symbol
versions.
[1] https://github.com/qt/qtwebengine/commit/5c2cbfccf9aafb547b0b30914c4056abd25942a4
[2] https://github.com/qt/qtwebengine/commit/2ed5054e3a800fa97c2c9e920ba1e6ea4b6ef2a5
[3] https://github.com/qt/qtwebengine/commit/009f5ebb4bd6e50188671e0815a5dae6afe39db5
Bump all ports that depend on Qt5.
PR: 234070
Exp-run by: antoine
Approved by: kde (adridg)
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Change x11/xorgproto to become a build time dependency when added to
USE_XORG. Change the dependency to be on the port, rather than a file the
port installs.
Fix fallout.
Bump portrevision on depending ports.
PR: 230909
Reviewed by: eadler
Approved by: portmgr (antoine)
Obtained from: https://github.com/FreeBSDDesktop/freebsd-ports/tree/feature/xorgproto
exp-run: antoine
Differential Revision: https://reviews.freebsd.org/D16906
In file included from ../../../../../src/emu/http.cpp:12:
In file included from ../../../../../src/lib/util/server_ws_impl.hpp:8:
In file included from ../../../../../src/osd/asio.h:34:
In file included from ../../../../../3rdparty/asio/include/asio.hpp:21:
In file included from ../../../../../3rdparty/asio/include/asio/basic_datagram_socket.hpp:20:
In file included from ../../../../../3rdparty/asio/include/asio/basic_socket.hpp:40:
In file included from ../../../../../3rdparty/asio/include/asio/detail/reactive_socket_service.hpp:22:
In file included from ../../../../../3rdparty/asio/include/asio/buffer.hpp:27:
In file included from ../../../../../3rdparty/asio/include/asio/detail/string_view.hpp:23:
/usr/include/c++/v1/experimental/string_view:11:2: error: "<experimental/string_view> has been removed. Use <string_view> instead."
PR: 230401
Reported by: antoine (via exp-run)
From now on, ports that depend on Qt4 will have to set
USES= qt:4
USE_QT= foo bar
ports depending on Qt5 will use
USES= qt:5
USE_QT= foo bar
PR: 229225
Exp-run by: antoine
Reviewed by: mat
Approved by: portmgr (antoine)
Differential Revision: →https://reviews.freebsd.org/D15540
- Use at least clang50 to build mame/mess. GCC is segfaulting during build on 10.4 and it doesn't build with clang.
- Declare some dependencies explicitly to make Q/A happy
../../../../../src/osd/modules/render/drawbgfx.c:174:8: error: no member named 'sdlSetWindow' in namespace 'bgfx'
bgfx::sdlSetWindow(window().sdl_window());
~~~~~~^
Reported by: pkg-fallout
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
c++14-lang, c++0x, c11, or gcc-c++11-lib.
PR: 219275
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using using Mk/bsd.octave.mk which in turn has USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
c++11-lang, c++0x, c11, or gcc-c++11-lib.
PR: 216707
../../../../../src/emu/webengine.c:333:21: error: ordered comparison between pointer and zero
('int *' and 'int')
if ((&data_length > 0) && (sizeof(file_name) > 0))
~~~~~~~~~~~~ ^ ~
Reported by: antoine (via exp-run)
lang/gcc which have moved from GCC 4.8.5 to GCC 4.9.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
In particular that is ports with USE_GCC=yes, USE_GCC=any, or one of
gcc-c++11-lib, openmp, nestedfct, c++11-lib as well as c++14-lang,
c++11-lang, c++0x, c11 requested via USES=compiler.
At least on DragonFly's base compiler (gcc 5.2), the getc and ungetc
routines in mame/mess were getting clobbered by <stdio.h>. Rename
getc and ungetc to mame_getc and mame_ungetc to fix. For some reason,
macro definitions did not work so I had to patch every instance
individually.
I completely reworked these unmaintained ports. I turned mess into a
proper slave port as the differences from mame were few. Some notes:
* converted to GitHub (this saved messing with the double-zip /
dos2unix per file arrangement, no more post-extract target)
* got rid of patchlevel support accordingly
* got rid of DIST_SUBDIR accordingly
* Clang from FreeBSD 10 cannot build this! It fails will some kind of
signal. I did not test on FreeBSD 11 yet. For now, degrade the
ports to use GCC always. Note the makefiles were hardcoded to GCC.
I fixed the hardcoding so it uses environment but perhaps it's known
that mame/mess is now gcc-only
* Some options are no longer optional, e.g. BUILTIN_DEBUGGER, SDL2
These were made unconditional accordingly.
* mess is now a minimal slave port. There are some additions to mame
Makefile to support the slave.
* I used PORTDOCS and PORTEXAMPLE to simplify each pkg-plist
* DragonFly support still pending. This port discovered a bug in
GCC 5.1 release which has been fixed recently, so the base compiler
has to be upgraded before testing can resume.
the 32 ports that still use it. Bump PORTREVISION on their dependent
ports except the ones that depend on these:
audio/libogg
audio/libvorbis
devel/pcre
ftp/curl
graphics/jpeg
graphics/libart_lgpl
graphics/tiff
textproc/expat2
textproc/libxslt
In these cases the same trick as in the recent gettext update is used.
The ports install a symlink with the old library version. When enough
of their dependent ports have had regular updates the remaining ones can
get a PORTREVISION bump and the links can be removed.
Also remove the devel/pcre dependency from USE_GNOME=glib20. It causes
over 2200 packages to depend on devel/pcre while less than 200 actually
link with it. The glib20 package still depends on devel/pcre so this
should not make a difference for ports with USE_GNOME=glib20. Also,
libdata/pkgconfig/glib-2.0.pc lists pcre as a private library so
USE_GNOME=glib20 should not propagate it.
PR: 195724
Exp-run by: antoine
Approved by: portmgr (antoine)
This port has a post-extract target that wants to use native unzip
on an extracted file. This is an issue for DragonFly, but tar can
handle the zip file just file on both platforms, so switch to that.
DragonFly still has the incomplete FILE that it inherited from FreeBSD,
which is really a pain when FILE is a parameter in c++ routines. This
adds an extra patch for DragonFly to use an alternative default logging
callbacks to all mame to finally build on this platform.
While here:
- remove use of ${PORTNAME} where "mame" is the only correct value
- use ".zip" instead of extract variable
- Unmask installation commands
- Group mkdir commands into one
- Use NOT_FOR_ARCHS instead of conditional BROKEN
- Convert to USES=python
- Remove unnecessary conversion of -lpthread => -pthread