on FreeBSD 10, and amd64 on earlier versions.
SSP_UNSAFE is added to disable in a port if it fails to build, but
this should only be used in rare circumstances such as kernel modules.
Otherwise, the port may just be failing due to lack of respecting
LDFLAGS.
On FreeBSD 10, this uses an ldscript in /usr/lib/libc.so to pull in
libssp_nonshared.a to address issues linking on i386 [1].
On earlier FreeBSD versions the WITH_SSP knob will add -lssp_nonshared
to LDFLAGS on i386. This is not needed on amd64. However, several hundred
ports do not currently respect LDFLAGS, so this support is disabled currently
as it causes build failures if a dependency is looking for the stack_chk
symbols.
Many thanks to jlh@ for this as he had many years of patience in getting
all of the necessary pieces [1][2] in.
[1] http://svnweb.freebsd.org/base/head/lib/libc/libc.ldscript?revision=251668&view=markup
PR: ports/138228 [2]
Submitted by: jlh (bsd.ssp.mk based on)
Reviewed by: bapt
With hat: portmgr
exp-runs done: 37 over a month on 91i386,91amd64,10i386,10amd64
Instead of hardcoding the compiler target as FreeBSD, use the OPSYS
variable to it. This makes no practical difference for FreeBSD, but
it helps DragonFly get properly configured.
Approved by: gerald
It's value is "--with-libiconv-prefix=/usr/local" for systems
before 100043 with ports libiconv and to use at systems post
100043 with base iconv it's value is "" (NULL).
Co-authors: bapt, madpilot and bsam (me)
full bootstrap of GCC and just running a simple build.
Bootstrapping is the default upstream, and for very stable and old
flavors of GCC we disable this by default since that is a huge win
in terms of build time of the port. No change in default behavior
for this port -- for the time being we continue to bootstrap.
Update to the 20130822 snapshot of GCC 4.8.2.
Adjust the scheme used for PORTVERSION such that snapshots compare
less than the actual release (and no EPOCH bump becomes necessary
at end of life of a release series). [1]
Rename VERSIONSTRING to the standard DISTVERSION. [2]
Add more notes on the various variables carrying version information.
Suggested by: tijl [1], crees [2]
It brings bison as a build dependency in case it is set the following way:
USES= bison or USES= bison:build
it brings bison as a run dependency in case it is set the following way:
USES= bison:run
it brings bison both as a run and build dependency in case it the set the following way:
USES= bison:both
While here trim some headers
Convert some USE_GNOME= gnomehack to USES= pathfix
instead of including a pre-built version of the Eclipse Java Compiler
(ECJ) ourselves. [1]
On the way, update to the 20130113 snapshot of GCC 4.8.0.
PR: 175072
to the unwinder interface to get FreeBSD/ia64 build. [1]
Update to the 20121216 snapshot of GCC 4.8.0.
Submitted by: Anton Shterenlikht <mexas@bristol.ac.uk> [1]
On the way rename %%GCC_VER%% in pkg-plist to %%GCC_VERSION%% and
make the Makefile machinery a bit more generic to minimize differences
between lang/gcc ports based on releases and those based on snapshots.
On the way, update to the 20120930 snapshot of GCC 4.8.0.
Submitted by: jkim [1]
an issue that is being in the works right now.)
Cut down the comments at the top of Makefile per recent guidance.
Revamp the handling of different languages (frontends, run-times)
by GCC to allow for orthogonal setting them in the future. [1]
Print the list of languages being built as part of pre-everything
and shorten the output of operating system and version there.
Inspired by: jkim [1]
a rougher ride, as this release series -- just branched off GCC 4.7
-- is going to see a lot of active and often invasive development.
This port is for early exposure and not production use at all.
Feature safe: yes