Warnings were:
Cc bin.linuxx86/fileunix.o
fileunix.c: In function ‘file_archscan’:
fileunix.c:217:6: warning: implicit declaration of function ‘read’; did you mean ‘fread’? [-Wimplicit-function-declaration]
217 | if( read( fd, buf, SARMAG ) != SARMAG ||
| ^~~~
| fread
fileunix.c:220:6: warning: implicit declaration of function ‘close’; did you mean ‘pclose’? [-Wimplicit-function-declaration]
220 | close( fd );
| ^~~~~
| pclose
fileunix.c:272:3: warning: implicit declaration of function ‘lseek’; did you mean ‘fseek’? [-Wimplicit-function-declaration]
272 | lseek(fd, offset + SARHDR, 0);
| ^~~~~
| fseek
Change-Id: Iedcdec01deb929d6c91ebc9d7eb72497fe078dd4
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4399
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Pointer to struct on stack was given instead of the calculated value.
Warning was:
Cc bin.linuxx86/expand.o
expand.c: In function ‘var_expand’:
expand.c:210:49: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘LIST *’ {aka ‘struct _list *’} [-Wformat=]
210 | printf("MAXSYM is too low! Need at least %d\n", l);
| ~^ ~
| | |
| int LIST * {aka struct _list *}
Change-Id: I65ab593287fc1b9aa2aba0056714726e29467012
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4398
Reviewed-by: John Scipione <jscipione@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
* This is a backport of a fix in binutils master and 2.37
commit: 235f5ef4a6b8fbdcfaea8b629f7c6a9792a789de
* Solves a dobuble-relaxation optimization in binutils under riscv64
Change-Id: I6a2ed520615b5e36bbb0003bf3a6a186c0aaeca1
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4412
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Cc bin.linuxx86/variable.o
variable.c: In function ‘var_defines’:
variable.c:121:46: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long int’ [-Wformat=]
121 | printf("MAXSYM is too low, need at least %d\n", val - *e);
| ~^ ~~~~~~~~
| | |
| int long int
| %ld
Change-Id: I389577a71416029fdff0f486af745ea482b14ddd
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4397
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Include header file for function prototypes hcache_init, hcache_done.
Note that include order is important, i.e. include has to be placed after the lists.h and rules.h includes.
Change-Id: Ic8a286662c8267bdfd19011b5ed8e825ee16d7ee
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4396
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
* Solves a new segfault encountered while linking our 32-bit
bios_ia32 loader under x86_64 (-m elf_i386_haiku)
backtrace:
_bfd_x86_elf_link_setup_gnu_properties() : reason: SIGSEGV
elf_i386_link_setup_gnu_properties()
ldelf_after_open()
lang_process()
main()
* I maintained our adjustments which differ / don't exist in
elf_i386. Lots of new code inclusions though in elf_i386
Change-Id: I9220730ba41bc029e40d1b4a8e5fbd85b312c1b5
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4375
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
* a82c1c - Base Haiku patches
* d113c7 - Fix powerpc gas target for Haiku
* e97614 - arm64 target support
* f91439 - don't require coff, we don't need it anyway
* c3903e - enable PE support for ARM
* f4963f - Add missing __exidx_* to fix arm bootstrap
Change-Id: I27d810fa49c38ed6e1548fc1f880bebb62ee0d64
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4374
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Change-Id: I06fc1c19229e26c20132c255c92b7e71ea3cc31a
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4372
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Previous setup failed to do link bootstrap libz with msissing
unwind symbols due to not finding libgcc_s.so.1
Change-Id: I80a85502843f82d2324cf816cb761ddfa78e289f
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/3754
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Based on Boost Jam patch: https://github.com/boostorg/build/pull/133
retrofitted to our version. Only the rules whose name contains Cc or C++
are stored there. This can be improved if it's not good enough.
The commands are generated only as they are run. Unfortunately I think
with Jam there isn't really a way to do otherwise.
Change-Id: Ic5d44dc27baa2a2e4157324f6c5a228ab0366afe
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/3260
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
This brings Jam's usage of AR to be more conventional: the flags for AR
are moved to a separate variable, called ARFLAGS, ensuring that any
environment that overrides the AR variable will still end up using the
correct flags to create the archve.
Change-Id: I00449b284fab132d5fc9239017d742480fb51820
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/3226
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Needed for building the EFI bootloader.
Unfortunately gcc doesn't know how to generate PE binaries for AArch64,
so a different solution will be needed there.
Change-Id: Id50d57ae81bdd7a18d424305d08fc55f312a2588
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/2414
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Make new_string_list() initialize the buffer it creates to hold a file's
contents, preventing a segfault later on should jam attempt to parse the
contents of an empty file.
Fixes#15250.
Change-Id: I907dccd26e1ca35fbe07ed6d624b0144487134fe
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/1716
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Among other things this ensures the TARGET2_TYPE linker option is set
correctly, preventing "unresolvable R_ARM_REL32 relocation" errors at
link time.
Fixes#15122.
Change-Id: Id4c6e97cc1739ecfac0f7cd0ec93927750f1b313
Reviewed-on: https://review.haiku-os.org/c/1702
Reviewed-by: Rene Gollent <rene@gollent.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* Noticed that our gcc2 randomly produces a "cpp" instead of a i586-pc-haiku-cpp
* A quick google search turned up a vintage patch for palmos which also
fixes this issue:
https://github.com/jichu4n/prc-tools-remix/blob/master/prc-tools-2.3/gcc-2.95.3.palmos.diff
* Confirmed it fixes the issue, and built a x86_gcc2 image without any
issues
Change-Id: I33959248f10b69d64a4a9e430a9c254a162bcb53
Reviewed-on: https://review.haiku-os.org/c/1583
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Change-Id: I73351225879f0c62613c9e6eff3e2bfc4251f86c
Reviewed-on: https://review.haiku-os.org/c/1537
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Change-Id: I7a413a81d33762f3cb1e8c67883d1e616f83d0e9
Reviewed-on: https://review.haiku-os.org/c/1536
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
* 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 ;-))
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>
* STARTFILE_PREFIX_SPEC is defined to /usr,/lib,etc on riscv.h
which seems to override the sysroot paths for libraries.
Change-Id: Ia6b785ba1e5421a86227204b73b90496fb1af3ff
- 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>
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.
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>