* 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
This commit is contained in:
Stephan Aßmus 2009-09-23 10:14:07 +00:00
parent b04721f313
commit e55dd5f8ef

View File

@ -134,6 +134,13 @@ if $(HAIKU_USE_GCC_PIPE) = 1 {
if $(HAIKU_GCC_VERSION[1]) >= 3 {
HAIKU_GCC_BASE_FLAGS += -fno-strict-aliasing -fno-tree-vrp ;
}
# TODO: With Haiku as the host platform, this does not appear to be set up
# correctly, at least when compiling the libbe_test target platform. When
# enabling the lines below, these flags suddenly appear as link flags passed
# to ld as well.
#if $(HOST_GCC_VERSION[1]) >= 3 {
# HOST_GCC_BASE_FLAGS += -fno-strict-aliasing -fno-tree-vrp ;
#}
# override gcc 2.95.3's header directory -- strictly necessary only when using
# the BeOS native compiler (since its headers are incompatible), but it doesn't
@ -648,10 +655,13 @@ HOST_BUILD_COMPATIBILITY_LIB_DIR = [ FDirName $(HOST_OBJECT_BASE_DIR) lib ] ;
HOST_RM_ATTRS_TARGET = ;
if $(HOST_PLATFORM_BEOS_COMPATIBLE) {
# the C++ standard and support libraries
if $(HOST_GCC_VERSION[1]) < 3 {
HOST_LIBSTDC++ = stdc++.r4 ;
HOST_LIBSUPC++ = ;
} else {
HOST_LIBSTDC++ = stdc++ ;
HOST_LIBSUPC++ = supc++ ;
}
HOST_LIBROOT = root ;
@ -867,7 +877,7 @@ if $(TARGET_PLATFORM) = haiku {
TARGET_GCC_LIBGCC_OBJECTS = $(HAIKU_GCC_LIBGCC_OBJECTS) ;
TARGET_BOOT_PLATFORM ?= $(HAIKU_BOOT_PLATFORM) ;
TARGET_BOOT_BOARD ?= $(HAIKU_BOOT_BOARD) ;
TARGET_BOOT_BOARD ?= $(HAIKU_BOOT_BOARD) ;
TARGET_LIBRARY_NAME_MAP = HAIKU_LIBRARY_NAME_MAP ;
@ -883,7 +893,7 @@ if $(TARGET_PLATFORM) = haiku {
TARGET_GCC_LIBGCC_OBJECTS = ;
TARGET_BOOT_PLATFORM = ;
TARGET_BOOT_BOARD = ;
TARGET_BOOT_BOARD = ;
TARGET_LIBRARY_NAME_MAP = HOST_LIBRARY_NAME_MAP ;
}