Commit Graph
97 Commits
Author SHA1 Message Date
Jonathan Schleifer 7f2419ee59 Add less to bootstrap image 2014-10-28 18:56:02 +01:00
Jonathan Schleifer 982bb9f713 Update python_bootstrap to 2.7.6
Python 2.7.x has *much* better cross-compiling support so that it's now
actually possible to properly cross-compile Python during the bootstrap.
Before, it would just depend a lot on luck and the build host used, now
it even cross-compiles on OS X.

This means it's now possible to build a working bootstrap image on OS X!
:)
2014-10-28 15:18:28 +01:00
Jonathan Schleifer c9dd05ff40 configure: Add variable to see if we're bootstrapping 2014-10-26 21:07:57 +01:00
Jonathan Schleifer 1436138938 Update icu_bootstrap
Our code wouldn't compile with the old one anymore (issuing warnings
when -Werror is enabled).
2014-10-25 23:16:57 +02:00
Jonathan Schleifer 4409556b7a Small fix for C++11 to make Clang happy 2014-08-31 21:59:28 +02:00
Jonathan Schleifer e0650f25c3 Build libsupc++-kernel without TLS 2014-07-20 20:32:34 +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
Jonathan Schleifer 6a2fd3a50e Add __dso_handle to bootloader and kernel
Clang references these when building for x86_64.
2014-04-03 19:19:33 +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 fe7d7c27fc RepositoryRules: Add option to now download any packages
This is useful if Haiku should be built using self-built packages.
2014-04-03 15:55:44 +02:00
Jonathan Schleifer 6c95865236 Replace a few equ with %define to make nasm happy
Interestingly, it only complained about some of them. Changing them all
to %define though, as equ means it should try to evaluate it once, which
of course it can't really if those are ebp+CONSTANT.

Didn't catch those since I wasn't building gcc2h.
Thanks to jessicah for reporting and testing the fix!
2014-03-29 05:07:54 +01:00
Jonathan Schleifer d6f8092732 Sorry, my last commit was incomplete 2014-03-29 02:29:52 +01: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
Jonathan Schleifer dbb5224ac2 Revert "x86 and x86_64: Update binutils package."
This reverts commit 4a4e2dae77.

It broke the build with:
Resolving package dependencies ...
Encountered problems:
problem 1: nothing provides cmd:as>=2.23.2_2013_04_09 needed by
gcc-4.8.2_2014_01_28-2
  solution 1:
    - allow deinstallation of gcc-4.8.2_2014_01_28-2

Instead, the fixed binutils package should be used. Reverting this now
as otherwise it's not even possible to build a system to build a fixed
package.
2014-03-22 02:34:52 +01:00
Jonathan Schleifer d665b2637e Fix compilation of WebPositive on x86_64 2014-03-22 02:33:29 +01:00
Jonathan Schleifer 3c87457022 More B_PRId32
(I wonder why the last build worked without patching this, though.)
2014-03-17 21:51:43 +01:00
Jonathan Schleifer 998f404369 Use B_PRI* instead of PRI*
Sorry, didn't realize they're not the same on 32 bit systems.
2014-03-16 00:08:10 +01:00
Jonathan Schleifer a10ad54c6b Fix a few %l* instead of PRI*32 2014-03-15 23:37:57 +01:00
Jonathan Schleifer fee49d2f35 haiku3d: Fix type mismatches on x86_64 2014-03-15 23:37:56 +01:00
Jonathan Schleifer 88d550e67e histedit.h: Add missing #include <sys/cdefs.h>
This fixes building openssh on the bootstrap image.

The real problem is that it picks up this file instead of the histedit.h
from libedit, though. But since this include was missing anyway, it
makes sense to fix this file, too.
2014-03-15 04:34:46 +01:00
Jonathan Schleifer a5fba62e21 HaikuImageBootstrap: Add random
This is required for scons, which is required to build Mesa.
2014-03-15 02:46:22 +01:00
Jonathan Schleifer 36ab9ee174 Use correct gawk_bootstrap version
This prevents rebuilding it every time jam is called.
2014-03-11 22:13:24 +01:00
Jonathan Schleifer 98ae6f2784 Update HaikuPortsCross repo for all archs 2014-03-10 04:24:55 +01:00
Jonathan Schleifer 92bd26ce8e stdio.h: Add missing *_unlocked declarations
Configure scripts would find the symbols and thus use them and assume
our headers declare them.

This fixes building gcc_bootstrap.
2014-03-09 23:08:51 +01:00
Jonathan Schleifer 0992d43c0b Add clang-3.4-3 for x86 2014-02-19 01:22:34 +01:00
Jonathan Schleifer 2937677524 Downgrade libpcre for x86
The new version breaks git, but only once it's in the repository.
Installing it manually alongside the old one works. Rebuilding git and
uploading a new package does not work, as for the package management,
the new version is exactly equal to the old, as the port revision isn't
newer. We need to come up with a proper way to handle this.

Also removes zsh, as that requires the new libpcre.
2014-02-15 11:39:39 +01:00
Jonathan Schleifer 47343f61a5 Update libpcre to 8.33-1 for x86 2014-02-15 02:54:58 +01:00
Jonathan Schleifer a781beade7 Add zsh for x86 2014-02-15 02:48:36 +01:00
Jonathan Schleifer 97ab2b9b2f AboutSystem: Add myself to current maintainers 2014-02-14 01:26:38 +01:00
Jonathan Schleifer be3f404ca1 Terminal: Add option to use bright instead of bold text
A saturated add was chosen instead of tint_color, as the results of
tint_color were too extreme.
2014-02-14 01:22:37 +01:00
Jonathan Schleifer 221554b08d Add vim-7.4-1 for x86 2014-02-08 18:47:59 +01:00
Jonathan Schleifer b55c918f57 Import gnuregex 0.12 and remove hardcoded paths
This is required on OS X and other systems which do not have the glibc
extensions for regular expressions (FreeBSD is not one of them as it
already includes gnuregex in /usr). With this there are no hardcoded
non-standard paths for OS X anymore.

regex.c and regex.h are from the official gnuregex 0.12 distribution,
the only modification is that I added __BEGIN_DECLS and __END_DECLS to
regex.h.
2014-02-03 18:27:35 +01:00
Jonathan Schleifer d229280a80 .gitignore: Remove the NFD entry
The correct way is to set precomposeunicode = true in .git/config so
that git handles NFC vs. NFD. Not sure what a good place to document
that would be, though.
2014-02-02 08:47:59 +01:00
Jonathan Schleifer 9fc69d1b00 runtime_loader: Add __dso_handle.
The symbol is needed for global objects. Usually, GCC also requires
this, but for some reason, the linking error only occurs when using
Clang.

Signed-off-by: Jérôme Duval <[email protected]>
2014-01-13 19:35:34 +01:00
Jonathan Schleifer e929cd2f8f ipv6 datagram: Fix Clang complaining about a flexible array member.
Interestingly, [0] should be as invalid in C++ as [] in this case, yet
Clang refuses [], but accepts [0].

Signed-off-by: Jérôme Duval <[email protected]>
2014-01-13 19:16:31 +01:00
Jonathan Schleifer 9c707f06a2 udf: Move constant to header.
This way, it is a compile time constant and Clang does no longer
complain about dynamic arrays of non-POD types.

Signed-off-by: Jérôme Duval <[email protected]>
2014-01-13 19:15:58 +01:00
Jonathan Schleifer 76b12d6056 StackOrHeapArray: Add missing include of cstddef.
Signed-off-by: Jérôme Duval <[email protected]>
2014-01-13 19:14:49 +01:00
Jonathan Schleifer 3d916a2cd7 Intel Partition Table: Remove dummy atomic_add.
This dummy was intended for boot code, however, atomic_add seems to be
already properly defined in boot code.

Signed-off-by: Jérôme Duval <[email protected]>
2014-01-13 19:14:34 +01:00
Jonathan Schleifer d1c7f766fd glibc: Remove a ++ that was accidentally added.
Thanks to PulkoMandy for noticing!

Work towards bug #10396
2014-01-11 17:33:42 -06:00
Jonathan Schleifer 624435c494 Add flags needed for Clang to the build system.
This uses a variable CLANG that should be set to the Clang version. For
now, this has to be done manually (e.g. when invoking jam using jam
-sCLANG=34), but later, this will be auto-detected.

Work towards bug #10396
2014-01-11 17:33:36 -06:00
Jonathan Schleifer faf564a527 netcat: Add missing declaration. 2014-01-10 22:32:29 +01:00
Jonathan Schleifer b187bd95a0 compress: Add missing return types and declarations. 2014-01-10 22:32:21 +01:00
Jonathan Schleifer 04a0e9c7b6 ALM: Move forward declaration of Constraint to the right namespace. 2014-01-10 22:32:15 +01:00
Jonathan Schleifer 72b14059a9 Fix sizeof on private, non static variable. 2014-01-10 22:32:10 +01:00
Jonathan Schleifer 38fee4c388 glibc: Remove nested function.
Nested functions are a (again, broken) GNU extension which is not
supported by Clang. It has been replaced by a bunch of gotos and a
variable that works as a return address.
2014-01-10 22:32:05 +01:00
Jonathan Schleifer 4683fcc35c glibc: Correctly create weak symbols. 2014-01-10 22:31:58 +01:00
Jonathan Schleifer f4c2f7ebdb Remove variable length arrays of non-PODs.
Variable length arrays of non-PODs are not part of the C++ standard, but
a GNU extension that never worked correctly. Instead, BStackOrHeap array
is used now, which makes sure that it's not too big for the stack, calls
all constructors and is valid C++.
2014-01-10 22:31:50 +01:00
Jonathan Schleifer 4bda0212ce Add BStackOrHeapArray. 2014-01-10 22:31:46 +01:00
Jonathan Schleifer 6abec6b93a Declare BLooperListIterator in the right place.
Before, it tried to typedef it to a private struct, but outside of the
class.
2014-01-10 22:31:37 +01:00
Jonathan Schleifer 0485942c82 gitignore: Ignore NFC vs NFD on OS X. 2013-12-19 13:33:56 +01:00
Jonathan Schleifer bd50e8aedb Get rid of a workaround; building with Clang works now. 2013-12-19 12:57:20 +01:00
Jonathan Schleifer fc5dbdc92c Get rid of an error caused by -Werror=unused-function.
Signed-off-by: Axel Dörfler <[email protected]>
2013-12-19 02:07:21 +01:00
Jonathan Schleifer f5a47df37d Fix the agg headers to be proper C++.
Signed-off-by: Axel Dörfler <[email protected]>
2013-12-19 02:00:44 +01:00
Jonathan Schleifer e3e0255008 rootfs.cpp: Replace undefined behaviour with offsetof.
Signed-off-by: Axel Dörfler <[email protected]>
2013-12-19 01:52:33 +01:00
Jonathan Schleifer c7cb9b2f59 delete_driver_settings.cpp: Get rid of the weak alias.
As weak aliases are not supported on OS X, this caused problems when
building Haiku on OS X, as this file is also used for the host tools.

Signed-off-by: Axel Dörfler <[email protected]>
2013-12-19 01:52:33 +01:00
Jonathan Schleifer 77ac2d8d8d SnifferRules.cpp: Make the arguments for operator< const.
It is used on const versions of sniffer_rule and thus it needs to be
declared with const.
2013-12-17 19:58:57 +01:00
Jonathan Schleifer 6a2d12cbee PackageInfoParser.cpp: Add missing include for strtoll. 2013-12-17 19:58:55 +01:00
Jonathan Schleifer 17fe3f8106 BPlusTree.h: Remove invalid forward declaration.
That forward declaration was actually a backward declaration, as
system_dependencies.h already included Stack.
2013-12-17 19:58:54 +01:00
Jonathan Schleifer 724947ebca HashSet.h: Replace whatever that was with proper C++ 2013-12-17 19:58:52 +01:00
Jonathan Schleifer a7d796e232 Only declare strl{cpy,cat} if they aren't defines.
On some system (e.g. OS X Mavericks), those are defines to compiler
built-ins, thus trying to declare them will fail.
2013-12-17 19:58:51 +01:00
Jonathan Schleifer a0e690928b Terminal: Fix cursor blinking.
Signed-off-by: Adrien Destugues - PulkoMandy <[email protected]>
2012-11-05 19:23:58 +01:00
Jonathan Schleifer 122905281d Terminal: Make the cursor color configurable.
Signed-off-by: Adrien Destugues - PulkoMandy <[email protected]>
2012-11-05 16:27:41 +01:00
Jonathan Schleifer 4e3d346e91 Terminal: Make cursor blinking an option.
Signed-off-by: Rene Gollent <[email protected]>
2012-11-04 17:40:24 +01:00
Jonathan Schleifer 6555ffb55d Add a LICENSE file
This states that our default license is the MIT license and includes all
the licenses from data/system/data/licenses.

The LICENSE file is scraped by various bots and also used by the GitHub
license API.
2015-11-16 21:51:33 +01:00
Jonathan Schleifer 82f5db2e26 More libunwind compilation fixes 2015-11-09 20:00:06 +01:00
Jonathan Schleifer ab1ac5930b Fix a typo 2015-11-09 19:56:38 +01:00
Jonathan Schleifer 8e3c9301d9 Add Jamfile for x86 libunwind 2015-11-09 19:06:11 +01:00
Jonathan Schleifer 7a541d13ed Some progress towards libunwind compiling
* Add main Jamfile
 * Add x86_64 Jamfile
 * Add config.h for Haiku
 * Add defines missing from elf.h
 * Don't include some missing files
2015-11-09 18:16:08 +01:00
Jonathan Schleifer 18941b085c Import libc++ 2015-11-09 18:02:17 +01:00
Jonathan Schleifer f2c0917eea Import libcxxrt 2015-11-09 18:01:58 +01:00
Jonathan Schleifer d77787f2a4 Import libunwind 2015-11-09 18:01:42 +01:00
Jonathan Schleifer 0e2547a80d Import lib/Headers from Clang 2015-11-09 18:01:18 +01:00
Jonathan Schleifer c6fb0e2c4d configure: Disable Clang's integrated assembler
We have too much code that doesn't work with it yet and it makes more
sense to get the other parts working with Clang first.
2015-11-08 22:11:28 +01: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 f7ededa623 shell.S: Add .section .bss to make Clang happy 2015-11-08 16:30:40 +01:00
Jonathan Schleifer 50a1d86c88 byteorder.S: Use flds instead of fld
Clang refuses to guess.
2015-11-08 16:27:31 +01:00
Jonathan Schleifer a7bddff13e configure: Cleaner way for --use-clang 2015-11-08 16:00:14 +01:00
Jonathan Schleifer 93bcaf3650 arm/arch_exceptions.S: Replace spsr_all with spsr
After a quick look at binutils, they seem to be equal, however, Clang
does not accept the _all one.
2015-11-08 00:59:18 +01:00
Jonathan Schleifer 15d594cccd ARM: Add __aeabi_memset and __aeabi_memmove alias 2015-11-08 00:54:32 +01:00
Jonathan Schleifer d8548e00aa Fix some more type mismatches with std::{min,max} 2015-11-08 00:44:18 +01:00
Jonathan Schleifer f10b49ed41 Fixup for my last commit (better check for Clang) 2015-11-08 00:37:13 +01:00
Jonathan Schleifer f2f1efc509 Use -no-integrated-as to create asm struct offsets
This depends on quite a nasty hack to generate those, namely using
inline assembly to generate a file with things that are not actually
assembly, which Clang therefore filters out.
2015-11-08 00:04:16 +01:00
Jonathan Schleifer c7624537a3 ARM: Alias __aeabi_memcpy to memcpy 2015-11-07 23:11:14 +01:00
Jonathan Schleifer 456150599a Add __clang__ to a few #ifdefs 2015-11-07 23:02:53 +01:00
Jonathan Schleifer 617793f41b Add back declarations to kernel_cpp.h for GCC
Signed-off-by: Axel Dörfler <[email protected]>
2015-11-07 20:53:13 +01:00
Jonathan Schleifer 96474f3de2 Define __ARM_ARCH__=7 for RPi2 when using Clang 2015-11-07 18:30:07 +01:00
Jonathan Schleifer 55de0addd5 arm/arch_string.S: Only use sane insns for Clang 2015-11-07 18:29:50 +01:00
Jonathan Schleifer ed6dfed2a0 Fix a type mismatch for std::min() 2015-11-07 18:16:40 +01:00
Jonathan Schleifer 71e0324992 Move new / delete kernel_cpp.h -> kernel_cpp.cpp
new and delete may not be defined as inline, as Clang loudly complains.
The same is true for static.
2015-11-07 18:16:23 +01:00
Jonathan Schleifer b310316956 Fix arm/arch_string.S for Clang 2015-11-07 18:08:01 +01:00
Jonathan Schleifer 95d4ed6778 Add missing "using std::nothrow" 2015-11-07 18:08:01 +01:00
Jonathan Schleifer 5213914cec Fix flags for RPi2
There's no point in tuning for the RPi1 CPU.
2015-11-07 18:07:45 +01:00
Jonathan Schleifer 95fd629fa3 Don't use -mapcs-frame with Clang 2015-11-07 18:07:45 +01:00