The NetBSD Project

CVS log for pkgsrc/lang/gcc-aux/options.mk

[BACK] Up to [cvs.NetBSD.org] / pkgsrc / lang / gcc-aux

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.9: download - view: text, markup, annotated - select for diffs
Tue Jun 6 12:41:42 2023 UTC (17 months ago) by riastradh
Branches: MAIN
CVS tags: pkgsrc-2024Q3-base, pkgsrc-2024Q3, pkgsrc-2024Q2-base, pkgsrc-2024Q2, pkgsrc-2024Q1-base, pkgsrc-2024Q1, pkgsrc-2023Q4-base, pkgsrc-2023Q4, pkgsrc-2023Q3-base, pkgsrc-2023Q3, pkgsrc-2023Q2-base, pkgsrc-2023Q2, HEAD
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +2 -2 lines
Mass-change BUILD_DEPENDS to TOOL_DEPENDS outside mk/.

Almost all uses, if not all of them, are wrong, according to the
semantics of BUILD_DEPENDS (packages built for target available for
use _by_ tools at build-time) and TOOL_DEPEPNDS (packages built for
host available for use _as_ tools at build-time).

No change to BUILD_DEPENDS as used correctly inside buildlink3.

As proposed on tech-pkg:
https://mail-index.netbsd.org/tech-pkg/2023/06/03/msg027632.html

Revision 1.8: download - view: text, markup, annotated - select for diffs
Sun Nov 3 19:03:57 2019 UTC (5 years ago) by rillig
Branches: MAIN
CVS tags: pkgsrc-2023Q1-base, pkgsrc-2023Q1, pkgsrc-2022Q4-base, pkgsrc-2022Q4, pkgsrc-2022Q3-base, pkgsrc-2022Q3, pkgsrc-2022Q2-base, pkgsrc-2022Q2, pkgsrc-2022Q1-base, pkgsrc-2022Q1, pkgsrc-2021Q4-base, pkgsrc-2021Q4, pkgsrc-2021Q3-base, pkgsrc-2021Q3, pkgsrc-2021Q2-base, pkgsrc-2021Q2, pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4, pkgsrc-2020Q3-base, pkgsrc-2020Q3, pkgsrc-2020Q2-base, pkgsrc-2020Q2, pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +26 -26 lines
lang: align variable assignments

pkglint -Wall -F --only aligned --only indent -r

No manual corrections.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Sun Sep 8 14:05:38 2019 UTC (5 years, 1 month ago) by maya
Branches: MAIN
CVS tags: pkgsrc-2019Q3-base, pkgsrc-2019Q3
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +20 -2 lines
Add a new option 'always-libgcc', whether to install libgcc.
If the pkgsrc compiler is GCC, don't install libgcc.

Having an older libgcc is problematic: it may be missing symbols from
newer libgcc. This is what happened in PR pkg/54506.

Use this on gcc-aux and gcc5-aux: the libgcc_s.so they install is going
to be older in all the operating systems these packages support.
(Other GCC packages will require a more elaborate rule)

Leaving SmartOS unchanged, by request from jperkin.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Mon Jul 10 00:21:31 2017 UTC (7 years, 3 months ago) by maya
Branches: MAIN
CVS tags: pkgsrc-2019Q2-base, pkgsrc-2019Q2, pkgsrc-2019Q1-base, pkgsrc-2019Q1, pkgsrc-2018Q4-base, pkgsrc-2018Q4, pkgsrc-2018Q3-base, pkgsrc-2018Q3, pkgsrc-2018Q2-base, pkgsrc-2018Q2, pkgsrc-2018Q1-base, pkgsrc-2018Q1, pkgsrc-2017Q4-base, pkgsrc-2017Q4, pkgsrc-2017Q3-base, pkgsrc-2017Q3
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +1 -2 lines
Always stop libstdc++ from using PCH, not just on bootstrap.

the configure test hangs on netbsd, and people who have looked at the PCH
implementation blame it rather than the OS.

whitespace.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Sun Jun 14 19:46:51 2015 UTC (9 years, 4 months ago) by marino
Branches: MAIN
CVS tags: pkgsrc-2017Q2-base, pkgsrc-2017Q2, pkgsrc-2017Q1-base, pkgsrc-2017Q1, pkgsrc-2016Q4-base, pkgsrc-2016Q4, pkgsrc-2016Q3-base, pkgsrc-2016Q3, pkgsrc-2016Q2-base, pkgsrc-2016Q2, pkgsrc-2016Q1-base, pkgsrc-2016Q1, pkgsrc-2015Q4-base, pkgsrc-2015Q4, pkgsrc-2015Q3-base, pkgsrc-2015Q3, pkgsrc-2015Q2-base, pkgsrc-2015Q2
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +6 -3 lines
lang/gcc-aux: various fixes, remove NLS option

This update is a by-product of working on new package, gcc5-aux, and
applying those concepts here.  Several changes were made, including:

- Version date was not updated when version changed from 4.9.0 => 4.9.2
  (revbump occurred instead).  Remove revbump and fix date
- Remove DragonFly-i386 from permitted platforms.  This platform will be
  completely unsupported when DragonFly 4.2 is released (very soon)
- Remove references to OpenBSD and MirBSD.  Support was never activated
  due to technical issues and likely will not happen.
- Reindent (cosmetic)
- It is seemingly impossible to work around NetBSD's binary compatibility
  scheme (e.g. __socket30, __nanosleep50).  These weak symbols are simply
  ignored by Ada's pragma Import and no c-tricks seem to avoid conflicts.
  (Why can't NetBSD use symbol versioning???)  Anyway, having NetBSD-
  specific copies of source files to handle a couple of symbol differences
  is simply not sustainable, so move to a new scheme where these are
  replaced on the fly.  By the way, this problem basically means that I
  cannot fix GNAT upstream, even if I found somebody to sponsor getting
  the NUMEROUS non-ada patches upstream.  GCC devs would laugh at me if I
  describe why I want to introduce so many new but similar files to
  support NetBSD.  So it's very likely never going to happen.
- Disable libitm and libcilkrts by default.  They are out of scope and not
  worth building / fixing.
- Apparently NLS support doesn't build on NetBSD 6.1?  Nobody reported
  this to me, but there are linking issues.  I'm just removing the option
  (which was on by default) until further notice.  Having NLS support on
  by default was questionable anyway.
- Remove exetim mods, this was wrong (for all BSD platforms)
- Android support leaked in, but it's not used here
- The diff-ada file dropped about 150k in size, and could have been more
  had the android osinte file been masked too.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue May 13 08:18:04 2014 UTC (10 years, 5 months ago) by marino
Branches: MAIN
CVS tags: pkgsrc-2015Q1-base, pkgsrc-2015Q1, pkgsrc-2014Q4-base, pkgsrc-2014Q4, pkgsrc-2014Q3-base, pkgsrc-2014Q3, pkgsrc-2014Q2-base, pkgsrc-2014Q2
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +15 -8 lines
lang/gcc-aux: Enable dl_iterate_phdr and link with gold

These changes are for NetBSD only although non-functional OpenBSD support
continues to be added.  The biggest change is configuring the compiler to
use the gold linker from binutils 2.24 instead of the system linker.  The
ld.bfd linker from binutils 2.24 is buggy on NetBSD and OpenBSD; it cannot
properly produce/recognize PIC files in every case, which is why gcc-aux
had been limited to the system linker.  The system linker was too old for
gcc-aux and devel/gps failed to link because of it.

At the same time, the dormant dl_iterate_phdr support has been activated
for NetBSD.  It seems to work; the Ada testsuite still passes perfectly.

Due to lack of testing, gold is restricted from building on NetBSD 5,
which means lang/gcc-aux will fail to build as a result.  If someone
verifies gold builds on NetBSD 5, then the restriction on binutils can
be removed and lang/gcc-aux will be able to build on NetBSD 5 again.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Fri May 9 09:50:47 2014 UTC (10 years, 6 months ago) by marino
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +29 -2 lines
lang/gcc-aux: Primarily add Solaris i386 and x86_64 targets

I was never able to build gcc-aux with multilib support when it was
based on gcc 4.7.  It turns out that this is because Ada support for
multilib was broken per GCC's bugzilla.  It's been fixed since.  After
some significant effort and many hours, I finally produced a multilib
bootstrap for Solaris.  It can produce other multilib compilers (x86-64)
and it can produce 32-bit only compilers (i386).  This was tested on a
stock OmniOS x86-64 installation and the Joyent dev area (i386).

Solaris has not supported static linking since Solaris 9, so it is not
possible to create a static bootstrap like the BSDs have, nor is it
possible to build the compiler statically, so that option is disabled.
That means it is unlikely that the bootstrap will run on Solaris 10 or
Solaris 11, but this theory has not been tested.

Much of the changes to the diff-* patchsets are a result of OpenBSD work.
An OpenBSD static bootstrap has been created against devel/binutils, and
as a result it fails to find system libraries such as libc and libm. That
is a side note explaining the OpenBSD additions.  There are some DragonFly
and NetBSD changes in the diff-* patches though.

The bootstrap target was significantly modified, mainly to capture the
special needs of creating a Solaris bootstrap.  The creation of the
bootstrap tarball was put in it's own target.  The zlib and math libraries
were connected to the bootstrap option.  It's not a good idea to use
system zlib on Illumos because the zlib header is not guaranteed to be
installed.

The feature to rebuild the compiler with the installed gcc-aux was fixed;
it should use it's own c++ compiler instead of the system c++ compiler.

OpenBSD 5.5 does not support "cp -a", so this was changed to "cp -RpP" for
portability reasons.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Wed Apr 30 16:24:39 2014 UTC (10 years, 6 months ago) by marino
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +30 -36 lines
lang/gcc-aux: Change base of gcc 4.7.3 to gcc 4.9.0

It appears that gcc-aux is the first gcc 4.9.0 in pkgsrc.  It's purpose
is to build the Ada packages in pkgsrc, but it also supports C, C++,
Objective-C, and Fortran languages by default.  GCC 4.9 was released on
22 April 2014.

Of note, GCC 4.9 fully supports the new Ada-2012 standard.  The rest of
the changes since GCC 4.8.2 are too numerous to mention, but a decent
summary can be found here: http://gcc.gnu.org/gcc-4.9/changes.html

FreeBSD support was added, but SunOS support was temporarily disabled.
This is due to all new bootstraps being provided, but the SunOS
bootstrap is not yet ready.  Currently supported platforms are

 * NetBSD    i386 and x86-64
 * DragonFly i386 and x86-64
 * FreeBSD   i386 and x86-64

All platform fully pass the Ada testsuite:

 * http://www.dragonlace.net/gnataux/netbsd32/
 * http://www.dragonlace.net/gnataux/netbsd64/
 * http://www.dragonlace.net/gnataux/dragonfly32/
 * http://www.dragonlace.net/gnataux/dragonfly64/
 * http://www.dragonlace.net/gnataux/freebsd32/
 * http://www.dragonlace.net/gnataux/freebsd64/

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Jul 8 19:30:38 2012 UTC (12 years, 4 months ago) by marino
Branches: MAIN
CVS tags: pkgsrc-2014Q1-base, pkgsrc-2014Q1, pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2, pkgsrc-2013Q1-base, pkgsrc-2013Q1, pkgsrc-2012Q4-base, pkgsrc-2012Q4, pkgsrc-2012Q3-base, pkgsrc-2012Q3
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.

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>