| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
or less ended up identical to lang/gcc5 now that we differentiate between
lang/gccX-devel and lang/gccX ports, by (or as) a meta-port that pulls in
the respective lang/gccX port (based on the setting of $GCC_DEFAULT) and
defines gcc, g++, and gfortran as symlinks to the respective versioned
binaries.
This is the end of a long journey establishing this infrastructure
which is now similar to the one of the python ports, for example,
and makes upgrading the default as well as adjusting the default
locally a lot easier.
(PORTVERSION remains at 5.4.0 for now to avoid PORTEPOCH, but
PORTREVISION gets a bump.)
Suggested by: tijl (a while ago)
Notes:
svn path=/head/; revision=441883
|
|
|
|
|
|
|
|
|
|
|
| |
This define is already in upstream.
The gcc*-devel ports will pickup the commit from upstream.
Submitted by: kan@
Approved by: gerald@ (maintainer)
Notes:
svn path=/head/; revision=438061
|
|
|
|
|
|
|
|
|
| |
fix the armv6 bootstrap.
Reported by: andreast, jbeich
Notes:
svn path=/head/; revision=437982
|
|
|
|
|
|
|
| |
Submitted by: andreast
Notes:
svn path=/head/; revision=437475
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Collection (requested by USE_GCC=yes and various USES=compiler
invocations) from GCC 4.9.4 to GCC 5.4.
files/patch-arm-support and files/patch-gcc_system.h have become
obsolete. New patches files/patch-arm-unwind-cxx-support and
files/patch-libc++ help support arm targets and new libc++ in base.
ONLY_FOR_ARCHS now also includes arm.
A new option GRAPHITE_DESC, off by default for now, adds support for
Graphite loop optimizations.
Finally, conflicts with other lang/gcc* ports are adjusted suitably.
In terms of changes for users, this upgrade brings the following:
The default mode for C is now -std=gnu11 instead of -std=gnu89.
New warning options -Wc90-c99-compat and -Wc99-c11-compat may
prove useful on that front.
The C++ front end now has full C++14 language support including
C++14 variable templates, C++14 aggregates with non-static data
member initializers, C++14 extended constexpr, and more.
The Standard C++ Library (libstdc++) has full C++11 support and
experimental full C++14 support. It uses a new ABI by default.
There have been significant improvements to inter-procedural optimizations
and link-time optimization such as One Definition Rule based merging of C++
types as well as register allocation.
OpenMP 4.0 specification offloading features are now supported by the C,
C++, and Fortran compilers. Cilk Plus, an extension to the C and C++
languages to support data and task parallelism, has been added as well.
New warning options -Wswitch-bool, -Wlogical-not-parentheses,
-Wbool-compare and -Wsizeof-array-argument may prove useful as
may new preprocessor directives __has_include, __has_include_next,
and __has_attribute.
GCC can now be built as a shared library for embedding in other processes
(such as interpreters), suitable for Just-In-Time compilation to machine
code. This provides a C API and a C++ wrapper API.
Many code generation improvements for AArch64, ARM, support for
AVX-512{BW,DQ,VL,IFMA,VBMI} and Intel MPX on x86-64, and generally
improvements on many targets.
The Local Register Allocator (LRA) now contains a rematerialization
subpass and is able to reuse the PIC hard register on x86/x86-64 to
improve performance of position independent code.
https://gcc.gnu.org/gcc-5/changes.html has a more extensive set of
changes and https://gcc.gnu.org/gcc-5/porting_to.html has a solid
overview of issue you may encountering porting to this new version.
PR: 216707, 218125
Tested by: antoine (-exp runs)
Supported by: jbeich, tcberner, and others
Notes:
svn path=/head/; revision=437437
|
|
|
|
|
|
|
|
|
| |
an arch.
Reported by: andreast
Notes:
svn path=/head/; revision=437435
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and lang/gcc48, but is something we have in lang/gcc47 and that lang/gcc
carried over from the days it was about GCC 4.7 (so surviving both the
transitions to GCC 4.8 and recently GCC 4.9).
The underlying issue was addressed upstream 2014-10-24 with r216679,
and in FreeBSD head 2013-09-06 by theraven@ who fixed fixed our
iconv.h to not include stdbool.h.
PR: 161417
Notes:
svn path=/head/; revision=427827
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While testing the clang390-import branch, I ran into the following
errors building lang/gcc49:
In file included from /wrkdirs/usr/ports/lang/gcc49/work/gcc-4.9.4/gcc/c/c-objc-common.c:33:
In file included from /usr/include/c++/v1/new:70:
/usr/include/c++/v1/exception:267:5: error: no member named 'fancy_abort' in namespace 'std::__1'; did you mean simply 'fancy_abort'?
_VSTD::abort();
^~~~~~~
/usr/include/c++/v1/__config:451:15: note: expanded from macro '_VSTD'
#define _VSTD std::_LIBCPP_NAMESPACE
^
/wrkdirs/usr/ports/lang/gcc49/work/gcc-4.9.4/gcc/system.h:685:13: note: 'fancy_abort' declared here
extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
^
1 error generated.
What is happening here, is that the source file includes gcc/system.h,
which defines abort to fancy_abort, and then the source file includes
<new>, which attempts to call _VSTD::abort() (the _VSTD is a libc++
alias for std::). The macro definition then causes the above breakage.
Newer gcc ports, such as gcc5 and gcc6 don't show this issue, because
upstream gcc first added an include of <algorithm> (which indirectly
includes <new>) in r217348 [1], and later even add a direct include of
<new> in r232736 [2].
Fix it for this version, by adding the direct include of <new> to
gcc/system.h. This makes the 'second' includes of <new> in some .c
files superfluous, but at least they won't result in errors.
[1] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=217348
[2] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=232736
Approved by: portmgr (antoine)
PR: 212465
Notes:
svn path=/head/; revision=427110
|
|
|
|
| |
Notes:
svn path=/head/; revision=426982
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Collection as well as the lang/gcc port from GCC 4.8.5 to GCC 4.9.4!
See http://gcc.gnu.org/gcc-4.9/changes.html for an extensive list of
changes and http://gcc.gnu.org/gcc-4.9/porting_to.html for information
on how to port to that new version (if necessary).
files/java-patch-hier required adjustments, gcc/files/patch-arm-libcpp
is not needed any longer (merged upstream), and we're also loosing the
local Stack Protector patches/backports.
PR: 196712
Tested by: antoine (-exp runs)
Supported by: antoine, kwm, and others
Notes:
svn path=/head/; revision=426565
|
|
|
|
|
|
|
| |
Discussed with: gerald@
Notes:
svn path=/head/; revision=416337
|
|
|
|
|
|
|
|
|
|
| |
lang/gcc.
PR: 203751, 186852 [1]
Submitted by: software-freebsd@interfasys.ch [1]
Notes:
svn path=/head/; revision=401086
|
|
|
|
|
|
|
|
|
|
|
|
| |
While the feature has a great value, it is right now breaking the build of
lang/gcc. Given the importance of lang/gcc it is better to revert now and
reapply the patch once it has been fixed and passes an exp-run on all supported
version
With hat: portmgr
Notes:
svn path=/head/; revision=384834
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Upstream gcc 4.8 doesn't have support for this - it'll create threads,
but it won't do any of the thread affinity stuff for FreeBSD.
This allows for OMP_PROC_BIND=true to bind threads to their initial
CPUs, leading to some pretty drastic improvements in performance
for certain NUMA workloads.
Approved by: gerald
Notes:
svn path=/head/; revision=384814
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The larger part of the patch is a backport from gcc trunk which is sent
upstream for approval.
Thanks to Sean Bruno for testing, Andrew Turner for explaining me fine details
and Gerald for approving.
Approved by: gerald (maintainer)
Notes:
svn path=/head/; revision=376266
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add pkg-message that references the need to use -Wl,-rpath=... . [1]
- Replace USE_BZIP2 by USES=tar:bzip2.
- No longer install rebuild-gcj-db47 (which requires bash among others)
and its man page.
Bump PORTREVISION.
PR: 185902 [1]
Notes:
svn path=/head/; revision=352664
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GCC 4.6.4 to GCC 4.7.3. This entails updating the lang/gcc port as
well as changing the default in Mk/bsd.default-versions.mk.
This adds powerpc64 as a supported architecture (and removes ia64,
though it can be supported by manually installing lang/gcc48).
New binaries %%GNU_HOST%%-gcc-ar47, %%GNU_HOST%%-gcc-nm47, and
%%GNU_HOST%%-gcc-ranlib47 are provided to support link-time
optimization (LTO) which scales significantly better.
And it adds support for indirect functions (IFUNCS), experimental
support for transactional memory in the compiler as well as a supporting
run-time library called libitm, a new string length optimization pass,
and support for atomic operations specifying the C++11/C11 memory model.
Version 3.1 of the OpenMP specification is now supported for the C,
C++, and Fortran compilers.
GCC accepts the options -std=c11 and -std=gnu11 for the C11 revision
of the ISO C standard which inlcude support for unicode strings,
nonreturning functions (_Noreturn and <stdnoreturn.h>), alignment
support (_Alignas, _Alignof, max_align_t, <stdalign.h>), and a
__builtin_complex built-in function.
The C++ frontend now accepts the -std=c++11, -std=gnu++11, and
-Wc++11-compat options and implements many C++11 features of the
language including extended friends syntax, explicit override
control, non-static data member initializers, user-defined literals,
alias declarations, delegating constructors, atomic classes, and more.
The C++ standard library and Fortran frontend have received many
improvements. See http://gcc.gnu.org/gcc-4.7/changes.html for an
extense list of changes; http://gcc.gnu.org/gcc-4.7/porting_to.html
for information on how to port to that new version.
PR: 182136
Supported by: Christoph Moench-Tegeder <cmt@burggraben.net> (fixing many ports)
Tested by: bdrewery (two -exp runs)
Notes:
svn path=/head/; revision=347808
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
if present instead of relying on the port we actually depend on.
The issue is that /usr/include/iconv.h has #include <stdbool.h> which
in turn, since both are included very late in the game, conflicts with
similar definintions by libcpp itself.
libstdc++ does not seem to require adjustments, so PR 161417 may not
be relevant in full.
PR: 161417
Notes:
svn path=/head/; revision=326453
|
|
|
|
|
|
|
|
|
| |
and later out of the box, no more extra patches necessary.
Feature safe: yes
Notes:
svn path=/head/; revision=293068
|
|
|
|
|
|
|
| |
Tested by: avg, kargl
Notes:
svn path=/head/; revision=287731
|
|
|
|
|
|
|
|
| |
generation on i386 to default to i486 on FreeBSD 6 and above is now
upstream, too, so we can shed our specific patch.
Notes:
svn path=/head/; revision=269857
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This addresses the pollution of common namespace by
share/python/aotcompile.py and share/python/classfile.py which are
now saved in version-specific directories.
By means of an extra patch default code generation on i386 now
defaults to i486 on FreeBSD 6 and above. [1]
Submitted by: tijl [1]
Reported by: Yuri Karaban <tech@askold.net> [1]
PR: 154364 [1]
Notes:
svn path=/head/; revision=269511
|
|
|
|
|
|
|
|
| |
FreeBSD/ia64 that I made upstream and together with another, which is a
local patch for now, ia64 can become part of ONLY_FOR_ARCHS.
Notes:
svn path=/head/; revision=261003
|
|
|
|
|
|
|
| |
to build on i386 any longer.
Notes:
svn path=/head/; revision=185812
|
|
|
|
|
|
|
|
|
|
| |
This has a patch of mine to account for the removal of /usr/bin/objformat
on 7-CURRENT and defaults to elf instead of aout in this case.
Add a temporary patch to fix the bootstrap on i386.
Notes:
svn path=/head/; revision=185476
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adjust pkg-plist to remove some secondary programs which we no longer
provide after the import of the Eclipse Java frontend.
Properly set INFO for those cases where we actually do not build libgomp,
and thus not libgomp.info either.
Move ia64 to NOT_FOR_ARCHS from BROKEN, like we did with lang/gcc43.
Remove the cklatest target and files/patch-gengtype-yacc.y.
Notes:
svn path=/head/; revision=184370
|
|
|
|
|
|
|
| |
is upstream now.
Notes:
svn path=/head/; revision=181612
|
|
|
|
|
|
|
|
|
| |
This adds a libgomp info page (the other changes to INFO and MAN are
just to sort these two properly) and we need to add a temporary patch
to fix an issue triggered by FreeBSD headers.
Notes:
svn path=/head/; revision=181300
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
version number to libdata/pkgconfig/libgcj.pc. Fix packaging on amd64
on the way (enabling Java actually was a noop, except for pkg-plist).
Update lang/gcc41 to the 20061013 snapshot of GCC 4.1.2.
These changes allow us to remove the CONFLICT between lang/gcc41 and
lang/gcc42 when building with Java support (the default on i386).
Approved by: portmgr (erwin)
Notes:
svn path=/head/; revision=175407
|
|
|
|
|
|
|
|
| |
mf-runtime.h no longer pollutes public filename space, so we can
remove our workaround. Refresh files/java-patch-hier.
Notes:
svn path=/head/; revision=166380
|
|
|
|
|
|
|
|
|
|
| |
Employ the new USE_LDCONFIG feature, which allows us to get rid of the
various, much more manual and error-prone hacks we needed so far.
Reviewed by: flz (for lang/gcc40)
Notes:
svn path=/head/; revision=165677
|
|
|
|
| |
Notes:
svn path=/head/; revision=158130
|
|
|
|
|
|
|
| |
workaround I had to apply to this port).
Notes:
svn path=/head/; revision=149944
|
|
|
|
|
|
|
|
|
|
|
|
| |
build with GCC 2.95 that I already submitted upstream as well).
Add a long missing dependency on USE_ICONV=yes.[1]
PR: 88894 [1]
Submitted by: Björn König" <bkoenig@cs.tu-berlin.de> [1]
Notes:
svn path=/head/; revision=148179
|
|
|
|
| |
Notes:
svn path=/head/; revision=142235
|
|
|
|
|
|
|
|
|
|
| |
This allows us to fix non-ISO-C constructs in our kernel to legal ISO-C.
Submitted by: rodrigc
Obtained from: http://gcc.gnu.org/ml/gcc-patches/2005-09/msg00006.html
Notes:
svn path=/head/; revision=142157
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace the WITHOUT_LIBJAVA knob by WITHOUT_JAVA which also disables
building the compiler and tools proper and avoids fetching the entire
Java frontend and library tarball.
Remove bogus ${PREFIX}/share/classpath/api directory that libjava adds
these days.
Make the (optional) handling of the Fortran and Java frontends easier
to understand.
Notes:
svn path=/head/; revision=140719
|
|
|
|
|
|
|
| |
part of the packaging list.
Notes:
svn path=/head/; revision=136399
|
|
|
|
|
|
|
| |
related fixes I had submitted upstream.
Notes:
svn path=/head/; revision=121130
|
|
|
|
|
|
|
|
|
| |
snapshot of GCC 4.0.0.
PR: 71696.
Notes:
svn path=/head/; revision=120512
|
|
|
|
|
|
|
| |
Approved by: gerald
Notes:
svn path=/head/; revision=118059
|
|
|
|
|
|
|
|
| |
change to the gcc33 port and introduce a new make variable SUFFIX to
avoid hardcoding the version number and reorder USE_ variables.
Notes:
svn path=/head/; revision=99348
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Merge in my 2004/01/17 change to the gcc33 port to configure with
--program-suffix and related and further simplifications.
Merge in my 2004/01/13 change to the gcc33 port to make the automatic
generation of the package list for libraries and include files more
failure tolerant, so that at least `make install` now works on sparc64.
Merge in my 2004/01/05 change to the gcc33 port to combine and simplify
the post-install handling of target libraries and GCJ include files.
libgcj still is not supported and packaging is broken on sparc64; mark
BROKEN on that platform.
Notes:
svn path=/head/; revision=98790
|
|
|
|
| |
Notes:
svn path=/head/; revision=96627
|
|
|
|
|
|
|
|
|
|
|
| |
are searched automatically by the compiler by using --with-libiconv-prefix.
W/o --with-libiconv-prefix, 'configure' finds the lib, but not the header.
During the make, neither will be found; a lot of inconsistency here...
* Deal with GCC's configurary's brokenness WRT --with-libiconv-prefix due
not actually passing the found header path to CFLAGS in any way.
Notes:
svn path=/head/; revision=95853
|
|
|
|
|
|
|
|
|
|
| |
There is no bounds-checking patch for GCC 3.4 yet, extended printf format
checking for FreeBSD has not been ported yet, and the port is BROKEN due
to weird libjava build failures which occur if and only if building from
within the FreeBSD ports system.
Notes:
svn path=/head/; revision=93976
|
|
|
|
|
|
|
|
| |
PR: 53395
Submitted by: Dan Nelson <dnelson@allantgroup.com>
Notes:
svn path=/head/; revision=83188
|
|
|
|
|
|
|
| |
Adjust COMMENT and remove NO_CDROM. Reenable man pages.
Notes:
svn path=/head/; revision=80294
|
|
|
|
|
|
|
|
| |
patch-va. All of these dealt with us patching generated files (which
we don't do any longer).
Notes:
svn path=/head/; revision=79641
|
|
|
|
|
|
|
|
|
|
| |
ELF-only as well, remove support for aout from the next generation of GCC.
Suggested by: Loren James Rittle <rittle@labs.mot.com>
Discussed with: obrien
Notes:
svn path=/head/; revision=79579
|