Commit Graph

331 Commits

Author SHA1 Message Date
Ingo Weinhold
25a7b01d15 Merge branch 'master' into package-management
Additional changes:
* Add src/system/kernel/lib/zlib, which builds a kernel version of zlib,
  needed by packagefs.
* BuildFeatures: Add a build feature "gcc2" to allow for easier checks.
* Referenceable.cpp: Include <OS.h> instead of <debugger.h>. The latter
  is not needed and prevents building for the build platform.
* zlib/zutil.h: Fix gcc 2 build. We really should use the external
  package instead.

Conflicts:
	.gitignore
	build/jam/BuildSetup
	build/jam/FileRules
	build/jam/FloppyBootImage
	build/jam/HaikuImage
	build/jam/ImageRules
	build/jam/KernelRules
	build/jam/NetBootArchive
	build/jam/OptionalBuildFeatures
	build/jam/OptionalLibPackages
	build/jam/OptionalPackageDependencies
	build/jam/OptionalPackages
	build/scripts/build_haiku_image
	configure
	data/bin/installoptionalpackage
	data/system/boot/Bootscript
	headers/os/app/Message.h
	headers/os/package/PackageInfo.h
	headers/os/package/PackageInfoAttributes.h
	headers/os/package/PackageInfoSet.h
	headers/os/package/PackageRoster.h
	headers/os/package/PackageVersion.h
	headers/os/package/hpkg/PackageInfoAttributeValue.h
	headers/os/storage/FindDirectory.h
	headers/os/storage/Node.h
	headers/os/support/StringList.h
	headers/private/system/directories.h
	src/add-ons/kernel/drivers/audio/ac97/es1370/Jamfile
	src/add-ons/kernel/file_systems/packagefs/AttributeIndex.cpp
	src/add-ons/kernel/file_systems/packagefs/Jamfile
	src/add-ons/kernel/file_systems/packagefs/Package.cpp
	src/add-ons/kernel/file_systems/packagefs/Package.h
	src/add-ons/kernel/file_systems/packagefs/PackageDomain.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageDomain.h
	src/add-ons/kernel/file_systems/packagefs/PackageFSRoot.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.h
	src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.h
	src/add-ons/kernel/file_systems/packagefs/PackageLinksDirectory.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageNode.h
	src/add-ons/kernel/file_systems/packagefs/ResolvableFamily.cpp
	src/add-ons/kernel/file_systems/packagefs/Version.cpp
	src/add-ons/kernel/file_systems/packagefs/Version.h
	src/add-ons/kernel/file_systems/packagefs/Volume.cpp
	src/add-ons/kernel/file_systems/packagefs/Volume.h
	src/add-ons/kernel/file_systems/packagefs/kernel_interface.cpp
	src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c
	src/apps/deskbar/BarApp.cpp
	src/apps/deskbar/BarMenuBar.cpp
	src/apps/deskbar/BarMenuBar.h
	src/apps/deskbar/BarView.cpp
	src/apps/deskbar/BarView.h
	src/apps/deskbar/BarWindow.cpp
	src/apps/deskbar/BarWindow.h
	src/apps/deskbar/DeskbarMenu.cpp
	src/apps/deskbar/DeskbarMenu.h
	src/apps/deskbar/DeskbarUtils.cpp
	src/apps/deskbar/DeskbarUtils.h
	src/apps/deskbar/ExpandoMenuBar.cpp
	src/apps/deskbar/ExpandoMenuBar.h
	src/apps/deskbar/TeamMenu.cpp
	src/apps/processcontroller/ProcessController.cpp
	src/apps/remotedesktop/RemoteDesktop.cpp
	src/bin/bash/config-top.h
	src/bin/finddir.c
	src/bin/package/Jamfile
	src/bin/package/command_add.cpp
	src/bin/package/command_create.cpp
	src/bin/package/command_list.cpp
	src/bin/package_repo/command_list.cpp
	src/bin/pkgman/command_refresh.cpp
	src/build/libbe/support/Jamfile
	src/build/libpackage/Jamfile
	src/build/libroot/Jamfile
	src/build/libroot/fs.cpp
	src/build/libroot/remapped_functions.h
	src/kits/locale/MutableLocaleRoster.cpp
	src/kits/opengl/GLRendererRoster.cpp
	src/kits/package/PackageInfo.cpp
	src/kits/package/PackageInfoSet.cpp
	src/kits/package/PackageRoster.cpp
	src/kits/package/PackageVersion.cpp
	src/kits/package/RepositoryCache.cpp
	src/kits/package/hpkg/PackageWriterImpl.cpp
	src/kits/package/hpkg/ReaderImplBase.cpp
	src/kits/package/hpkg/WriterImplBase.cpp
	src/kits/print/PrintTransport.cpp
	src/kits/print/Printer.cpp
	src/kits/screensaver/ScreenSaverRunner.cpp
	src/kits/support/StringList.cpp
	src/kits/tracker/ContainerWindow.cpp
	src/kits/tracker/DeskWindow.cpp
	src/kits/tracker/PoseView.cpp
	src/libs/print/libprint/Transport.cpp
	src/preferences/printers/AddPrinterDialog.cpp
	src/preferences/screensaver/ScreenSaverWindow.cpp
	src/servers/debug/DebugServer.cpp
	src/servers/input/AddOnManager.cpp
	src/servers/media_addon/MediaAddonServer.cpp
	src/system/boot/Jamfile
	src/system/boot/loader/Jamfile
	src/system/boot/loader/loader.cpp
	src/system/boot/loader/vfs.cpp
	src/system/kernel/fs/vfs.cpp
	src/system/kernel/fs/vfs_boot.cpp
	src/system/libroot/os/find_directory.cpp
	src/system/runtime_loader/runtime_loader.cpp
	src/tools/package/Jamfile
2013-05-05 15:03:26 +02:00
Jerome Duval
748c10f222 Added a configure option to activate Graphite compilations flags
* check if GCC actually supports Graphite flags when the option
  --use-gcc-graphite is used
2013-04-06 13:58:46 +02:00
Rene Gollent
a198eedcc7 Fix incorrect version checks.
It's sufficient to simply check if the gcc version is 4 or higher since
we enforce the use of the latest ported compiler for the build anyways,
and these multi-level checks would fail in their current state if gcc
moved to e.g. version 5.0.
2013-03-25 21:14:17 -04:00
Fredrik Holmqvist
a54db680ba Revert "Remove fno-tree-vrp compile flag."
This reverts commit e8d6e3fe3b.
Also added a comment pointing to the recent discussion.
See http://www.freelists.org/post/haiku-development/hrev45320-Yet-another-nonobvious-effect-of-ftreevrp-optimization
2013-03-25 22:29:15 +01:00
Rene Gollent
9595506fb8 Fix typo. 2013-03-24 21:33:57 -04:00
Rene Gollent
5787587d53 Disable array bounds warnings on gcc 4.6. Fixes #9522. 2013-03-24 11:27:49 -04:00
Pawel Dziepak
7f61e6e4e5 Merge branch 'nfs4'
Conflicts:
	build/jam/HaikuImage
2013-03-11 13:00:55 +01:00
Fredrik Holmqvist
e8d6e3fe3b Remove fno-tree-vrp compile flag.
My tests hasn't shown any problems with removing it.
Let me know if there still are.
2013-02-24 08:52:15 +01:00
Jerome Duval
058f84c3e1 Follow up to hrev45127
* check whether HAIKU_STRIP variable is set
* use AddVariableToScript instead of AddTargetVariableToScript
  since $(HAIKU_STRIP) isn't a jam target.
2013-01-19 16:12:20 +01:00
Alex Smith
5f4df83cbd Fixed ARM build. 2012-11-18 19:09:35 +00:00
Alex Smith
11c9f9a1d6 Merge branch 'master' into x86_64
Conflicts:
	build/jam/FloppyBootImage
	build/jam/OptionalBuildFeatures
	build/jam/OptionalPackages
	headers/private/shared/cpu_type.h
	src/bin/ps.c
	src/bin/sysinfo.cpp
	src/kits/tracker/PoseView.cpp
	src/preferences/appearance/DecorSettingsView.cpp
	src/preferences/virtualmemory/Settings.cpp
	src/servers/input/AddOnManager.cpp
	src/servers/input/InputServer.cpp
	src/servers/input/InputServerMethod.cpp
	src/system/boot/Jamfile
	src/system/boot/platform/raspberrypi_arm/mmu.cpp
	src/system/boot/platform/u-boot/arch/arm/Jamfile
	src/system/kernel/arch/x86/arch_cpu.cpp
	src/system/kernel/arch/x86/arch_thread.cpp
	src/system/kernel/cache/block_cache.cpp
	src/system/kernel/vm/VMAnonymousCache.cpp
2012-11-18 14:02:07 +00:00
Jérôme Duval
7be608abc4 HPGSTranslator: fix the build
* add missing definition since libpng upgrades
* don't treat warnings as errors
2012-10-30 21:51:23 +01:00
Alex Smith
c864ba1a2d Build a separate libsupc++ for the kernel with correct flags.
Kernel mode code on x86_64 needs to be built with -mno-red-zone as
interrupts would corrupt the red zone if it were in use. However, the
kernel is linked with libsupc++, which was not compiled with
-mno-red-zone. If an interrupt occurred in libsupc++ code the red zone
would get corrupted. This was causing random panics, particularly under
heavy system load. Therefore, on x86_64 a separate build of libsupc++
with -mno-red-zone is now done for the kernel to use. Note: this commit
will require a rerun of configure and rebuild of cross tools.
2012-08-16 13:57:04 +01:00
Alex Smith
d4ec857af3 Merge branch 'master' into x86_64 2012-07-31 12:10:24 +01:00
Matt Madia
caf06f6e06 Added 'device' to the library name map. Fixes #8800 per korli. 2012-07-30 09:28:54 +00:00
Alex Smith
385d69fc01 Made it possible to build kernel modules for x86_64.
Added the necessary build flags for modules, and added a module (dpc)
to the floppy image for x86_64 builds for testing purposes. The module
gets loaded correctly and its code runs without issue. Only non-trivial
addition is the different method for generating kernel.so, this is
explained in the kernel Jamfile.
2012-07-19 17:53:46 +01:00
Alex Smith
fc644104ac Merge branch 'master' into x86_64 2012-07-11 12:24:47 +01:00
Alex Smith
0962132cc6 Fixed Mac OS X 10.7 as a build platform (for GCC 4).
* Use gcc and g++ rather than cc and c++, as the latter now point to
  clang with recent Xcode versions and compilation of the host tools
  fail for various reasons with it.
* Replace the case-sensitive filesystem check with a more basic one,
  as diskutil no longer supports the behaviour of getting info for the
  volume that any path is on.
* Updated ReadMe with a correct list of prerequisites for OS X.
* GCC 2 builds are still broken due to a strange error that only
  occurs with a GCC 2 built on OS X 10.7
2012-07-10 19:33:39 +01:00
Alex Smith
898b29e362 Added temporary stack trace function to x86_64.
Will be merged with the x86 one later on. Requires -fno-omit-frame-pointer on
the kernel build flags, GCC defaults to not generating stack frames on x86_64.
2012-07-05 15:35:43 +01:00
Alex Smith
da80a0500c Preparation for merge of x86 and x86_64 kernel sources.
Since x86 and x86_64 share a lot of common code, x86_64 kernel sources/headers
are going to reside under headers/private/kernel/arch/x86 and
src/system/kernel/arch/x86 along with the existing x86 code. This commit
changes the build system to handle this. A new variable, TARGET_KERNEL_ARCH,
has been added. This is the name of the kernel/boot architecture directory
name, set to x86 on both x86 and x86_64. This is now used in all places where
TARGET_ARCH was used to get to kernel arch sources/headers (I've changed
everything necessary as far as I can tell). Kernel won't build for x86_64
at the moment as the sources have not been merged, loader does.
2012-07-02 14:07:49 +01:00
Pawel Dziepak
21769ef603 Add dns_resolver module
dns_resolver module provides a means for all kernel mode code to resolve
DNS hostnames.
2012-06-29 02:14:54 +02:00
Pawel Dziepak
8fe02d0c04 nfs4: Initial commit
Empty file system with only mounting supported.
2012-06-29 02:14:05 +02:00
Alex Smith
6f6d78e877 Cleaned up ELF64 address handling.
* platform_allocate_elf_region() is removed, it is implemented in platform-
  independent code now (ELF*Class::AllocateRegion). For ELF64 it is now
  assumed that 64-bit addresses are mapped in the loader's 32-bit address space
  as (address - KERNEL_BASE_64BIT + KERNEL_BASE).
* mapped_delta field from preloaded_*_image removed, now handled compile-time
  using the ELF*Class::Map method.
* Also link the kernel with -z max-page-size=0x1000, removes the need for
  2MB alignment on the data segment (not going to map the kernel with large
  pages for the time being).
2012-06-25 13:00:50 +01:00
Alex Smith
cfd1c1802f Add -march=pentium to boot {CC,C++}FLAGS on x86_64, prevents GCC from generating SSE code. 2012-06-19 21:54:40 +01:00
Alex Smith
8c0e3c951a Add -mno-red-zone to the kernel CCFLAGS/C++FLAGS.
The red zone is a 128-byte area below the stack pointer specified by the
AMD64 ABI that can be used by leaf functions for their stack frame without
modifying the stack pointer. It is guaranteed not to be modified by signal
handlers. This cannot be used in kernel mode code, as an interrupt handler
could overwrite it, so stop GCC from generating code that uses it.
2012-06-15 20:05:25 +01:00
Alex Smith
65ad1ba320 Made it possible to build the bootloader when targetting x86_64.
* x86_64 is using the existing *_ia32 boot platforms.
* Special flags are required when compiling the loader to get GCC to compile
  32-bit code. This adds a new set of rules for compiling boot code rather
  than using the kernel rules, which compile using the necessary flags.
* Some x86_64 private headers have been stubbed by #include'ing the x86
  versions. These will be replaced later.
2012-05-26 21:47:27 +01:00
François Revol
3884764492 Include BoardSetup from BuildSetup
* while it seemed to work before, BuildSetup was actually adding includes from the default boot platform, before BoardSetup had a chance of changing it.
2012-05-11 17:53:30 +02:00
Alexander von Gluck IV
80a215135a BuildSetup: Enable other platforms besides u-boot on arm 2012-04-28 18:35:38 -05:00
Oliver Tappe
60f75e901c Merge liblocale.so into libbe.so.
* Make the locale kit a part of libbe.
* Drop the LocaleBackend kludge used from within libbe (and from
  other places, too) in order to access system catalog strings. 
  This is now done via gSystemCatalog, which is provided and initialized
  by libbe.
* Drop all references to liblocale.so from all Jamfiles.
* Add legacy symlink liblocale.so in order to keep optional packages
  that rely on it in a working state.

TODO: the documentation hasn't been updated.
2012-04-04 22:44:42 +02:00
Jerome Duval
eb5f363978 Fixes some occurrences of 'variable set but not used', disables Werror for problematic items. 2012-02-23 20:32:11 +01:00
Jérôme Duval
c59b279b71 Added workarounds and options for gcc 4.6.2
* add -Wno-unused-but-set-variable for gcc 4.6.x with a TODO
* fix warnings about wrong size of pointer cast in ioapic.cpp and AudioBuffer.cpp
2012-01-19 19:44:42 +01:00
Michael Lotz
17e82349a7 Remove coreutils and tcpdump from the DEBUG blacklist.
The DEBUG build for these has been fixed in hrev43636 and hrev43637
respectively.
2012-01-07 03:47:46 +01:00
Urias McCullough
31c110be6e Remaining subdirs that cannot be compiled with DEBUG=1
Signed-off-by: Michael Lotz <mmlr@mlotz.ch>
2012-01-07 03:45:56 +01:00
Oliver Tappe
8ad8d2e5d2 Activate -Werror for POSIX locale backend and the code using it. 2011-12-15 13:26:45 +01:00
Fredrik Holmqvist
34b63b5b9d Remove libbe_build linking m from earlier commit and add -lm to HOST_LINK_FLAGS on non BeOS compatible platforms.
(HOST_LIBROOT would need more work than just adding m so I went the easy route.)
2011-12-11 00:45:44 +01:00
Oliver Tappe
692e9b11e4 Build fix part 2: active libroot_build.a again:
* uncomment the building of libroot_build.a again
* add function remapper to HOST_STATIC_LIBROOT
* drop TODO about the function remapper not working with the static
  libroot

Ingo: please review - I think this should work, but I'm not so sure
where HOST_STATIC_LIBROOT should be in the list of libraries of its
only user (<build>bfs_fuse): where it is now or right at the end?

As it is now, the resulting binary still contains references to
host-libc-implementations of close() & others, which are triggered by
the other libs (like libfuse.so). If I put HOST_STATIC_LIBROOT right at
the end, those references are gone, though. But which is correct?
2011-11-25 22:04:51 +01:00
Ingo Weinhold
55bc371993 Wrap POSIX FD functions in libroot_build
This makes opening symlinks work universally in the build system tools.
Two mechanisms have been implemented, both of which don't always work.
The first is remapping via preprocessor macros. This fails where equally
named methods are used (e.g. STL fstream::open()). The other is using
hidden functions in the new libroot_build_function_remapper.a that is
linked into everything that is linked against libroot_build.so. This one
fails for functions that are defined inline in headers (Linux/glibc does
that). Together they seem to cover our build system needs ATM.
2011-11-25 06:18:41 +01:00
François Revol
b33a1b1c5f PowerPC platform might not always be OpenFirmware 2011-11-12 23:46:40 +01:00
Travis Geiselbrecht
6c6edebce8 [build][OSX] revise the darwin test to darwin10 and darwin11, not a wildcard
As PulkoMandy pointed out on IRC, darwin10 and 11 (10.6 and 10.7) are at least partially 64bit, so
the test only applies there. When darwin12 comes out it'll have to be fixed.
2011-11-12 13:25:16 -08:00
Travis Geiselbrecht
b2916b0c6e Fix build on OSX Lion, which has apparently bumped the darwin version to darwin11 2011-11-12 13:01:10 -08:00
Ingo Weinhold
cd3e093133 Fix x86_64 BuildConfig issues
* Resolve TODO: HOST_GCC_BASE_FLAGS should not be included in
  HOST_LDFLAGS. Enable adding "-fno-strict-aliasing -fno-tree-vrp"
  accordingly.
* Fix handling of HOST_PLATFORM_IS_64_BIT and HAIKU_HOST_USE_32BIT: The
  former does now state whether the platform is effectively treated as
  64 bit platform, i.e. it actually is 64 bit and the 32 bit mode is
  not enforced. HAIKU_HOST_USE_32BIT is now only set when the platform
  is actually 64 bit, but 32 bit mode is enforced.
2011-11-12 15:40:17 +01:00
Ingo Weinhold
1c2d7d3a86 Fixed x86_64 handling by the build system.
* Map build variables HOST_CPU and HOST_ARCH to x86_64, if it they are
* x86 and
  64 bit and define the __x86_64__ C macro instead of __INTEL__ in that
case.
* <OS.h>: Also handle __x86_64__.
2011-11-12 15:40:16 +01:00
Alexander von Gluck IV
174240f9be * move DSO policy changes down a few lines to go under C/C++ flags section
* ensure host isn't darwin as Apple doesn't use binutils


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-06 13:14:47 +00:00
Ingo Weinhold
19ae20e67e Merge branch 'master' into pm-flat
Conflicts:
	build/jam/HaikuImage
	build/jam/OptionalBuildFeatures
	build/jam/OptionalPackages
	build/jam/UserBuildConfig.sample
	data/bin/installoptionalpackage
	src/apps/deskbar/DeskbarMenu.cpp
	src/servers/debug/DebugServer.cpp
	src/system/kernel/fs/vfs.cpp
2011-11-05 17:00:01 +01:00
Alexander von Gluck IV
c0ea2063b7 * undo r43186
* fix build due to changes in DSO Linking the right way
  as per bonefish.
* we may need to check host GCC version here... can't find
  when this option was introduced
* fixes #8031 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-04 19:23:34 +00:00
Fredrik Holmqvist
2d980c7f9d Reworked the way HAIKU_CCFLAGS, HAIKU_C++FLAGS and their kernel equivalents are set.
The flags given to configure are kept and the build just adds its own flags onto these.
Also the kernel flags are also based on the flags given at configure.
I suspect this will be needed for llvm.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43169 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 20:54:21 +00:00
François Revol
e88ace8082 Leave a bit more room for the boot drivers tgz archive, but sadly it's not enough.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 02:42:27 +00:00
Fredrik Holmqvist
eab1b0e87e BuildSetup wasn't caring about HAIKU_CCFLAGS or HAIKU_C++FLAGS set at configuring time.
A bit out of my comfortzone with, so please tell me if I'm wrong.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 13:40:53 +00:00
Matt Madia
fdecfdb35c Increase the size of the default raw and default vmware image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-24 21:04:55 +00:00
Ingo Weinhold
4dbc245798 Wrap POSIX FD functions in libroot_build
This makes opening symlinks work universally in the build system tools.
Two mechanisms have been implemented, both of which don't always work.
The first is remapping via preprocessor macros. This fails where equally
named methods are used (e.g. STL fstream::open()). The other is using
hidden functions in the new libroot_build_function_remapper.a that is
linked into everything that is linked against libroot_build.so. This one
fails for functions that are defined inline in headers (Linux/glibc does
that). Together they seem to cover our build system needs ATM.
2011-07-17 16:54:47 +02:00
Ingo Weinhold
ba65f94667 Fix image rules wrt system/ relative entries
* Introduce on-container jam variable HAIKU_CONTAINER_SYSTEM_DIR_TOKENS
  containing the directory tokens relative to the container root to
  refer to system.
* Use the variable in *ToContainer rules that need to put something in
  system.
* AddFilesToContainer: Fix overlooked reference to AddFilesToHaikuImage.
* AddBootModuleSymlinksToContainer: Use relative symlinks. This avoids
  special-casing in the boot loader for packagefs.
2011-07-17 16:54:17 +02:00
Ingo Weinhold
355b8ba755 Build a system Haiku package
* Create rules (build/jam/PackageRules) and a script,
  build_haiku_package, to build hpkg files.
* Move all rule invocations that copy files and created symlinks and
  directories in the "system" directory from HaikuImage to
  HaikuPackages, which creates a package "haiku.hpkg".
* build_haiku_image: Comment out adding the copyrights info to
  AboutSystem for the moment.
2011-07-17 16:54:11 +02:00
Ingo Weinhold
a1cada9784 Fix x86_64 BuildConfig issues
* Resolve TODO: HOST_GCC_BASE_FLAGS should not be included in
  HOST_LDFLAGS. Enable adding "-fno-strict-aliasing -fno-tree-vrp"
  accordingly.
* Fix handling of HOST_PLATFORM_IS_64_BIT and HAIKU_HOST_USE_32BIT: The
  former does now state whether the platform is effectively treated as
  64 bit platform, i.e. it actually is 64 bit and the 32 bit mode is
  not enforced. HAIKU_HOST_USE_32BIT is now only set when the platform
  is actually 64 bit, but 32 bit mode is enforced.
2011-07-17 16:54:10 +02:00
Ingo Weinhold
f1eeb32334 Fixed x86_64 handling by the build system.
* Map build variables HOST_CPU and HOST_ARCH to x86_64, if it they are
* x86 and
  64 bit and define the __x86_64__ C macro instead of __INTEL__ in that
case.
* <OS.h>: Also handle __x86_64__.
2011-07-17 16:54:08 +02:00
Oliver Tappe
3dfd9cb95c Flat commit of all changes from package-management branch in svn 2011-07-17 16:54:06 +02:00
Ingo Weinhold
4cc4f7bb18 * Added KMessage to libroot_build.
* libbe_build: Where possible we directly use the actual Haiku headers and
  sources, now. In the headers/build headers we just include the respective
  Haiku headers as needed. That still allows overrides where necessary. The
  intention is to make it easier to keep the build stuff in sync.
* Fixed a few printf() format and signed/unsigned comparison warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:42:49 +00:00
Jérôme Duval
bb7a272f4a bumped up default image size to 230MB
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-12 11:25:22 +00:00
Oliver Tappe
500bb6305c * WIP-commit of the first parts of the package kit and the pkgman
(console-)tool


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-21 22:18:58 +00:00
Ingo Weinhold
db2b2bd629 Resolved TODO (gcc 4 .eh_frame support).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-02 20:22:48 +00:00
François Revol
9217a573f8 The 68k bootloader will get fatter with video handling...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-01 02:50:10 +00:00
François Revol
710dac2313 M68K: Do not force HAIKU_BOOT_PLATFORM and make the floppy image size depend on it. One should use HAIKU_BOOT_PLATFORM={atari_m68k|amiga_m68k} now instead of setting TARGET_BOOT_PLATFORM.
Note we aren't yet at the point where jam can make you a floppy image due to broken vm stuff.
It might be interesting to also switch the extension used on the image, amiga emulators prefer .adf for ex.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-27 15:51:54 +00:00
Rene Gollent
cc7d899023 When using gcc 4, disallow use of CFI asm for now. This renders executables
generated by Haiku's build sys usable with our Debugger, pending support
for gcc4's (different) exception handler frame format.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-23 15:35:41 +00:00
Axel Dörfler
d26fafe96b * The arp module gives warnings in GCC4, so the typo was actually needed; this
temporarily fixes the build again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-27 12:09:47 +00:00
Axel Dörfler
40b788d449 * Fixed typo that prevented the datalink_protocols to be compiled with -Werror.
* Enabled -Werror for the protocols.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-27 10:53:04 +00:00
Oliver Tappe
34d9bfb077 Missed this when working on warnings a couple of days ago:
* enable -Werror for print add-ons and wonderbrush translator add-on

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-23 14:40:29 +00:00
Oliver Tappe
eba0c4d6d7 * enabled -Werror for all apps
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 17:36:23 +00:00
Oliver Tappe
3605272d0f * turns out src/kits/tracker was low hanging fruit, as it didn't contain any
warnings at all - enabled -Werror for all kits

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 15:54:21 +00:00
Oliver Tappe
1662a36480 * fix the single remaining gcc2-warning in media kit and enable -Werror for it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 15:46:54 +00:00
Oliver Tappe
269ebc04b9 Fix #6373, second try
* make BDADDR_* macros refer to value types instead of addresses
* adjust all interfaces using bdaddr_t* to use (mostly const) refs instead,
  which IMHO makes the interface & code clearer
* that got rid of a couple of const incorrectness casts
* some cleanup along the way


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 15:29:02 +00:00
Oliver Tappe
32a2294fdc * revert r38213, as it introduces initialization problems
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 14:40:17 +00:00
Oliver Tappe
e0ef64750f * fix #6373 by switching the BD... macros to take the address of corresponding
constants, which had to be defined in several places in order to be available
  in the kernel addons, network protocols and the server/kit.
* enable -Werror for all servers

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 21:46:32 +00:00
Oliver Tappe
8f62243f37 * fix warnings in Keymap preflet about hidden virtual by renaming SetFont()
to SetBaseFont() (and fFont to fBaseFont)
* enabled -Werror for all preflets


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 17:37:15 +00:00
Oliver Tappe
37cebf6883 * fixed all warnings in FileTypes preflet and enabled -Werror
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 16:41:28 +00:00
Oliver Tappe
2655efc395 Fixes to Notifications preflet
* CID-1501: protect against dynamic_cast potentially returning NULL
* additional style fixes
* fixed all warnings and enabled -Werror

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 14:56:51 +00:00
Oliver Tappe
529fd9af5d Fixed all warnings in Shortcuts preflet and enabled -Werror for it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 14:35:28 +00:00
Oliver Tappe
f0900cb3ea * fixed a warning in the opengl preflet and added the current
state of things for all preflets to the EnableWerror 
  declarations


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-29 20:13:00 +00:00
Matt Madia
19aa183a5d Increased the size of the default image. Upon first boot, less than 800 KiB was
available for a gcc2hybrid.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37811 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-29 18:31:36 +00:00
Adrien Destugues
4782f2be6c * Remove now unneeded (hopefully) timezone data
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-27 09:48:36 +00:00
Oliver Tappe
c090a0fd84 * updated ICU build packages with newer builds that try a bit harder to avoid
warnings and incorporate some of the ICU-patches we had in our repo before
  we upgraded to 4.4.1
* fixed remaining warnings when building locale kit
* activated EnableWerror for locale kit
* added 'Unicode' license, which is the second license in use by ICU


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-26 22:05:39 +00:00
Matt Madia
266c6cf464 Remove useless commented code. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-25 23:41:39 +00:00
Matt Madia
0f75e967c8 Introduced a new variable, HAIKU_INCLUDE_TRADEMARKS. It used to include/exclude
files from HaikuImage and is set when HAIKU_DISTRO_COMPATIBILITY is 'official'
or 'compatible'


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-25 20:34:17 +00:00
Oliver Tappe
8c28b85ef3 * one more Werror-related build fix for bluetooth
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 23:30:32 +00:00
Oliver Tappe
eddec292d5 * applied patch by kaliber that fixes more than 100 warnings - thanks a lot!
Closes #6349

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 21:43:20 +00:00
Stefano Ceccherini
be6c5ba6a7 Also add debug_server, input_server and cddb_daemon to the WError list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 13:22:51 +00:00
Stefano Ceccherini
016386c6d1 Add midi_server, print_server and registrar to the WError list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 12:39:36 +00:00
Stefano Ceccherini
1e8e2989d6 Use -WError also for libdevice and libtranslation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-10 04:53:07 +00:00
Stefano Ceccherini
7bbe3922f8 Enable WError for midi, midi2 and print kits (tested with both gcc2 and gcc4)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-09 19:55:30 +00:00
Matt Madia
38319af892 Updated HAIKU_DEFAULT_IMAGE_SIZE to 200 M. For some reason, building it in
Haiku causes the image file to need 193 MB; building it in FreeBSD requires
only 180 MB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-02 16:52:58 +00:00
Adrien Destugues
76a4353b79 Add a new way of using the locale kit with static accessors instead of global variables. This has the following consequences :
* Applications don't have to declare BCatalog fCatalog themselves, it's now done automatically
 * Libs and add-ons can be localized just the same way (except static libraries)
For now this new system is yet disabled as I'm looking for some peer review before going on. To enable it you have to define B_TRANSLATE_USE_NEW_MACROS in each file doing catalog access. This will not stay, I'll update the 
other apps to use it.
The linking in jamfiles must be not only with liblocale.so, but also liblocalestub.a. Not sure how to handle this for user-side applications. Libraries are also required to provide a MIME signature to use any catalog.
The locale preflet is updated to the new system (as a test). Othe rapps will follow if everyone is ok with this approach.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-01 11:54:09 +00:00
Ingo Weinhold
97901ec593 Patch by Nathan Mentley:
* Added a few header files in headers/posix/arch that'll allow for an x86_64
  haiku target to be compiled. fenv.h is src/lib/msun/amd64/fenv.h from
  freebsd.
* configure: Added support for x86_64 arch when running
  build_cross_tools_gcc4.
* config[_build]/HaikuConfig.h, BuildSetup: Added x86_64 recognition.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-11 19:40:06 +00:00
Axel Dörfler
6b28334ae8 * Fixed PackageInstaller build by adding liblocale.so to the library name map.
* Ordered the map libraries alphabetically.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-05 09:17:52 +00:00
Ingo Weinhold
adfe871902 Added libdebug.so to the library map.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-26 00:04:33 +00:00
Matt Madia
26b5ececca Create "anyboot-image" and define build profile rules to utilize it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-15 23:51:45 +00:00
Ingo Weinhold
25daf1cf1e * Build libsupc++.so and libstdc++.so only when they aren't provided by the
compiler. Fixes #5322 (the ones in /boot/develop would be overwritten).
* Simplified the Jamfile building these libraries.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-03 20:19:53 +00:00
Ingo Weinhold
ce89123828 Patch partially by Samuel Rodríguez Pérez:
* Added amd64-* as supported host gcc machine.
* Added work-around for AMD64 FreeBSD 8: It only has a static libsupc++,
  which prevents us from building shared libraries, so we use the shared
  libstdc++ instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 04:04:51 +00:00
Ingo Weinhold
4f7b2c67b0 * gcc 4 features built-ins for atomic operations. If the macro
B_USE_BUILTIN_ATOMIC_FUNCTIONS is defined most atomic_*() functions are
  redefined as macros using the built-ins directly.
* Enabled that feature for the x86 build. Might work on other platforms as
  well, but that needs to be tested.

No significant speedup for the -j8 Haiku image build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-11 21:38:07 +00:00
Ingo Weinhold
1a837b3910 Tell gcc to produce code for Pentium at least. Doesn't seem to make any
difference performancewise though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-11 21:12:37 +00:00
Ingo Weinhold
4eb548a8ae Removed useless assigning of the default values and use a switch for the
architectures.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-11 20:36:24 +00:00
Ingo Weinhold
3e5498e4c9 Patch by Andreas Färber modified by myself:
* Determine HOST_LD and HOST_OBJCOPY in configure.
* Removed Solaris ld work-around in BuildSetup.

The change requires configure to be re-run. Alternatively HOST_{LD,OBJCOPY}
can be added to generated/build/BuildConfig.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34892 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-04 17:50:52 +00:00
Oliver Tappe
82cbfd3573 first stab at fixing #5091:
* let BuildSetup set HAIKU_HOST_IS_BIG_ENDIAN according to HOST_GCC_MACHINE
* minor cleanup in BuildSetup
* when building ICU, set the endianness indicator suffix according to
  HAIKU_HOST_IS_BIG_ENDIAN

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-02 22:11:08 +00:00
Ingo Weinhold
1b6f98637b Patch by Andreas Färber: Fix mixup of GNU and Sun linker on OpenSolaris.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-20 16:46:27 +00:00
Ingo Weinhold
0b58d8440c * Prefixed the INCLUDE_GPL_ADDONS variable by "HAIKU_". configure needs to
be run again or generated/build/BuildConfig needs to be adjusted manually.
* Removed bochs debug hack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-20 13:55:45 +00:00
Ingo Weinhold
adf0692b51 * Removed the DEBUG_PRINTF variable support.
* Simplified the HAIKU_INCLUDE_PATENTED_CODE variable support.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-20 13:40:12 +00:00
Ingo Weinhold
e001389fc7 Added shared headers to HAIKU_PRIVATE_KERNEL_HEADERS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-19 14:23:44 +00:00
François Revol
4dc69971bc Force 64bit for i686-apple-darwin10 (OSX), since it seems to fool everyone about it being still 32bit (well the kernel maybe but not the rest). This makes the build go further along on OSX 10.6.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-06 14:22:44 +00:00
Ingo Weinhold
fc7864091e Attempt at allowing to use C++ structures in C only code: We use the
CreateAsmStructOffsetsHeader mechanism to generate a header with macros
defined to the sizes of the structures we're interested in and when compiling
in C mode define the structures as "struct { char bytes[size]; }".
It works in principle, but due to how jam works, one would have to specify the
dependency to the generated header for all sources that include it directly or
indirectly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-02 10:56:10 +00:00
Ingo Weinhold
ba829ba0f9 Adjusted gcc2 work-around to renamed file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-01 17:07:10 +00:00
Ingo Weinhold
6236ae8570 Also include HaikuBuildCompatibility.h on a Haiku host platform and
conditionally define some of the new stuff there. That fixes the build under
a r34172 Haiku, though it also causes some problems that needed working around.
Haven't tested under newer Haiku revisions yet. Will do tomorrow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 23:48:45 +00:00
Axel Dörfler
2f1e464a8c * We need to define __STDC_FORMAT_MACROS, and __STDC_LIMIT_MACROS under BeOS
compatible platforms as well, Ingo. This fixes building Haiku under Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 16:33:10 +00:00
Ingo Weinhold
a79e0ef1ad Also add __STDC_LIMIT_MACROS to the host defines. It gives us macros like
INT32_MAX.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34240 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 11:58:09 +00:00
Ingo Weinhold
bdfce0e900 Define __STDC_FORMAT_MACROS directly in HOST_DEFINES.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 20:19:08 +00:00
Ingo Weinhold
a85cf9d793 * configure: Pass gcc's host machine string to the jam build system.
* BuildSetup: Set jam variable HOST_PLATFORM_IS_64_BIT and add host define
  HAIKU_HOST_PLATFORM_64_BIT if the host platform is 64 bit. Removed the
  check from BeOSBuildCompatibility.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 18:57:49 +00:00
Ingo Weinhold
9d14ecca03 Build package and packagefs with -Werror.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-15 23:22:27 +00:00
Stephan Aßmus
e55dd5f8ef * When compiling on Haiku as the host platform, set HOST_LIBSUPC correctly.
This is important when setting up the TARGET_LIB* constants later, in case
  the target platform is not "haiku". (i.e. libbe_test).
* Added TODO about HOST_GCC_BASE_FLAGS being wrong for GCC4. I couldn't find
  the proper fix, but it is important whan compiling libbe_test on Haiku.
  I worked around this by having the constant defined correctly for the
  problematic file. See the TODO comment.
* Small cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-23 10:14:07 +00:00
Rene Gollent
b25f8906fb Fix build on Haiku. Some tools were missing libstdc++ and beos-compatible build platforms weren't setting the host compat lib dir at all, resulting in the icu build libs not being found.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-19 19:52:30 +00:00
François Revol
1b15449d32 Due to the ICU merges the default image size is too small now, bump it up!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-19 11:21:03 +00:00
Michael Lotz
10c8ce934f Globally enabling the ATA stack now so we don't get inconsistent states between
the alpha and non-alpha profiles.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 20:55:26 +00:00
Jonas Sundström
8e8130d1f0 Adding routerboard_mipsel platform stubs and linker script.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 01:48:18 +00:00
Axel Dörfler
67838392dc * Applied stippi's no-patents patch, but without the ffmpeg part, as that one
is obviously already configured not to use patented code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 17:20:23 +00:00
Axel Dörfler
2c69b5b6c0 * Made the libbe_test environment basically working under Haiku - to actually
make it work, one would need to use versioning for all libbe symbols. This is
  worth an 8k price per file that links against libbe.so, so I didn't want to
  commit this as is. An alternative to this solution would be to write a
  separate application that is responsible for the app_server's window. Comments
  welcome.
* Removed BeOS compatbility of the libbe_test stuff.
* Renamed the libbe_test targets from *haiku* to *test*, ie. libbe_haiku.so is
  now called libbe_test.so, haiku_registrar is now test_registrar, etc.
* This also removes BeOS compatibility from tracker/FSUtils.cpp (all BeOS
  compatibility should be removed, but I don't want to make Alexandre more work
  in his branch, and it's not urgent at all).
* Replaced the former "run" scripts for the test environment with a single
  run script (see updated NOTES file).
* Removed the libbe_test target from some applications - this was only to help
  developing them under BeOS, and is thus no longer necessary.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-19 14:17:13 +00:00
Axel Dörfler
adc5ba48dc * Reverted the smaller boot image - it doesn't seem to work for Stefano (gcc4?)
anymore with the small size, and it didn't fix the problem I originally hoped
  it would.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-18 14:56:59 +00:00
François Revol
feb750d331 [ARM]
- consolidate board specific definitions into build/jam/board/*/BoardSetup to avoid duplicating address values everywhere,
	- add various addresses, boot script, custom C/C++ flags and SD card definition,
	- not sure BoardSetup is included at the best place though,
	- replaced board-specific ldscript with passing the loader address directly to LD from BoardSetup,
- added haiku.mmc target which generates an mmc/SD card image with a FAT partition with the files needed to boot for the board, should later be integrated with haiku.image with the BFS partition offset passed to bfs_shell, requires apt:sfdisk,mtools on GNU/Linux,
- added some more rules, one to build a script for the SD image,
- fake a NetBSD loader for now, U-Boot doesn't know haiku, and we'll need a way to pass the tgz image and RAM size, we'll either use standlone way (usual C argv[]) or the NetBSD args,
- style fixes,
- 80 cols, /me pets Ingo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 16:12:35 +00:00
Axel Dörfler
3f1460bcee * Removed the (intel) gart stuff from the floppy image. Not sure why this was
on it. With the other changes already made, we can now use a 1440k boot image
  for x86 as well, again.
* If you build a CD, you'll have to take extra care to see whether it still fits
  on the floppy or not - space is really tight already.
* Made USB support optional for the CD-ROM. It's turned on, though, since we do
  want to support USB-CD-ROMs by default; this is just something you can use
  once in case we need to enlarge the boot floppy to 2880k again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 14:47:46 +00:00
François Revol
b0b9925be1 Introduce a new level of portability: boards.
Since we don't support Flattened Device Trees yet (and they don't solve all the issues), we need a place to hole board-specific config, which are different even though we use U-Boot on ARM. Things like cpu & mmu type...
U-Boot doesn't really help us there anyway, it only passes a few board infos (RAM banks & the bill), and optionally other stuff if we fake a linux kernel or netbsd loader, but still not enough. FDT support isn't available for ARM in U-Boot yet either. So for now, and likely for stuff we can't get from FDT, we'll put board-specific config there.
Unlike desktop machines were we want a single kernel per arch, we'd rather have the kernel built for a single board without having to handle detecting mmu type at boot and switching calls like I did on m68k.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-05 16:00:13 +00:00
François Revol
6f823c251b Disable -Werror for m68k, arm and mipsel since we aren't really ready for it and we use #warning to mark things to write...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-22 17:34:13 +00:00
François Revol
7043bc6852 [GSoC] [ARM] Patch by Johannes Wischert.
Add ARM defines to the build system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-22 17:17:09 +00:00
Oliver Tappe
16d5c24e53 * merged 32bit-wchar_t branches of buildtools and haiku back into
the respective trunk

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-07 10:30:09 +00:00
Axel Dörfler
aa1f661460 * Quick fix for the broken GCC2 build. The guilty one might want to have another
look at this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-21 17:04:32 +00:00
Ingo Weinhold
a474455132 Changed the way the zip archive with the alternative gcc libraries is built.
Now that's done like building the network boot archive, which gives us a lot
more flexibility for defining its contents.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 01:21:32 +00:00
Ingo Weinhold
f604da453f Patch by Eric Petit: Fixed the library path for the build tools on Darwin.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-24 22:07:06 +00:00
Ingo Weinhold
c154b94624 Added haiku_version_glue.o "glue code" containing the Haiku/ABI version
symbols recently introduced. Until init_term_dyn.o is linked into kernel
add-ons, too, we link with haiku_version_glue.o, so we have those symbols
in kernel add-ons as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-21 15:04:37 +00:00
Ingo Weinhold
003ebb0e83 * Also define the build system variables TARGET_STATIC_{LIBSTDC++,LIBSUPC++}.
* runtime loader:
  - Fixed gcc 4 warnings.
  - Enabled -Werror.
  - Renamed all remaining *.c source files to *.cpp.
  - Implemented GNU style ELF symbol versioning support.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-20 02:22:36 +00:00
Jonas Sundström
226136446a Prepare mipsel for jamming. Adding mipsel target case, a simple boot platform and a -fno-pic setting for the kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-02 19:03:19 +00:00
François Revol
dc80fc5244 Pass ATA_STACK from jam now, so one can override it with HAIKU_ATA_STACK=1 in their UserBuildConfig. Probably needs to conditionalize some targets on it too...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-28 23:04:39 +00:00
François Revol
357179de85 Use 150kB tgz offset for m68k.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-27 19:36:26 +00:00
François Revol
4eae7ffa1e Use arch specific floppy image size, Atari machines don't know about 2.88kB... plus it still fits in.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-27 19:28:13 +00:00
Ingo Weinhold
77e84f219a configure does now check the yasm version for target architecture x86, and
sets the HAIKU_YASM build variable, which will be checked in BuildSetup.
Re-running configure or adding the variable manually to
generated/build/BuildConfig is required.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-13 10:50:17 +00:00
Axel Dörfler
317bd7dda3 * Changed directory structure as suggested on the mailing list.
* Made the TimeZoneView less error prone, and also actually use Haiku code (the
  previous check didn't work since it used #if, not #ifdef).
* Also took the liberty to rename our boot loader to haiku_loader, since I had
  to update the nasm binary anyway. Updated the assembly sources to nasm 2.0.
* I haven't found where the synth location in the MIDI code is specified,
  though.
* Also, NetBootArchive, and FloppyBootImage haven't been updated yet. Will do
  so next.
* Some optional packages still put their license to beos/etc/licenses. I didn't
  update them yet, as we'll probably do so anyway at some point. Also, I think
  we might want to introduce a common/data/licenses instead for those.
* If you encounter any problems, please tell!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-03 09:02:44 +00:00
Ingo Weinhold
9a8f8b7b13 Enabled -Werror for userlandfs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-05 22:06:02 +00:00
Ingo Weinhold
37aefc9c6f * Moved jam argument processing to new build/jam/CommandLineArguments.
* Check the first argument for "help" as well. If given print a somewhat
  helpful text. Consider this my excuse to close ticket #1883. :-)
* Track available and added optional packages and fail, if an optional package
  is requested that doesn't exist. Closes ticket #3332.
* Check for duplicate build profile definitions and fail if encountered.
  Closes ticket #3333.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-23 22:33:09 +00:00
Michael Lotz
e2c3dec923 Preliminary support for building ISO only Haiku CDs. Not working completely
clean yet. Provides a haiku-cd target and creates a bootable image using mkisofs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 02:34:32 +00:00
Michael Lotz
6eb09230ba * Resolve further warnings on GCC4.
* Enable -Werror on GCC4 builds as well (limited to the same selected targets).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-01 22:12:55 +00:00
Michael Lotz
374c632c55 Rumour has it that we now have Haiku hosts with GCC > 2 as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-25 19:25:16 +00:00
Michael Lotz
64f7e20f9c Add -ffreestanding to kernel C/C++ flags. This means that ISO conventions like
the main() signature are not applied and do not generate errors when violated.
Our bootloader has a non-standard main() signature for example, which is of
course fine.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-23 00:40:41 +00:00
François Revol
ad06cdd139 Move the tgz archive offset to 300k, should fix CD boot again, but it's getting tight.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-09 20:36:50 +00:00
François Revol
1c532eedf1 Make the tgz archive offset in floppy image settable. Set it to 270k for now, until zbeos gets some diet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-15 03:30:00 +00:00
François Revol
c7d3cf5b8a First attempt at a PPC bootable iso, doesn't work yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-07 02:35:46 +00:00
Ingo Weinhold
889903f9dd BuildConfig needs to be included before any other rules file. That's why
the wrong Link actions were used (always the no-attributes-support ones
which remove the target first), for instance.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-23 21:45:24 +00:00
François Revol
ff1beff8d1 Add OpenBSD to the list of supported build platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-20 19:44:06 +00:00
Axel Dörfler
b4b00ffcea * Added bfs to the -Werror components.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 20:53:41 +00:00