haiku/headers/os/BeBuild.h
Oliver Tappe 3a111f3310 Fixed what seems to be a typo:
* the default ABI for gcc2 builds should be B_HAIKU_ABI_GCC_2_HAIKU, not B_HAIKU_ABI_GCC_2, as the latter 
  is equal to B_HAIKU_ABI_GCC_2_ANCIENT and enforces the old symbol resolving behaviour.
  If our build isn't ..._HAIKU, what is? ;-)
This fixes a whole lot of perl tests, which failed because the required shared libs could not be loaded
(as they contained undefined symbols that are only found in second level dependencies).
Note: the existing perl optional package works, since it does not contain any ABI specification symbol yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-08 20:28:23 +00:00

55 lines
1.5 KiB
C

/*
* Copyright 2007-2009, Haiku, Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef _BE_BUILD_H
#define _BE_BUILD_H
#define B_BEOS_VERSION_4 0x0400
#define B_BEOS_VERSION_4_5 0x0450
#define B_BEOS_VERSION_5 0x0500
#define B_BEOS_VERSION B_BEOS_VERSION_5
#define B_BEOS_VERSION_MAUI B_BEOS_VERSION_5
/* Haiku (API) version */
#define B_HAIKU_VERSION_BEOS 0x00000001
#define B_HAIKU_VERSION_BONE 0x00000002
#define B_HAIKU_VERSION_DANO 0x00000003
#define B_HAIKU_VERSION_1_PRE_ALPHA_1 0x00000011
#define B_HAIKU_VERSION_1_ALPHA_1 0x00000100
#define B_HAIKU_VERSION_1 0x00010000
#define B_HAIKU_VERSION B_HAIKU_VERSION_1_PRE_ALPHA_1
/* Haiku ABI */
#define B_HAIKU_ABI_MAJOR 0xffff0000
#define B_HAIKU_ABI_GCC_2 0x00020000
#define B_HAIKU_ABI_GCC_4 0x00040000
#define B_HAIKU_ABI_GCC_2_ANCIENT 0x00020000
#define B_HAIKU_ABI_GCC_2_BEOS 0x00020001
#define B_HAIKU_ABI_GCC_2_HAIKU 0x00020002
#if __GNUC__ == 2
# define B_HAIKU_ABI B_HAIKU_ABI_GCC_2_HAIKU
#elif __GNUC__ == 4
# define B_HAIKU_ABI B_HAIKU_ABI_GCC_4
#else
# error Unsupported gcc version!
#endif
#define _UNUSED(argument) argument
#define _PACKED __attribute__((packed))
#define _PRINTFLIKE(_format_, _args_) \
__attribute__((format(__printf__, _format_, _args_)))
#define _EXPORT
#define _IMPORT
#define B_DEFINE_SYMBOL_VERSION(function, versionedSymbol) \
__asm__(".symver " function "," versionedSymbol)
#endif /* _BE_BUILD_H */