570 Commits

Author SHA1 Message Date
Augustin Cavalier
6fb237714b gcc: Change ARM typeinfo behavior to match other architectures.
For all other architectures, these lines were removed in
btrev39570. For some reason, ARM was missed. Now we rectify that.
btrev43147
2019-06-15 20:44:57 -04:00
Alexander von Gluck IV
9d7404d604 gcc: Fix startfile search prefixes and bootstraps
* ac9c3b700 introduced modifications to configure.ac which added
  HYBRID_SECONDARY support to configure. Without these changes,
  HYBRID_SECONDARY = @HYBRID_SECONDARY@ in Makefile.in (configure
  doesn't template it out) which trickled into library search paths
  in various places. (if def, set to contents of HYBRID_SECONDARY)
* Fixes bootstraps across all architectures (that bootstrap ;-))
btrev43146
2019-06-02 17:57:02 -05:00
Alexander von Gluck IV
e649c97b4a gcc: Add missing Haiku stdint defines for m68k,riscv,mipsel,ppc,sparc64
Change-Id: Iab32e700d7cfaddae8e76742ddc7eb25fbe2c865
btrev43145
2019-05-24 20:33:26 -05:00
Augustin Cavalier
341e3be74c Merge our changes into GCC 8.3. btrev43144 2019-05-24 19:14:48 -04:00
Augustin Cavalier
b0a6bed08c Import GCC 8.3. 2019-05-23 17:48:23 -04:00
PulkoMandy
a07def6dc6 binutils: enable a.out target for sparc.
We need this to build the openfirmware loader.

Change-Id: Ie53a71fffdbe7e08bce5447062618fd05afc8fed
Reviewed-on: https://review.haiku-os.org/c/1362
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
btrev43143
2019-04-04 20:32:38 +00:00
Alexander von Gluck IV
931a9c38d5 riscv64: Fix startfile spec which breaks sysroot
* STARTFILE_PREFIX_SPEC is defined to /usr,/lib,etc on riscv.h
  which seems to override the sysroot paths for libraries.

Change-Id: Ia6b785ba1e5421a86227204b73b90496fb1af3ff
btrev43142
2019-04-03 21:13:19 -05:00
Alexander von Gluck IV
c162732461 riscv64: Disable MULTILIB for now to keep things simple
Change-Id: I569d0ba9512d635dfe03fbc9fcd95289d9c44098
Reviewed-on: https://review.haiku-os.org/c/1348
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
btrev43141
2019-04-02 20:06:27 +00:00
Alexander von Gluck IV
fb78ddf2aa riscv64: Fix potentially missing ld/gas
Change-Id: I832bb2f4c2872c1c80cd9cd11e32387f9a48a3df
Reviewed-on: https://review.haiku-os.org/c/1347
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-04-02 20:06:27 +00:00
PulkoMandy
db2fd1989f Fix gcc config for Haiku on sparc
- Remove accidentally copied NetBSD stuff, so we actually use our
  linkspec
- Put the files in the correct order in config.gcc

This gets us past stage0 bootstrapping (building gcc_bootstrap package).

Change-Id: I245a5ae111a6ca5e02b55e7a49e47cadcbc21731
Reviewed-on: https://review.haiku-os.org/c/1081
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
btrev43140
2019-02-23 16:37:14 +00:00
Augustin Cavalier
fd2fd983c5 gcc/mpfr: Disable LTO unconditionally.
This is kind of a hack, but really it's the configure script that
is broken, as it hard-checks for "gcc-ar" which of course does not
work with Clang builds. We want LTO to be enabled in GCC, and
GCC unconditionally passes all arguments it gets to sub-configures,
so all we can do is stop the flag from having any effect.

Fixes #14733.
btrev43139
2019-02-20 22:49:25 -05:00
Alexander von Gluck IV
abcbee7bba haiku: Add riscv arch support
Change-Id: Ifa5b93cb959798d74ed045f53f5050651f409314
Reviewed-on: https://review.haiku-os.org/c/1062
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
btrev43138
2019-02-21 01:32:48 +00:00
Adrien Destugues
198e0fde5e haiku: Get sparc buildtools going
- If kallisti5 is having fun with RISC-V, why can't I too?
- Gets as far as complaining we don't have a libsolv package in
  non-bootstrap builds

Change-Id: I0bb2b632d8f9007d5ad130f8cfddda36787050fc
Reviewed-on: https://review.haiku-os.org/c/1060
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
btrev43137
2019-02-19 18:28:17 +00:00
Augustin Cavalier
b3407e33b3 Jambase: Restore old ar flags to fix GCC2. btrev43136 2018-11-25 11:08:39 -05:00
Augustin Cavalier
6ce894a916 jam: Bump Jambase version, fix typo, and regenerate jambase.c. btrev43135 2018-11-21 19:07:39 -05:00
Augustin Cavalier
2671c4b959 Jambase: Change default ARFLAGS and enable NOARSCAN by default.
On most systems, "D" (deterministic) is now the default archiving mode,
and so specifying "u" will throw a warning that "D" is being used anyway.
Jam previously assumed, as it was passing "u", that the timestamps inside
.a's were valid when they were actually 0, which was leading to spurious
rebuilds of .as.

After this change, we assume archives cannot be scanned for timestamps,
which should stop the spurious rebuilds of targets on most systems.
2018-11-21 18:46:31 -05:00
Augustin Cavalier
1d198a6bf6 Jambase: Update some rules from Haiku's overridden set.
These are the simple ones that were just overridden to handle spaces
in file names properly.
2018-11-21 18:44:04 -05:00
Augustin Cavalier
35013601f4 Jambase: Remove crelib.
Not needed anymore as I've just removed the platforms that used it.
2018-11-21 18:35:02 -05:00
Augustin Cavalier
8f66ea4bf2 Jambase: Remove old UNIXes. 2018-11-21 18:27:25 -05:00
Augustin Cavalier
b47cc04d00 Jambase: Add a blanket disclaimer about modifications.
Hopefully this is enough to satisfy the license requirements.
Remove some of the "LOCAL CHANGE" comments as a result (ones about
the HeaderCache remain.)
2018-11-21 15:00:12 -05:00
Augustin Cavalier
4d114c95a7 Jambase: Remove Mac OS 9 support.
macOS support is provided via the "MACOSX" case under "UNIX"
and is unaffected by this.

Also remove the Win98 (!) cruft while we're at it.
2018-11-21 14:57:36 -05:00
Augustin Cavalier
531869677c Jambase: Remove RELOCATE.
We don't need to support these ancient compliers anymore, so this
hack can go away.
2018-11-21 14:53:20 -05:00
Augustin Cavalier
161fe1206c Jambase: Remove OS/2, VMS, and Borland support. 2018-11-21 14:51:27 -05:00
Augustin Cavalier
7d73e6afae Jambase: Cleanup formatting and inline LICENSE.
No functional change intended.

We have been putting off refactoring this for too long. It's time to
change that.
2018-11-21 14:48:04 -05:00
waddlesplash
0c77ecec1f isl: Rerun autoconf. btrev43134 2018-08-26 21:58:14 -04:00
waddlesplash
b5743e0bba m4: Add AX_PTHREAD m4 file, fixes the build with older autoconf. btrev43133 2018-08-26 21:24:49 -04:00
waddlesplash
6c18e94008 configure: Update/touch so the build system won't try to update it. btrev43132 2018-08-26 21:01:36 -04:00
Fredrik Holmqvist
974e12c1f0 Upgrade mpfr to 4.0.1
Old version was 3.1.2 and is quite old: 2013-03-13
A lot has happened since then 4.0.1 is from 2018-02-07
btrev43131
2018-07-04 20:21:01 +02:00
Fredrik Holmqvist
87b935d29c Upgrade mpc from 1.0.1 to 1.1.0
Mostly bug fixes, see mpc/NEWS
2018-07-04 20:21:00 +02:00
Fredrik Holmqvist
f133d007f9 Upgrade GMP from 5.0.5 to 6.1.2 (2016-12-16)
Old version was from 2012-05-06, 6.1.2 is from 2016-12-16
A lot of support for newer processors and speedups since then
See gmp/NEWS for details
2018-07-04 20:20:59 +02:00
Fredrik Holmqvist
8e863d49e6 gcc no longer requires cloog for graphite
gcc uses isl directly nowadays
2018-07-04 20:20:57 +02:00
Fredrik Holmqvist
e7f96e19a4 Upgrade isl to version 0.19
gcc currently requires 0.15 or later for graphite
2018-07-04 20:20:56 +02:00
Fredrik Holmqvist
0b514caa50 Move isl inside gcc dir
Moving it inside gcc dir allows gcc to detect and build isl while
building gcc. It has dependencies on other libraries that would
need to be prebuilt if we build it ourselves.

This is one of a few steps in building gcc with isl and allowing graphite
optimization flags.
2018-07-04 20:20:55 +02:00
Jerome Duval
13dd3f531f fix for libstdc++/69506 btrev43130 2018-06-28 22:35:23 +02:00
Augustin Cavalier
ac9c3b7005 Further synchronization with HaikuPorts patches. btrev43129 2018-06-03 12:11:59 -04:00
Augustin Cavalier
a7eeaa62ba gcc: Synchronize Makefile.in with HaikuPorts one.
Includes a fix for the x86_64 GCC build from Jerome.

Fixes #14179.
btrev43128
2018-06-03 12:05:19 -04:00
waddlesplash
9f5168c3d9 Remove the ancient patches directory.
Nothing referenced it.
btrev43127
2018-05-22 20:54:10 -04:00
waddlesplash
8651cd3f95 Further fixes to get GCC 7.3 actually working for Haiku builds.
Partially from @jarekpelczar's work, but only certain pieces that
were needed, and the rest is either from earlier GCC patches
or is my own work.

With this, GCC 7 can now build Haiku.
btrev43126
2018-05-19 23:00:50 -04:00
Alexander von Gluck IV
51ec6d2217 gcc: Initial Haiku support patches based on gcc 5.x 2018-03-20 09:59:01 -05:00
Alexander von Gluck IV
ffa48efe31 import previous mpfr,mpc,gmp 2018-03-19 15:46:45 -05:00
Alexander von Gluck IV
3d544ab266 import gcc 7.3.0 2018-03-19 15:34:23 -05:00
Jérôme Duval
923a34a14b jam: use posix_spawnp() instead of fork() on linux.
the gain is about 10% on a 8-job kernel full build.
btrev43125
2018-01-06 16:48:36 +01:00
Augustin Cavalier
20a46bd5f9 bfd: Fix build with newer texinfo. btrev43124 2017-11-11 14:01:56 +01:00
Jérôme Duval
35041506a0 Merge binutils 2.28.1 btrev43123 2017-08-06 14:09:36 +02:00
Jérôme Duval
8b2ef03baf import binutils 2.28.1 2017-08-05 16:32:14 +02:00
Ingo Weinhold
aa5e614865 Bump legacy gcc version
Hasn't been done in a while.
btrev43122
2017-07-20 07:52:55 +02:00
Ingo Weinhold
9167fe74f5 legacy gcc: remove "#pragma once" warning
"#pragma once" is no longer obsolete. In fact it is the preferred header
guard method.
2017-07-20 07:52:55 +02:00
Adrien Destugues
259af3cf06 Increase MAXSYM and add sanity checks.
I had jam crash in strange ways because a stack-allocatted aray was
overflowing. Double the limit, and add sanity checks with exit and clear
error messages in case it happens again.
btrev43121
2017-07-16 19:40:50 +02:00
Jérôme Duval
233c0fb351 import binutils 2.27 2016-10-10 16:55:00 +02:00
Adrien Destugues
560f4f562f Legacy binutils: do not link against Flex.
Flex is not needed, and creates some confusion when building the
binutils on Haiku. Just remove all the checks from the configure script,
so it is never used.
btrev43120
2016-07-24 18:10:22 +02:00