Commit Graph

71 Commits

Author SHA1 Message Date
Alexander von Gluck IV
855fc5a0d3 platform/u-boot: Build all fdt's and include in u-boot mmc
* Eventually BoardSetups and target boards will go away.
* Include all known fdt's in the mmc image
* This gets us closer to target board-less arm
* Changing hardware is as simple as plugging a new fdt
  into u-boot's startup script.
* Drop my original rpi1 work.  We're targetting ARMv7
  minimum.
2017-07-09 22:19:51 -05:00
Fredrik Holmqvist
9b264ecce1 Second try att enabling Werror for ACPI 2017-02-21 19:28:33 +01:00
Fredrik Holmqvist
95c239a3fb Revert "Treat warnings as error for ACPI."
Better do a recheck on 32 bit first, my old checks from a few
months ago doesn't seem valid anymore.

This reverts commit 7212666f4a.
2017-02-20 16:44:27 +01:00
Fredrik Holmqvist
7212666f4a Treat warnings as error for ACPI. 2017-02-20 15:25:53 +01:00
Jessica Hamilton
f4ff9cb02c Merge branch 'uefi-support' 2016-11-14 03:21:59 +13:00
Alexander von Gluck IV
b2bdabc797 arm: Add beaglebone target, rename beagle
* beaglebone vs beagleboard
* While the boards are almost the same, they have
  diff. FDT's now (more memory, different layout etc)
* Make u-boot script more rpi-like
  (depend on u-boot for initial addresses)
* Wasn't working, still doesn't.
2016-10-20 11:05:46 -05:00
S K
fe2557b6eb PS/2: fix warnings, enable -Werror
- elantech: Remove unused variables and functions.
- "movement maker": float/int confusions
- debugger keymap: don't use multi-byte chars in preprocessor to avoid
  warnings with gcc2 (even with -Wno-multichar)

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Fixes #12658
2016-10-09 21:11:55 +02:00
Jessica Hamilton
e2e1558a02 EFI: stub functions so we can call loader's main() function. 2016-09-02 19:02:33 +12:00
Fredrik Holmqvist
bd0604764e Setup -fno-pic or -fpic in Architecture Rules.
EFI boot needs -fpic but all boot code was built with -fno-pic.
This is now set accordingly in HAIKU_BOOT_CCFLAGS and
HAIKU_BOOT_C++FLAGS.

Also setup compile flags for EFI platform.
2016-09-02 19:02:32 +12:00
Fredrik Holmqvist
211483cb51 EFI: Initial test EFI application
* Only set HAIKU_BOOT_PLATFORM to bios_ia32 if not defined
* Add gnuefi build feature
* Introduce BOOT_LDFLAGS, and move options for passing to linker
  into ArchitectureSetup
* x86_64 compile fixes for warnings in boot loader
* loader/elf.cpp: don't include ELF32 support when targeting EFI
* relocation_func.cpp: copy of the relocation code from gnuefi
  to make _relocate extern "C", and avoid including <efilib.h>
* boot_loader_efi.ld: copy of gnuefi's elf_x86_64_efi.lds,
  modified to include support for C++ constructors, etc. Keep in
  sync with the gnuefi package

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2016-09-02 19:02:29 +12:00
Adrien Destugues
8a3177ff3f intel_extreme: enable Werror and fix warnings. 2016-08-27 09:03:56 +02:00
Adrien Destugues
ac30c58648 Enable Werror for jpeg, png, wonderbrush translators. 2016-07-10 19:17:01 +02:00
Jérôme Duval
214f8799db try to fix gcc5 build on buildbot.
* I'd only reproduce the kernel build failure locally, weird.
2016-03-04 20:23:17 +01:00
Rene Gollent
8028ede7db Build: Add architecture rule for libshared.a.
- As suggested by Ingo, add libshared.a to the architecture name map.
  This allows it to be linked by its short name like other frequently
  used libraries.
- Adjust all Jamfiles referencing the lib accordingly.
2016-01-15 21:12:24 -05:00
Jonathan Schleifer
bfe60c1e5a
Don't define __ARM*__ for Clang
I have a patch for Clang ready that I will upstream instead.
2015-11-08 16:38:57 +01:00
Jonathan Schleifer
95fd629fa3
Don't use -mapcs-frame with Clang 2015-11-07 18:07:45 +01:00
Adrien Destugues
f15fb39b20 Properly fix Lex/Yacc dependency following Ingo's advice
* By setting HDRGRIST to match SOURCE_GRIST in MultiArchDirSetup, the
include scanning in Jam will work properly: the generated header will
have the same grist as what the include scan looks for.
* Remove the now unneeded workaround from netresolv Jamfile.
2015-06-15 19:27:12 +02:00
François Revol
a24ca25e68 PPC: disable -Werror for now
At least for the Sam port there are still things to fix in U-Boot code,
and some #warnings as well.
2015-06-12 23:03:53 +02:00
Alexander von Gluck IV
9c5e234cb3 arm: Initial Cubieboard4 work
* SD cards are "blessed" with a boot0 spl and boot1 u-boot
  at fixed locations.
* Allwinner's u-boot is lacking a lot.
* Upstream u-boot should be better at some point. WIP:
  http://lists.denx.de/pipermail/u-boot/2015-January/201537.html
2015-04-11 16:53:04 -05:00
Alexander von Gluck IV
427d40adb5 arm/targets: Add rpi2, rename raspberry_pi to rpi1
* The Raspberry pi 2 uses a new SoC which differs slightly
  from the Raspberry Pi 1.
* Someday these two board targets could go away when we get
  FDT support.
2015-03-07 12:31:12 -06:00
Adrien Destugues
1837fcbfad Disable Werror for firewire again.
There is apparently no way to get all compilers happy at the same time.
2014-10-28 10:57:33 +01:00
PulkoMandy
7db4f82528 Enable Werror for a few more targets. 2014-10-27 23:05:28 +01:00
Adrien Destugues
2672ea45e0 T9: fix gcc4 build and enable Werror. 2014-10-23 23:10:37 +02:00
Adrien Destugues
06f436b3ac Use strict mode when url-decoding file requests.
We don't want '+' to become a space here.
Fixes #11109.
2014-10-21 11:31:48 +02:00
Adrien Destugues
e6e764b34f Enable Werror for accelerants and input server filters 2014-10-19 12:59:39 +00:00
Ithamar R. Adema
f9f3b564ac ARM: only enable C++11 for libroot, not globally
This resembles the x86_64 build, and fixes the compilation issues
with the bootloader stdio.h header.

Fixes #11144
2014-09-01 15:28:49 +02:00
Adrien Destugues
f66aa8595c Enable C++11 for all ARM targets, not just beagle.
* Also clean up the flags definitions in the beagle target to avoid
repeating the flags 3 times.
2014-08-18 09:00:50 +02:00
Oliver Tappe
11ae3c5fe7 Cleanup build system and configuration.
* Drop unused variables from build system that refer to the system
  libraries.
* Drop unused lists of libgcc objects.
* Drop no longer used variables from configuration script.
* Remove no longer needed building of kernel-libgcc and -libsupc++ from
  build_cross_tools_gcc4, only the boot-specific (32-bit) libs are
  built for a x86_64 target.
* Explicitly disable threads and TLS support when building the cross
  compiler, as the only libraries that are used by Haiku's build system
  is the 32-bit libgcc and libsupc++ for the bootloader on x86_64 (and
  for that neither is wanted).
2014-08-13 13:32:45 +02:00
Oliver Tappe
220d040227 Use libstdc++, libsupc++ and libgcc from gcc_syslibs.
* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
  from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
  x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
  necessary since we're only using libgcc-as-single-object for libroot
  with x86_gcc2, where the filtered object file doesn't exist. Should
  the objects that used to be filtered cause any problems as part of
  libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
  x86_gcc2.
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
  x86_gcc2, we still build libstdc++.so from the sources in the Haiku
  source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.
2014-08-13 13:32:44 +02:00
Oliver Tappe
77253e671b Switch to using crtbeginS.o and crtendS.o unconditionally. 2014-08-13 13:32:44 +02:00
Oliver Tappe
afde44733f * When using the non-legacy compiler, use the c++ and gcc headers
provided in the gcc_syslibs_devel build feature for building Haiku.
* Simplify declaration of c++ and gcc headers for the legacy compiler -
  in the end we always use the ones living by our source tree anyway.
* Fix a couple of missing local declarations for jam variables, which
  were necessary to avoid a build problem with strace. There are
  probably more bugs like these hiding in our build system files, but
  I'm saving the fix for those to the next commit.
* Add new gcc packages to the HaikuPorts (x86*-)repositories.
2014-08-13 13:32:34 +02:00
Oliver Tappe
36f3164c3e Fix #11076 - build failing on Haiku.
* Haiku does not currently provide crtbeginS.o and crtendS.o, so
  we fall back to crtbegin.o and crtend.o.
  
This should not have any ill-effects, as the available compilers on
Haiku do not use __cxa_atexit() yet.
2014-07-27 16:00:53 +02:00
Oliver Tappe
a36fd6667a Use crtbeginS.o and crtendS.o everywhere.
* Gcc is now using __cxa_atexit, so we need to use the crtbegin
  and crtend implementations that are meant to be used for shared
  libraries. This avoids crashes of servers that load add-ons
  (Media-Addon-Server and Print-Server) when shutting down Haiku.
* As executable are shared on Haiku, we use crtbeginS.o and crtendS.o
  for those, too.
* To simplify, we even use crtbeginS.o and crtendS.o in the kernel,
  but there they don't currently make a difference, as the respective
  initialization and cleanup functions are not being invoked by the
  kernel.
2014-07-26 19:13:24 +02:00
Jonathan Schleifer
8f9b4f71c5 Fix comment 2014-07-17 01:25:27 +02:00
Jonathan Schleifer
32ccf45f44 build/jam/ArchitectureRules: Check for != 1, not = 0 2014-07-17 01:14:55 +02:00
Ingo Weinhold
e8681d9409 Increase boot loader size for x86* boot floppy a bit 2014-07-12 18:41:09 +02:00
Oliver Tappe
006637a9b6 Revert "Increase HAIKU_BOOT_ARCHIVE_IMAGE_OFFSET for debug builds."
* That change did not make any sense, as the floppy-boot images
  can't be built in debug mode anyway (the result is much too large).

This reverts commit 911821275a.
2014-06-11 09:43:42 +02:00
Oliver Tappe
911821275a Increase HAIKU_BOOT_ARCHIVE_IMAGE_OFFSET for debug builds. 2014-06-02 02:00:28 +02:00
Pawel Dziepak
2c001246a0 build: when using gcc4 build kernel with c++11 2014-05-08 23:07:50 +02:00
Oliver Tappe
8c54af563c Whitespace cleanup in root and 'build' folder.
* Removed trailing whitespace and empty lines at top of files.
2014-05-01 12:55:41 +02:00
Adrien Destugues
840839b546 In jam, unset variables aren't equal to 0
Make our Werror check work again with gcc.
2014-04-15 09:17:57 +02:00
Jonathan Schleifer
ecf79f7430 Fix my previous commit
I didn't realize that if $(var) is true if var is 0. Only noticed that
after pushing, sorry.
2014-04-03 18:52:17 +02:00
Jonathan Schleifer
c2b76f7f8f Add --use-clang option to configure
This also adjusts the jam files to not use $(CLANG) anymore.
2014-04-03 18:26:29 +02:00
Jonathan Schleifer
a04a520b0d Switch back from yasm to nasm
These days, nasm supports more instructions than yasm. Additionally, it
offers a disassembler.
2014-03-28 23:10:24 +01:00
Jonathan Schleifer
4626c49e32 desklink: Fix %ld being used instead of B_PRId32
Also enables -Werror.
2014-03-27 20:36:39 +01:00
Jonathan Schleifer
18bac98397 Fix missing includes in libbsd
This makes it compile with -Werror.
2014-03-22 21:23:30 +01:00
Alexander von Gluck IV
d035469704 ARM: Name beagleboneblk back to beagle
* Pulkomandy pointed out that all Beagle hardware is
  very similar so we could likely get away with a single
  ARM target board.
2014-02-26 15:33:40 -06:00
Alexander von Gluck IV
6d3363214f ARM: Simplify board specification
* Don't assume verdex as it isn't clear this was
  occurring.
* Make an educated guess on HAIKU_BOOT_PLATFORM
  based on provided board (but still allow it to
  be overridden)
* Error out if user doesn't populate
  HAIKU_BOOT_PLATFORM or enters an unknown board
  name.
* You need to add "-sHAIKU_BOOT_BOARD=xxx" to
  your jam to build for the proper ARM device.
* Rename beagle to beagleboneblk as per the
  documentation.
2014-02-26 00:27:18 -06:00
Alexander von Gluck IV
1b38c3412c mips: Remove mips
* As per the ML discussions. Bumps MIPS to tier 3.
* We've reached a unanimous descision that MIPS doesn't
  target any real / valid hardware Haiku wants to pursue
  at the moment.  In the event that anyone wants to pursue
  MIPS, feel free to fork Haiku into your own repository
  (and we'll even link to it on the website ports page)
* If someone develops a viable plan for MIPS (and gets the
  port working, it can be readded at a later date)
2014-02-18 16:29:09 -06:00
Pawel Dziepak
3306e3aa75 build: Enable -Werror for add-ons/kernel/power 2014-01-29 04:11:42 +01:00