Clean up support for FreeBSD 11.2.
While here, modernize some comments in Mk/bsd.*.mk.
Note that graphics/drm-fbsd11.2-kmod is not renamed yet, this was somewhat
under discussion.
Submitted by: rene
Reviewed by: antoine, jbeich, mat, zeising
Differential Revision: https://reviews.freebsd.org/D21974

Bump PORTREVISION for ports depending on the canonical version of GCC
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

audio/supercollider: Update to 3.10.2
The previous version, 3.9.3, built fine on all FreeBSD releases but the port
itself was less of use in its state because SuperCollider's own interpreter
("sclang") always crashed when indexing various help files. So users were
able to start the graphical IDE ("scide") but were then on their own to get
any use out of it.
The update to 3.10.2 fixes that problem but it comes with some drawbacks:
SuperCollider has shipped Boost libraries of the 1.66 release and those
don't compile with Clang 8. Using the Boost libraries from the ports tree
instead won't work either, as the 3.10.2 release of SuperCollider isn't
compatible with that version, yet.
Switching to GCC also won't work - it builds fine on all releases but

Fix Qt5 symbol version scripts to put the catch-all clause first. When
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

Change cmake default behaviour to outsource.
Ports that build out of source now simply can use "USES=cmake"
instead of "USES=cmake:outsource". Ports that fail to build
out of source now need to specify "USES=cmake:insource".
I tried to only set insource where explictely needed.
PR: 232038
Exp-run by: antoine

Bump PORTREVISION for ports depending on the canonical version of GCC
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

Merge lang/qt5-qml and x11-toolkits/qt5-quick into x11-toolkits/qt5-declarative
- There was no obvious reason to split these ports, and it makes
porting simpler; the set of ports using either mostly coincided.
Exp-run by: antoine
PR: 223687
PR: 232751

audio/supercollider: Remove unused CMAKE_ENV
CMAKE_ENV has not been supported since 2015. The build has never
used it so replacing it with CONFIGURE_ENV should not be needed.
It was added in r436552 by me.

New port: audio/supercollider
SuperCollider is a programming language for real time audio synthesis
and algorithmic composition.
The language interpreter runs in a cross platform IDE and communicates
via Open Sound Control with one or more synthesis servers. The
SuperCollider synthesis server runs in a separate process or even on a
separate machine so it is ideal for realtime networked music.
SuperCollider was developed by James McCartney and originally released
in 1996. He released it under the terms of the GNU General Public
License in 2002 when he joined the Apple Core Audio team. It is now
maintained and developed by an active and enthusiastic community. It
is used by musicians, scientists, and artists working with sound.
WWW: http://supercollider.github.io/
PR: 208443
Submitted by: Tobias Brodel <brittlehaus@gmail.com>
Approved by: mat (mentor)
Differential Revision: https://reviews.freebsd.org/D10043