While the union trick used there gave the correct results, it made the
defines non-constants so they couldn't be used properly in some cases.
In particular, this makes the testsuite for gettext and some other GNU
packages fail as they explicitly test for these being constants.
If setting OPTIM by jam basically makes it impossible for the project that
is using jam to set its own optimization level while still allowing user
to override that in command line. For example in Haiku jam files there is
line like this: "OPTIM ?= -O2", which obviously is meant to set optimization
level to O2 unless user overwrites it. Unfortunately, because Jam have already
set OPTIM to -O this line never had an intended effect.
After this Jam no longer thinks it knows best what is good for projects
that are using it and Haiku is by default compiled with -O2.
Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
* Adjust the libgcc spec to actually link against libgcc explicitly
(it is no longer included in libroot.so on anything except x86_gcc2).
* Apply --as-needed when linking against libgcc_s.so
* Drop search paths that no longer exist (/boot/common/...).
* The glue code files crtbegin.o and crtend.o don't cleanup globals
properly, only the variants with the S suffix do. As executables are
shared on Haiku, we use crtbeginS.o and crtendS.o for those, too.
This fixes crashes on shutdown of Haiku servers that load add-ons (e.g.
Print Server and Media Add-On Server).
* The configure script for libstdc++ contained a couple of duplicate
'haiku*' case entries, where the first would shadow the second.
* Correct several incorrect libtool definitions and paths.
* Gcc will now build libgcc.a, libgcc_eh.a and libgcc_s.so.
* Activate thread support for libgcc.
* Let libgcc use ELF dwarf2 unwinding on Haiku.
* Activate ELF symbol versioning on Haiku.
* Activate use of __cxa_atexit
* Drop fragments of Haiku support for mipsel
texinfo 5 has changed syntax for certain commands which led to failure when
building binutils because the documentation could not be built.
Upstream report: https://sourceware.org/bugzilla/show_bug.cgi?id=15212.
Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* Fixes issue compiling PPC binutils
* Upstream commit 3c865fca8 by Alan Modra
* Missing a stdint.h in coff header for intptr_t usage
* PPC fix is upstream via:
https://sourceware.org/bugzilla/show_bug.cgi?id=16686
This reverts commit bf1b5855ab.
* mmu_man pointed out that the fix in bug #16686 is more
correct. (and on closer inspection I agree)
* sorry for the spam
* copied the generic config and added os_defines to enable time support
without link tests when cross compiling.
* os_defines definitions are disabled for _KERNEL_MODE and _LOADER_MODE.
bastring declares the prototype for atomic_add, as it can't rely on
haiku-specific headers. Have this declaration match the modified
prototype from Scheduler branch merge.
Matches commit 73ad2473e7874b3702cf5b0fdf4c81b747812ed9 on Haiku side.
* Drop /boot/common header paths
I don't think pre-pm haiku will build anyway
without using an older buildtools.
* Add secondary arch os header directories.
Anything secondary arch that provides os
headers will break without the proper search
paths in gcc.
* Fixes secondary packages that depend on the
OpenGL kit
Looks like it wasn't enough yet after the PM merge.
However we still have an issue with a silently failed Link action
which actually is smaller than the max line size...