Commit graph

19 commits

Author SHA1 Message Date
marino
e886ae3b86 lang/gcc-aux: when in doubt, revbump
Previous commit changed dynamic linking behavior, it should have been
revbumped because gcc-aux built, even though it didn't work.
2014-01-07 02:30:11 +00:00
marino
58cac6d102 lang/gcc-aux: Establish RPATH for binaries
This should fix the Ada compiler on NetBSD 6.99 / pure clang and
allow the Ada packages to build on Joerg's bulk runs.
2014-01-07 02:26:25 +00:00
marino
a117125e4b lang/gcc-aux: Keep original bootstrap for NetBSD/i386
The last change to the Makefile was created months ago, and at the time
it was intended that new bootstraps would be made for both x86_64 and
i386 platforms.  The latter bootstrap was never created, so the previous
commit broke the build on i386.

Until a new bootstrap compiler is created, continue to use the old one.
It will continue to build on gcc-based NetBSD, but I do not expect it to
build on NetBSD-6.99/i386 with clang and no gcc libraries.
2013-12-30 01:34:43 +00:00
marino
a8097218f3 lang/gcc-aux: Fix build for pure NetBSD/clang amd64 system
A new bootstrap was necesssary to allow gcc-aux to build on a NetBSD
system that has no gcc files on the system.  Other changes include:

* Remove support for NetBSD 5.99
* Remove defunct mirror site
* Restore action install stripped binaries (gcc bug fixed)
2013-12-29 19:16:53 +00:00
marino
9b45e46dc5 lang/gcc-aux: Remove old hashes from distinfo
These patches were removed on the last commit, but I forgot to clean
up the manually created distinfo file afterwards.
2013-08-15 10:58:42 +00:00
marino
94c24b6ba0 lang/gcc-aux: bug fix
This commit achieves the following:
  1) Fix specific case of falsely identified aggregate array index
     duplicates.  Fix taken from gcc 4.8 source, it apparently will
     never be backported.
  2) Fix typo that caused mktemp to be used in DragonFly
  3) Incorporate NetBSD libstdc++ fixes into gcc-aux repository
     (which is a parallel fork) and regenerate diff-cxx.  This
     enables patches to be removed.
2013-07-20 19:47:19 +00:00
marino
283123c8de lang/gcc-aux: Fix build for PKGSRC_COMPILER=clang
The Link-Time Optimizer requires a couple of functions from the math
library.  For gcc, it appears there are built-in versions that
satisfy the requirement, but building with clang requires an explicit
linkage to libm.

This additional LDFLAG may be required on all platforms when clang is
used for pkgsrc, but until this is confirmed let's limit it to NetBSD.
Fix tested on NetBSD 6.1 amd64 with CLANGBASE=${LOCALBASE}
2013-07-07 08:57:03 +00:00
wiz
d2ca14a3f1 Bump all packages for perl-5.18, that
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package

Like last time, where this caused no complaints.
2013-05-31 12:39:57 +00:00
joerg
ff77b1c9f0 Deal with the 16bit ctype table move in NetBSD/current. Fix some cases
of ctype.h argument range errors.
2013-04-29 21:34:48 +00:00
marino
c07cb067c0 lang/gcc-aux: Update to gcc 4.7.3 (version 20130411)
This is a bug fix release.
The official change page is http://gcc.gnu.org/gcc-4.7/changes.html
According to it, 119 bugs have been resolved since version 4.7.2 was
released (3 P1 bugs, 27 P2 bugs).
2013-04-12 15:40:54 +00:00
marino
56b2693aa2 lang/gcc-aux: Fix DragonFly iostream bug 2013-01-31 23:01:56 +00:00
wiz
8b5d49eb78 Bump all packages that use perl, or depend on a p5-* package, or
are called p5-*.

I hope that's all of them.
2012-10-03 21:53:53 +00:00
asau
88feb4ac62 Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-02 20:11:34 +00:00
marino
4ab22ffa9a lang/gcc-aux 4.7.1: Upgrade to version 4.7.2
The GCC projected released version 4.7.2 on 20 September.  There were few
diff changes (only core and ada) between it and version 4.7.1, so it's a
straightforward update.

Release announcement: http://gcc.gnu.org/ml/gcc/2012-09/msg00181.html

Notable Excerpts:
GCC 4.7.2 is the first bug-fix release containing important fixes for
regressions and serious bugs in GCC 4.7.1 with over 70 bugs fixed since
the previous release

A notable change in GCC 4.7.2 compared to 4.7.1 are ABI bug fixes
related to some C++11 templates (std::list and std::pair).  As a result,
code using those templates in C++11 mode is again ABI compatible with
code in C++03/C++98 mode or C++11 mode of GCC 4.6 and earlier, but might
be ABI incompatible with code compiled by GCC 4.7.1 or 4.7.0 in C++11
mode.
2012-10-01 17:26:52 +00:00
marino
b16a6eec76 lang/gcc-aux: add gcc-aux/lib runpath to LINK_SPEC
The libraries of gcc-aux are not located on standard search paths for
the runtime linker to find.  Moreover, libraries from other versions
of gcc may be and in that case rtld will link the wrong library.  To
fix this, an rpath to ${PREFIX}/gcc-aux/lib will be inserted into every
dynamic binary created by gcc-aux.

Other changes include:
1) simpler and more robust detection of an existing gcc-aux compiler to
   be used rather than the older bootstrap compiler.
2) Fixed FreeBSD support.  FreeBSD bootstraps are available but not yet
   listed due to lack of testing (however, it should work out of the box)
3) Fixed some c++ testsuite directives for dejagnu
2012-08-03 08:53:57 +00:00
marino
e1f921f909 lang/gcc-aux: PR#46708 Fix buildlink3.mk conditional
The condition in the gcc-aux buildlink3.mk file requires the file
mk/pkg-build-options.mk to be included in order to work.  This fixes the
bug introduced yesterday.
2012-07-16 19:34:27 +00:00
marino
4d01750b37 lang/gcc-aux: Add condition to buildlink3
The NLS option is optional, but the buildlink pulled in gettext-lib
unconditionally.  This caused failures in Tinderbox and pbuld chroot
when gettext-lib couldn't be found in those clean environments.  The
final result is that all Ada programs file to build in those environments.

Also removed whitespace from DESC.
2012-07-15 11:50:53 +00:00
marino
723e097509 lang/gcc-aux: Fix c/c++ precision on FreeBSD/DragonFly
Until now, GCC builders had to choose between Ada and C/C++ on the
following platforms:

   i386-FreeBSD
   i386-DragonFly

On these platforms, depending on the value of the configuration macro
TARGET_96_ROUND_53_LONG_DOUBLE, either Ada precision or C/C++ long
double precision was broken.  The reason is that the floating point unit
of these platforms round off real-time calculations to 53-bit mantissas.
GCC will adjust accordingly to compensate.  Since a common backend is used
for all languages, one had to choice which language they wanted correct.

The solution is to break out the object file responsible for this from
the common backend library.  Ada now receives an altered version of
insn-modes.o, one that instructs the FPU not to round off the results.
This is all handled by patched Makefiles.

Other changes:
  - Configure DragonFly to add ".note.GNU-stack" section to assembly files
    to determine if program needs executable stacks
  - Skip 2 subtests of Wconversion-real on i386 FreeBSD and DragonFly.
    Due to the rounding behavior mentioned above, they fail to produce
    error messages as expected.  It's not possible to set target with
    xfail, and every target && target seems not work work.  So we will
    assume all gcc-aux platform targets are long-double capabile and
    just set xfail for x86 FreeBSD and DragonFly.
  - Rework Fortran large real test 2 to skip on x86_64 *BSD.  This test
    should pass on x86 machines.
  - Rework Fortran large real test 3 to be skipped when compiles with -O0
    only x86_64 machines.  All other combinations will pass.
  - Rename C format test typedef from quad_t to quad2_t.  DragonFly
    has a standard type called quad_t and the type conflict causes a
    large number of gcc tests to fail.
  - Add dummy dg-error line to avoid an assembly comparison tests on
    large files not built (test was marked as UNSUPPORTED but dejagnu is
    too dumb to know not to check for the tests' products.)
  - Reorder path passed during build when using an already-built gcc-aux
    compiler to build new compiler.  If gnat-aux is also installed, it
    would use the gnat* tools from that compiler rather than gcc-aux
    which results in build failure (different versions of tools are
    getting used together resulting in build failure).
2012-07-14 21:53:05 +00:00
marino
bb0ffc7bb6 Import lang/gcc-aux based on gcc-4.7.1
The primary difference between this compiler package and lang/gcc47 is
that lang/gcc-aux supports the Ada language.  Additionally, it is
intended that the USE_LANGUAGES makefile variable whill be extended to
recognize "ada" as a valid language, and that specifying it will cause
lang/gcc-aux to be used to build the package.

All current Ada-based packages will be modified to build with
USE_LANGUAGES+= ada rather than specifying a dependency on lang/gnat-aux,
the other Ada-capable compiler in pkgsrc based on gcc-4.6.3.

lang/gcc-aux supports C, C++, Objective-C, Fortran, and Ada by default,
but the latter four languages can be disabled via the options framework.
The three non-default options are "nls", "testsuite" and "static" which
enable Native Language Support, languages tests, and building the compiler
statically.

The "static" option is unalterably enabled for NetBSD in order to use dl_iterate_phdr error handling on NetBSD 6.  On the NetBSD 6 beta builds,
exceptions won't unwind properly with the libgcc_s shared library, and
the issue seems to be external to gcc-aux.  It's hoped the libgcc_s
exception handling works on NetBSD 5.x series as dl_iterate_phdr isn't
supported by rtld there, but gcc-aux hasn't been tested on 5.x yet.

lang/gcc-aux can be built by 5 platforms currently:  NetBSD i386/x86_64,
DragonFly i386/x86_64, and OpenSolaris i386.  New platform support
requires new bootstraps.  FreeBSD i386/x86_64 could be added easily as
bootstrap compilers are available for FreeBSD ports lang/gnat-aux.
OpenBSD bootstrap compilers have been built but never used, but further
patches are on a couple of gcc's configuration files are needed as well
as testing to provide OpenBSD support.

All five platforms pass all tests (over 3200) in the Ada testsuite.

See http://gcc.gnu.org/gcc-4.7/changes.html

for more information about improvements over the GCC 4.6 series.
2012-07-08 19:30:38 +00:00