diff --git a/build/jam/BuildSetup b/build/jam/BuildSetup index cbacb00253..9e578d5410 100644 --- a/build/jam/BuildSetup +++ b/build/jam/BuildSetup @@ -409,7 +409,7 @@ if ! $(HOST_PLATFORM_BEOS_COMPATIBLE) { [ FDirName $(HAIKU_TOP) headers build os storage ] [ FDirName $(HAIKU_TOP) headers build os support ] ; - HOST_BE_API_CCFLAGS = -include HaikuBuildCompatibility.h ; + HOST_BE_API_CCFLAGS = -include BeOSBuildCompatibility.h ; HOST_BE_API_C++FLAGS = $(HOST_BE_API_CCFLAGS) ; } @@ -492,6 +492,8 @@ if $(TARGET_PLATFORM) = haiku { TARGET_BOOT_PLATFORM = $(HAIKU_BOOT_PLATFORM) ; + TARGET_LIBRARY_NAME_MAP = HAIKU_LIBRARY_NAME_MAP ; + } else { local var ; for var in $(buildVars) { @@ -504,15 +506,67 @@ if $(TARGET_PLATFORM) = haiku { TARGET_GCC_LIBGCC_OBJECTS = ; TARGET_BOOT_PLATFORM = ; + + TARGET_LIBRARY_NAME_MAP = ; } # define macro, for identifying the platform switch $(TARGET_PLATFORM) { - case r5 : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_BEOS ; - case bone : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_BONE ; - case dano : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_DANO ; - case haiku : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_HAIKU ; - case linux : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_LINUX ; + case r5 : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_BEOS ; + case bone : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_BONE ; + case dano : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_DANO ; + case haiku : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_HAIKU ; + case linux : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_LINUX ; + case libbe_test : TARGET_DEFINES += HAIKU_TARGET_PLATFORM_LIBBE_TEST ; +} + +# define macro, for identifying the host platform +switch $(HOST_PLATFORM) { + case r5 : TARGET_DEFINES += HAIKU_HOST_PLATFORM_BEOS ; + case bone : TARGET_DEFINES += HAIKU_HOST_PLATFORM_BONE ; + case dano : TARGET_DEFINES += HAIKU_HOST_PLATFORM_DANO ; + case haiku : TARGET_DEFINES += HAIKU_HOST_PLATFORM_HAIKU ; + case linux : TARGET_DEFINES += HAIKU_HOST_PLATFORM_LINUX ; +} + + +#pragma mark - + +# special target libbe_test + +if $(TARGET_PLATFORM) = libbe_test { + # headers and flags + TARGET_HDRS += [ PublicHeaders app interface storage support ] + [ PrivateHeaders $(DOT) ] ; + local compatibilityHeader = -include [ FDirName $(HAIKU_TOP) headers build + HaikuBuildCompatibility.h ] ; + TARGET_CCFLAGS += $(compatibilityHeader) ; + TARGET_C++FLAGS += $(compatibilityHeader) ; + + # compatibility library + TARGET_HAIKU_COMPATIBILITY_LIBS = libhaikucompat.a ; + + # directories + TARGET_OBJECT_BASE_DIR + = [ FDirName $(HAIKU_OBJECT_DIR) $(TARGET_PLATFORM) ] ; + TARGET_COMMON_ARCH_OBJECT_DIR + = [ FDirName $(TARGET_OBJECT_BASE_DIR) common ] ; + TARGET_ARCH_OBJECT_DIR + = [ FDirName $(TARGET_OBJECT_BASE_DIR) $(TARGET_ARCH) ] ; + TARGET_COMMON_DEBUG_OBJECT_DIR + = [ FDirName $(TARGET_ARCH_OBJECT_DIR) common ] ; + TARGET_DEBUG_0_OBJECT_DIR + = [ FDirName $(TARGET_ARCH_OBJECT_DIR) release ] ; + + local level ; + for level in $(HAIKU_DEBUG_LEVELS[2-]) { + TARGET_DEBUG_$(level)_OBJECT_DIR + = [ FDirName $(TARGET_ARCH_OBJECT_DIR) debug_$(level) ] ; + } + + # library name map + TARGET_LIBRARY_NAME_MAP = LIBBE_LIBRARY_NAME_MAP ; + LIBBE_LIBRARY_NAME_MAP_be = libbe_haiku.so ; } diff --git a/build/jam/HelperRules b/build/jam/HelperRules index 3967cc91ae..934b4aa666 100644 --- a/build/jam/HelperRules +++ b/build/jam/HelperRules @@ -126,6 +126,11 @@ rule SetPlatformCompatibilityFlagVariables EXIT "specify it manually." ; } + # special case: Haiku libbe.so built for testing under BeOS + if $(platform) = libbe_test { + platform = haiku ; + } + $(varPrefix)_PLATFORM_BEOS_COMPATIBLE = ; $(varPrefix)_PLATFORM_BONE_COMPATIBLE = ; $(varPrefix)_PLATFORM_DANO_COMPATIBLE = ; @@ -178,6 +183,9 @@ rule SetPlatformCompatibilityFlagVariables ?= $($(varPrefix)_PLATFORM_BONE_COMPATIBLE) ; $(varPrefix)_PLATFORM_(r5)_COMPATIBLE ?= $($(varPrefix)_PLATFORM_BEOS_COMPATIBLE) ; + + $(varPrefix)_PLATFORM_(libbe_test)_COMPATIBLE + ?= $($(varPrefix)_PLATFORM_BEOS_COMPATIBLE) ; } @@ -211,6 +219,13 @@ rule SetSubDirSupportedPlatforms SUPPORTED_PLATFORMS = $(1) ; } +rule AddSubDirSupportedPlatforms +{ + # AddSubDirSupportedPlatforms ; + + SUPPORTED_PLATFORMS += $(1) ; +} + rule SetSubDirSupportedPlatformsBeOSCompatible { # SetSubDirSupportedPlatformsBeOSCompatible ; diff --git a/build/jam/MainBuildRules b/build/jam/MainBuildRules index 511d748594..7f9a85730d 100644 --- a/build/jam/MainBuildRules +++ b/build/jam/MainBuildRules @@ -5,7 +5,8 @@ rule AddSharedObjectGlueCode # we link with -nostdlib and add the required libs manually, when building # for Haiku - if [ on $(1) return $(PLATFORM) ] = haiku { + local platform = [ on $(1) return $(PLATFORM) ] ; + if $(platform) = haiku { local stdLibs = libroot.so ; local beginGlue ; local endGlue ; @@ -29,6 +30,11 @@ rule AddSharedObjectGlueCode Depends $(1) : $(stdLibs) $(beginGlue) $(endGlue) ; LINKFLAGS on $(1) = [ on $(1) return $(LINKFLAGS) ] -nostdlib ; } + + # link against the compatibility libraries needed for the target + if $(platform) != host && $(TARGET_HAIKU_COMPATIBILITY_LIBS) { + LinkAgainst $(1) : $(TARGET_HAIKU_COMPATIBILITY_LIBS) ; + } } rule Executable @@ -256,26 +262,29 @@ rule SharedLibrary rule LinkAgainst { - # LinkAgainst : ; - # Valid elements for are e.g. "be" or "libopenbeos.so" or + # LinkAgainst : [ : ] ; + # Valid elements for are e.g. "be" or "libtranslation.so" or # "/boot/.../libfoo.so". If the basename starts with "lib" or the thingy # has a dirname or grist, it is added to the NEEDLIBS variable (i.e. the # file will be bound!), otherwise it is prefixed "-l" and added to # LINKLIBS. If you want to specify a target that isn't a library and # also has neither grist nor a dirname, you can prepend "" as # grist; it will be stripped by this rule. + # specifies whether the to translate library names (e.g. "be" + # to "libbe.so" in case of target platform "haiku"). Defaults to "true". # local target = $(1) ; local libs = $(2) ; - local mapLibs = $(3) ; + local mapLibs = $(3:E=true) ; on $(target) { # map libraries, if desired and target platform is Haiku - if $(PLATFORM) = haiku { + if $(PLATFORM) != host && $(mapLibs) = true + && $(TARGET_LIBRARY_NAME_MAP) { local mappedLibs ; for i in $(libs) { - local mapped = $(HAIKU_LIBRARY_NAME_MAP_$(i)) ; + local mapped = $($(TARGET_LIBRARY_NAME_MAP)_$(i)) ; mapped ?= $(i) ; mappedLibs += $(mapped) ; } diff --git a/headers/build/HaikuBuildCompatibility.h b/headers/build/HaikuBuildCompatibility.h index eec6454192..1501eb24a8 100644 --- a/headers/build/HaikuBuildCompatibility.h +++ b/headers/build/HaikuBuildCompatibility.h @@ -1,51 +1,38 @@ #ifndef HAIKU_BUILD_COMPATIBILITY_H #define HAIKU_BUILD_COMPATIBILITY_H +#include + +#include +#include + +// no addr_t under standard BeOS typedef unsigned long haiku_build_addr_t; #define addr_t haiku_build_addr_t -#include -#include -#include +#ifndef DEFFILEMODE +#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH) +#endif + +#ifndef FS_WRITE_FSINFO_NAME +#define FS_WRITE_FSINFO_NAME 0x0001 +#endif + +#ifndef B_CURRENT_TEAM +#define B_CURRENT_TEAM 0 +#endif + #ifdef __cplusplus extern "C" { #endif -// Is kernel-only under Linux. +extern size_t strnlen(const char *string, size_t count); + +extern size_t strlcat(char *dest, const char *source, size_t length); extern size_t strlcpy(char *dest, const char *source, size_t length); -// BeOS only -extern ssize_t read_pos(int fd, off_t pos, void *buffer, size_t count); -extern ssize_t write_pos(int fd, off_t pos, const void *buffer,size_t count); - - -// There's no O_NOTRAVERSE under Linux, but there's a O_NOFOLLOW, which -// means something different (open() fails when the file is a symlink), but -// we can abuse this flag for our purposes (we filter it in libroot). -#ifndef O_NOTRAVERSE - #ifdef O_NOFOLLOW - #define O_NOTRAVERSE O_NOFOLLOW - #else - #define O_NOTRAVERSE 0 - #endif -#endif - -#ifndef S_IUMSK - #define S_IUMSK ALLPERMS -#endif - - -// remap strerror() -extern char *_haiku_build_strerror(int errnum); - -#ifndef BUILDING_HAIKU_ERROR_MAPPER - -#undef strerror -#define strerror(errnum) _haiku_build_strerror(errnum) - -#endif - +extern char *strcasestr(const char *string, const char *searchString); #ifdef __cplusplus } // extern "C" diff --git a/headers/private/kernel/syscalls.h b/headers/private/kernel/syscalls.h index f04136e883..868c5a354b 100644 --- a/headers/private/kernel/syscalls.h +++ b/headers/private/kernel/syscalls.h @@ -8,21 +8,29 @@ #include #include -#include +#include -#include +#include #ifdef __cplusplus extern "C" { #endif -struct sigaction; -struct rlimit; -struct stat; -struct pollfd; -struct fs_info; struct dirent; +struct fd_set; +struct fs_info; +struct iovec; +struct pollfd; +struct rlimit; +struct sigaction; +struct stat; + +struct disk_device_job_progress_info; +struct partitionable_space_data; +struct user_disk_device_data; +struct user_disk_device_job_info; +struct user_disk_system_info; // This marks the beginning of the syscalls prototypes for gensyscallinfos. // NOTE: @@ -146,7 +154,8 @@ extern status_t _kern_unlink(int fd, const char *path); extern status_t _kern_rename(int oldDir, const char *oldpath, int newDir, const char *newpath); extern status_t _kern_access(const char *path, int mode); -extern ssize_t _kern_select(int numfds, fd_set *readSet, fd_set *writeSet, fd_set *errorSet, +extern ssize_t _kern_select(int numfds, struct fd_set *readSet, + struct fd_set *writeSet, struct fd_set *errorSet, bigtime_t timeout, const sigset_t *sigMask); extern ssize_t _kern_poll(struct pollfd *fds, int numfds, bigtime_t timeout); extern int _kern_open_attr_dir(int fd, const char *path); @@ -165,9 +174,10 @@ extern int _kern_open_query(dev_t device, const char *query, size_t queryLengt // file descriptor functions extern ssize_t _kern_read(int fd, off_t pos, void *buffer, size_t bufferSize); -extern ssize_t _kern_readv(int fd, off_t pos, const iovec *vecs, size_t count); +extern ssize_t _kern_readv(int fd, off_t pos, const struct iovec *vecs, size_t count); extern ssize_t _kern_write(int fd, off_t pos, const void *buffer, size_t bufferSize); -extern ssize_t _kern_writev(int fd, off_t pos, const iovec *vecs, size_t count); +extern ssize_t _kern_writev(int fd, off_t pos, const struct iovec *vecs, + size_t count); extern status_t _kern_ioctl(int fd, ulong cmd, void *data, size_t length); extern ssize_t _kern_read_dir(int fd, struct dirent *buffer, size_t bufferSize, uint32 maxCount); extern status_t _kern_rewind_dir(int fd); @@ -231,8 +241,9 @@ extern ssize_t _kern_read_port_etc(port_id port, int32 *msgCode, void *msgBuffe extern status_t _kern_set_port_owner(port_id port, team_id team); extern status_t _kern_write_port_etc(port_id port, int32 msgCode, const void *msgBuffer, size_t bufferSize, uint32 flags, bigtime_t timeout); -extern status_t _kern_writev_port_etc(port_id id, int32 msgCode, const iovec *msgVecs, - size_t vecCount, size_t bufferSize, uint32 flags, bigtime_t timeout); +extern status_t _kern_writev_port_etc(port_id id, int32 msgCode, + const struct iovec *msgVecs, size_t vecCount, + size_t bufferSize, uint32 flags, bigtime_t timeout); // debug support functions extern void _kern_debugger(const char *message); @@ -297,7 +308,7 @@ extern partition_id _kern_get_next_disk_device_id(int32 *cookie, size_t *neededS extern partition_id _kern_find_disk_device(const char *filename, size_t *neededSize); extern partition_id _kern_find_partition(const char *filename, size_t *neededSize); extern status_t _kern_get_disk_device_data(partition_id deviceID, bool deviceOnly, - bool shadow, user_disk_device_data *buffer, + bool shadow, struct user_disk_device_data *buffer, size_t bufferSize, size_t *neededSize); extern partition_id _kern_register_file_device(const char *filename); extern status_t _kern_unregister_file_device(partition_id deviceID, @@ -307,10 +318,11 @@ extern status_t _kern_unregister_file_device(partition_id deviceID, // disk systems extern status_t _kern_get_disk_system_info(disk_system_id id, - user_disk_system_info *info); + struct user_disk_system_info *info); extern status_t _kern_get_next_disk_system_info(int32 *cookie, - user_disk_system_info *info); -extern status_t _kern_find_disk_system(const char *name, user_disk_system_info *info); + struct user_disk_system_info *info); +extern status_t _kern_find_disk_system(const char *name, + struct user_disk_system_info *info); extern bool _kern_supports_defragmenting_partition(partition_id partitionID, int32 changeCounter, bool *whileMounted); extern bool _kern_supports_repairing_partition(partition_id partitionID, @@ -357,8 +369,9 @@ extern status_t _kern_validate_create_child_partition(partition_id partitionID, const char *type, const char *parameters, size_t parametersSize); extern status_t _kern_get_partitionable_spaces(partition_id partitionID, - int32 changeCounter, partitionable_space_data *buffer, - int32 count, int32 *actualCount); + int32 changeCounter, + struct partitionable_space_data *buffer, int32 count, + int32 *actualCount); extern status_t _kern_get_next_supported_partition_type(partition_id partitionID, int32 changeCounter, int32 *cookie, char *type); extern status_t _kern_get_partition_type_for_content_type(disk_system_id diskSystemID, @@ -404,11 +417,11 @@ extern status_t _kern_delete_partition(partition_id partitionID, int32 changeCo // jobs extern status_t _kern_get_next_disk_device_job_info(int32 *cookie, - user_disk_device_job_info *info); + struct user_disk_device_job_info *info); extern status_t _kern_get_disk_device_job_info(disk_job_id id, - user_disk_device_job_info *info); + struct user_disk_device_job_info *info); extern status_t _kern_get_disk_device_job_progress_info(disk_job_id id, - disk_device_job_progress_info *info); + struct disk_device_job_progress_info *info); extern status_t _kern_pause_disk_device_job(disk_job_id id); extern status_t _kern_cancel_disk_device_job(disk_job_id id, bool reverse); diff --git a/src/add-ons/decorators/BeDecorator/Jamfile b/src/add-ons/decorators/BeDecorator/Jamfile index e77086eb3b..c67f3805ae 100644 --- a/src/add-ons/decorators/BeDecorator/Jamfile +++ b/src/add-ons/decorators/BeDecorator/Jamfile @@ -7,5 +7,5 @@ UsePrivateHeaders [ FDirName servers app ] ; Addon BeDecorator : decorators : BeDecorator.cpp : false - : be libopenbeos.so libappserver.so + : be libappserver.so ; diff --git a/src/add-ons/decorators/MacDecorator/Jamfile b/src/add-ons/decorators/MacDecorator/Jamfile index f4b9788242..c9e0b33de7 100644 --- a/src/add-ons/decorators/MacDecorator/Jamfile +++ b/src/add-ons/decorators/MacDecorator/Jamfile @@ -7,5 +7,5 @@ UsePrivateHeaders [ FDirName servers app ] ; Addon MacDecorator : decorators : MacDecorator.cpp : false - : be libopenbeos.so libappserver.so + : be libappserver.so ; diff --git a/src/add-ons/decorators/WinDecorator/Jamfile b/src/add-ons/decorators/WinDecorator/Jamfile index 213abfeeed..50af34c071 100644 --- a/src/add-ons/decorators/WinDecorator/Jamfile +++ b/src/add-ons/decorators/WinDecorator/Jamfile @@ -7,5 +7,5 @@ UsePrivateHeaders [ FDirName servers app ] ; Addon WinDecorator : decorators : WinDecorator.cpp : false - : be libopenbeos.so libappserver.so + : be libappserver.so ; diff --git a/src/add-ons/input_server/devices/serial_mouse/Jamfile b/src/add-ons/input_server/devices/serial_mouse/Jamfile index 1adb681084..8abdff4d81 100644 --- a/src/add-ons/input_server/devices/serial_mouse/Jamfile +++ b/src/add-ons/input_server/devices/serial_mouse/Jamfile @@ -10,11 +10,6 @@ Addon serial_mouse : input_server/devices : : false : be device input_server ; -if $(COMPILE_FOR_R5) { -} else { - LinkAgainst mouse : libopenbeos.so ; -} - Package haiku-inputkit-cvs : serial_mouse : boot home config add-ons input_server devices ; diff --git a/src/build/Jamfile b/src/build/Jamfile index 0bbe15ea96..0ffe73f3e6 100644 --- a/src/build/Jamfile +++ b/src/build/Jamfile @@ -1,5 +1,6 @@ SubDir HAIKU_TOP src build ; SubInclude HAIKU_TOP src build libbe ; +SubInclude HAIKU_TOP src build libhaikucompat ; SubInclude HAIKU_TOP src build libroot ; diff --git a/src/build/libhaikucompat/Jamfile b/src/build/libhaikucompat/Jamfile new file mode 100644 index 0000000000..5fdb04af73 --- /dev/null +++ b/src/build/libhaikucompat/Jamfile @@ -0,0 +1,13 @@ +SubDir HAIKU_TOP src build libhaikucompat ; + +SetSubDirSupportedPlatforms libbe_test ; + +StaticLibrary libhaikucompat.a : + strcasestr.c + strlcat.c + strlcpy.c + strnlen.c +; + +SEARCH on [ FGristFiles strcasestr.c strlcat.c strlcpy.c strnlen.c ] + = [ FDirName $(HAIKU_TOP) src system libroot posix string ] ; diff --git a/src/kits/Jamfile b/src/kits/Jamfile index 4b3251ea75..193595fe2e 100644 --- a/src/kits/Jamfile +++ b/src/kits/Jamfile @@ -37,22 +37,25 @@ SharedLibrary libbe.so : $(TARGET_LIBSTDC++) ; -# Build libopenbeos.so +# Build libbe_haiku.so -SetSupportedPlatformsForTarget libopenbeos.so : r5 bone dano ; - -if $(TARGET_PLATFORM) != haiku { - UseHeaders [ FStandardOSHeaders ] : true ; - UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; - # TODO: POSIX headers shouldn't be used. Needed for strlcpy() only. +SetSupportedPlatformsForTarget libbe_haiku.so : libbe_test ; +if $(TARGET_PLATFORM) = libbe_test { + local syslog = [ FGristFiles syslog.o ] ; # Remove _NO_INLINE_ASM from the defines for syslog.cpp. Otherwise we get # references to tls_get/set() etc. that don't exist under BeOS. - TARGET_DEFINES on [ FGristFiles syslog.o ] - = [ FFilter $(TARGET_DEFINES) : _NO_INLINE_ASM ] ; + TARGET_DEFINES on $(syslog) + = [ on $(syslog) FFilter $(TARGET_DEFINES) : _NO_INLINE_ASM ] ; + + # We need to use our , because the syslog() prototype differs + # from the BeOS one. + TARGET_DEFINES on $(syslog) += _SYS_LOG_H ; + TARGET_C++FLAGS on $(syslog) = [ on $(syslog) return $(TARGET_C++FLAGS) ] + -include [ FDirName $(HAIKU_TOP) headers posix syslog.h ] ; } -SharedLibrary libopenbeos.so : +SharedLibrary libbe_haiku.so : KMessage.cpp syslog.cpp : @@ -63,7 +66,7 @@ SharedLibrary libopenbeos.so : libbeadapter.so net - stdc++.r4 + $(TARGET_LIBSTDC++) ; SEARCH on [ FGristFiles KMessage.cpp ] diff --git a/src/kits/app/Jamfile b/src/kits/app/Jamfile index 700dde151c..de301fc068 100644 --- a/src/kits/app/Jamfile +++ b/src/kits/app/Jamfile @@ -20,12 +20,7 @@ if $(RUN_WITHOUT_APP_SERVER) != 0 { UsePrivateHeaders shared app interface ; UsePrivateHeaders [ FDirName kernel util ] ; # For KMessage.h -SetSubDirSupportedPlatformsBeOSCompatible ; -if $(TARGET_PLATFORM) != haiku { - UseHeaders [ FStandardOSHeaders ] : true ; - UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; - # TODO: POSIX headers shouldn't be used. Needed for strlcpy() only. -} +SetSubDirSupportedPlatforms haiku libbe_test ; MergeObject app_kit.o : AppDefs.cpp diff --git a/src/kits/interface/Jamfile b/src/kits/interface/Jamfile index c1f4362b2b..2fd5eb3d02 100644 --- a/src/kits/interface/Jamfile +++ b/src/kits/interface/Jamfile @@ -23,13 +23,7 @@ if ! $(HAIKU_COMPATIBLE) { SubDirC++Flags $(defines) ; } -SetSubDirSupportedPlatformsBeOSCompatible ; -if $(TARGET_PLATFORM) != haiku { - UseHeaders [ FStandardOSHeaders ] : true ; - UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; - # TODO: POSIX headers shouldn't be used. Needed for strlcpy() only. -} - +SetSubDirSupportedPlatforms haiku libbe_test ; UsePrivateHeaders shared app interface input [ FDirName servers app ] ; diff --git a/src/kits/storage/DiskDevice.cpp b/src/kits/storage/DiskDevice.cpp index 403473440d..7dbd093ccd 100644 --- a/src/kits/storage/DiskDevice.cpp +++ b/src/kits/storage/DiskDevice.cpp @@ -14,14 +14,15 @@ #include #include -#include - #include #include #include #include #include +#include +#include + /*! \class BDiskDevice \brief A BDiskDevice object represents a storage device. diff --git a/src/kits/storage/DiskDeviceJob.cpp b/src/kits/storage/DiskDeviceJob.cpp index 0cbdfb6b45..587e72bb41 100644 --- a/src/kits/storage/DiskDeviceJob.cpp +++ b/src/kits/storage/DiskDeviceJob.cpp @@ -3,10 +3,11 @@ // by the OpenBeOS license. //--------------------------------------------------------------------- -#include - #include +#include +#include + // constructor BDiskDeviceJob::BDiskDeviceJob() : fID(B_NO_INIT), diff --git a/src/kits/storage/DiskDeviceRoster.cpp b/src/kits/storage/DiskDeviceRoster.cpp index f13cd7262b..22aaf92ac4 100644 --- a/src/kits/storage/DiskDeviceRoster.cpp +++ b/src/kits/storage/DiskDeviceRoster.cpp @@ -5,8 +5,6 @@ #include -#include - #include #include #include @@ -19,6 +17,9 @@ #include #include +#include +#include + //#include "AddOnImage.h" /*! \class BDiskDeviceRoster diff --git a/src/kits/storage/DiskSystem.cpp b/src/kits/storage/DiskSystem.cpp index 5260ef2c23..d845cd3ca9 100644 --- a/src/kits/storage/DiskSystem.cpp +++ b/src/kits/storage/DiskSystem.cpp @@ -3,11 +3,12 @@ // by the OpenBeOS license. //--------------------------------------------------------------------- -#include - #include #include +#include +#include + // constructor BDiskSystem::BDiskSystem() : fID(B_NO_INIT), diff --git a/src/kits/storage/File.cpp b/src/kits/storage/File.cpp index 3e82604cf1..ec01c911b2 100644 --- a/src/kits/storage/File.cpp +++ b/src/kits/storage/File.cpp @@ -8,6 +8,7 @@ */ #include +#include #include #include diff --git a/src/kits/storage/Jamfile b/src/kits/storage/Jamfile index de82c7d775..26a5b93cf9 100644 --- a/src/kits/storage/Jamfile +++ b/src/kits/storage/Jamfile @@ -1,13 +1,6 @@ SubDir HAIKU_TOP src kits storage ; -SetSubDirSupportedPlatformsBeOSCompatible ; -if $(TARGET_PLATFORM) != haiku { - UseHeaders [ FStandardOSHeaders ] : true ; - UsePrivateHeaders $(DOT) ; - UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; - # TODO: POSIX headers shouldn't be used. Needed for strlcpy() and - # sys/select.h only. -} +SetSubDirSupportedPlatforms haiku libbe_test ; UsePrivateHeaders shared app kernel storage ; UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; @@ -68,7 +61,7 @@ MergeObject storage_kit.o : Rule.cpp ; -# We need to keep the DiskDevice API out of libopenbeos as long as the +# We need to keep the DiskDevice API out of libbe_haiku as long as the # Interface Kit is not fully functional (at least the part we are using). # So, we build it separately. @@ -90,13 +83,5 @@ MergeObject storage_diskdevice_kit.o : SharedLibrary libbeadapter.so : LibBeAdapter.cpp - strlcat.c - strlcpy.c - strcasestr.c - - : be ; - -SEARCH on [ FGristFiles - strlcat.c strlcpy.c strcasestr.c - ] = [ FDirName $(HAIKU_TOP) src system libroot posix string ] ; +LinkAgainst libbeadapter.so : be : false ; diff --git a/src/kits/storage/Partition.cpp b/src/kits/storage/Partition.cpp index bcc217caa7..8573b034c9 100644 --- a/src/kits/storage/Partition.cpp +++ b/src/kits/storage/Partition.cpp @@ -8,8 +8,6 @@ #include #include -#include - #include #include #include @@ -23,6 +21,9 @@ #include #include +#include +#include + /*! \class BPartition \brief A BPartition object represent a partition and provides a lot of methods to retrieve information about it and some to manipulate it. diff --git a/src/kits/storage/PartitioningInfo.cpp b/src/kits/storage/PartitioningInfo.cpp index b2f6361d5e..e6680b4852 100644 --- a/src/kits/storage/PartitioningInfo.cpp +++ b/src/kits/storage/PartitioningInfo.cpp @@ -5,10 +5,11 @@ #include -#include - #include +#include +#include + using namespace std; // constructor diff --git a/src/kits/storage/Volume.cpp b/src/kits/storage/Volume.cpp index 6448c096f0..1a33a9893c 100644 --- a/src/kits/storage/Volume.cpp +++ b/src/kits/storage/Volume.cpp @@ -17,7 +17,6 @@ #include #include #include -#include #include #include #include @@ -25,6 +24,10 @@ #include #include +#ifndef HAIKU_TARGET_PLATFORM_LIBBE_TEST +#include +#endif + #ifdef USE_OPENBEOS_NAMESPACE namespace OpenBeOS { #endif diff --git a/src/kits/support/Jamfile b/src/kits/support/Jamfile index 3318a64761..5a8d6f9a10 100644 --- a/src/kits/support/Jamfile +++ b/src/kits/support/Jamfile @@ -1,12 +1,12 @@ SubDir HAIKU_TOP src kits support ; -SetSubDirSupportedPlatformsBeOSCompatible ; -if $(TARGET_PLATFORM) != haiku { - UseHeaders [ FStandardOSHeaders ] : true ; - UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; - # TODO: POSIX headers shouldn't be used. Needed for strlcpy() and - # addr_t. -} +SetSubDirSupportedPlatforms haiku libbe_test ; +#if $(TARGET_PLATFORM) != haiku { +# UseHeaders [ FStandardOSHeaders ] : true ; +# UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; +# # TODO: POSIX headers shouldn't be used. Needed for strlcpy() and +# # addr_t. +#} UsePrivateHeaders shared app ; diff --git a/src/kits/textencoding/Jamfile b/src/kits/textencoding/Jamfile index c38395a88c..9a07f3abea 100644 --- a/src/kits/textencoding/Jamfile +++ b/src/kits/textencoding/Jamfile @@ -1,6 +1,8 @@ SubDir HAIKU_TOP src kits textencoding ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; + UsePrivateHeaders textencoding ; SubDirSysHdrs [ FDirName $(SUBDIR) libiconv ] ; diff --git a/src/kits/textencoding/libiconv/Jamfile b/src/kits/textencoding/libiconv/Jamfile index c464f3ac84..2d09e8f35e 100644 --- a/src/kits/textencoding/libiconv/Jamfile +++ b/src/kits/textencoding/libiconv/Jamfile @@ -1,6 +1,7 @@ SubDir HAIKU_TOP src kits textencoding libiconv ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; # disable warnings we don't want here TARGET_WARNING_CCFLAGS = [ FFilter $(TARGET_WARNING_CCFLAGS) diff --git a/src/libs/agg/Jamfile b/src/libs/agg/Jamfile index 9e01e411fa..04b0eda069 100644 --- a/src/libs/agg/Jamfile +++ b/src/libs/agg/Jamfile @@ -1,6 +1,7 @@ SubDir HAIKU_TOP src libs agg ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; UseLibraryHeaders agg ; diff --git a/src/libs/freetype2/Jamfile b/src/libs/freetype2/Jamfile index 11a31f6b88..1881be7789 100644 --- a/src/libs/freetype2/Jamfile +++ b/src/libs/freetype2/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; # The file is used to define macros that are # later used in #include statements. It needs to be parsed in order to diff --git a/src/libs/freetype2/autofit/Jamfile b/src/libs/freetype2/autofit/Jamfile index 54769c2e9d..8213e4bb37 100644 --- a/src/libs/freetype2/autofit/Jamfile +++ b/src/libs/freetype2/autofit/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 autofit ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/autohint/Jamfile b/src/libs/freetype2/autohint/Jamfile index 97aca3b44d..f53df8cbf0 100644 --- a/src/libs/freetype2/autohint/Jamfile +++ b/src/libs/freetype2/autohint/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 autohint ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/base/Jamfile b/src/libs/freetype2/base/Jamfile index b3bb2ca875..758006d798 100644 --- a/src/libs/freetype2/base/Jamfile +++ b/src/libs/freetype2/base/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 base ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/bdf/Jamfile b/src/libs/freetype2/bdf/Jamfile index 1eb0710b9e..47bfec7514 100644 --- a/src/libs/freetype2/bdf/Jamfile +++ b/src/libs/freetype2/bdf/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 bdf ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/cache/Jamfile b/src/libs/freetype2/cache/Jamfile index fb7612ebe1..321faa1645 100644 --- a/src/libs/freetype2/cache/Jamfile +++ b/src/libs/freetype2/cache/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 cache ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/cff/Jamfile b/src/libs/freetype2/cff/Jamfile index b3f65e0766..3cbe952d02 100644 --- a/src/libs/freetype2/cff/Jamfile +++ b/src/libs/freetype2/cff/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 cff ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/cid/Jamfile b/src/libs/freetype2/cid/Jamfile index 65c7644e25..ba1bcbdc22 100644 --- a/src/libs/freetype2/cid/Jamfile +++ b/src/libs/freetype2/cid/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 cid ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/gzip/Jamfile b/src/libs/freetype2/gzip/Jamfile index d35a8fb56d..518dfced96 100644 --- a/src/libs/freetype2/gzip/Jamfile +++ b/src/libs/freetype2/gzip/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 gzip ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/lzw/Jamfile b/src/libs/freetype2/lzw/Jamfile index db392e9c8a..04769c0d64 100644 --- a/src/libs/freetype2/lzw/Jamfile +++ b/src/libs/freetype2/lzw/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 lzw ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/otvalid/Jamfile b/src/libs/freetype2/otvalid/Jamfile index c0938f5b2e..009d5eebb6 100644 --- a/src/libs/freetype2/otvalid/Jamfile +++ b/src/libs/freetype2/otvalid/Jamfile @@ -12,6 +12,7 @@ SubDir HAIKU_TOP src libs freetype2 otvalid ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/pcf/Jamfile b/src/libs/freetype2/pcf/Jamfile index 79fa4c1bab..186bb89588 100644 --- a/src/libs/freetype2/pcf/Jamfile +++ b/src/libs/freetype2/pcf/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 pcf ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/pfr/Jamfile b/src/libs/freetype2/pfr/Jamfile index 3a0718fd7c..a95178588b 100644 --- a/src/libs/freetype2/pfr/Jamfile +++ b/src/libs/freetype2/pfr/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 pfr ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/psaux/Jamfile b/src/libs/freetype2/psaux/Jamfile index ca4605334a..be72c9b215 100644 --- a/src/libs/freetype2/psaux/Jamfile +++ b/src/libs/freetype2/psaux/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 psaux ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/pshinter/Jamfile b/src/libs/freetype2/pshinter/Jamfile index 9e47306d4b..32b76367ac 100644 --- a/src/libs/freetype2/pshinter/Jamfile +++ b/src/libs/freetype2/pshinter/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 pshinter ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/psnames/Jamfile b/src/libs/freetype2/psnames/Jamfile index 964c4989b3..f63fa6e78f 100644 --- a/src/libs/freetype2/psnames/Jamfile +++ b/src/libs/freetype2/psnames/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 psnames ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/raster/Jamfile b/src/libs/freetype2/raster/Jamfile index ceb3371a87..2490cb7826 100644 --- a/src/libs/freetype2/raster/Jamfile +++ b/src/libs/freetype2/raster/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 raster ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/sfnt/Jamfile b/src/libs/freetype2/sfnt/Jamfile index 1be535349e..441bc81d06 100644 --- a/src/libs/freetype2/sfnt/Jamfile +++ b/src/libs/freetype2/sfnt/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 sfnt ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/smooth/Jamfile b/src/libs/freetype2/smooth/Jamfile index fece71bac4..6446412899 100644 --- a/src/libs/freetype2/smooth/Jamfile +++ b/src/libs/freetype2/smooth/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 smooth ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/truetype/Jamfile b/src/libs/freetype2/truetype/Jamfile index f46cdf09e2..75619b3283 100644 --- a/src/libs/freetype2/truetype/Jamfile +++ b/src/libs/freetype2/truetype/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 truetype ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/type1/Jamfile b/src/libs/freetype2/type1/Jamfile index ad86e0dffb..1947aff283 100644 --- a/src/libs/freetype2/type1/Jamfile +++ b/src/libs/freetype2/type1/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 type1 ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/type42/Jamfile b/src/libs/freetype2/type42/Jamfile index 5a6af469f0..1709cd5d53 100644 --- a/src/libs/freetype2/type42/Jamfile +++ b/src/libs/freetype2/type42/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 type42 ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/freetype2/winfonts/Jamfile b/src/libs/freetype2/winfonts/Jamfile index 16b02f7576..32be5d761e 100644 --- a/src/libs/freetype2/winfonts/Jamfile +++ b/src/libs/freetype2/winfonts/Jamfile @@ -4,6 +4,7 @@ SubDir HAIKU_TOP src libs freetype2 winfonts ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseFreeTypeHeaders ; diff --git a/src/libs/png/Jamfile b/src/libs/png/Jamfile index d1faec743a..698daa6c61 100644 --- a/src/libs/png/Jamfile +++ b/src/libs/png/Jamfile @@ -1,6 +1,7 @@ SubDir HAIKU_TOP src libs png ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseLibraryHeaders zlib ; diff --git a/src/preferences/appearance/Jamfile b/src/preferences/appearance/Jamfile index 6c0692d8f9..46adc87e1a 100644 --- a/src/preferences/appearance/Jamfile +++ b/src/preferences/appearance/Jamfile @@ -19,7 +19,7 @@ Preference Appearance : #FontMenu.cpp #MenuView.cpp - : libbe.so libopenbeos.so libtranslation.so libappserver.so + : be libtranslation.so libappserver.so : Appearance.rdef ; diff --git a/src/servers/app/drawing/Painter/Jamfile b/src/servers/app/drawing/Painter/Jamfile index 1c224b0776..b7aaa23257 100644 --- a/src/servers/app/drawing/Painter/Jamfile +++ b/src/servers/app/drawing/Painter/Jamfile @@ -1,9 +1,7 @@ SubDir HAIKU_TOP src servers app drawing Painter ; SetSubDirSupportedPlatformsBeOSCompatible ; -if $(TARGET_PLATFORM) != haiku { - UseHeaders [ FStandardOSHeaders ] : true ; -} +AddSubDirSupportedPlatforms libbe_test ; UseLibraryHeaders agg ; UsePrivateHeaders app interface shared [ FDirName servers app ] ; diff --git a/src/servers/input/Jamfile b/src/servers/input/Jamfile index 4cdc5d5a8b..48c44d184a 100644 --- a/src/servers/input/Jamfile +++ b/src/servers/input/Jamfile @@ -74,27 +74,9 @@ Server input_server : AddOnMonitorHandler.cpp NodeMonitorHandler.cpp - : $(TARGET_LIBSTDC++) + : be $(TARGET_LIBSTDC++) ; -if $(TARGET_PLATFORM) = haiku { - # link for Haiku - - LinkAgainst input_server : - libroot.so libbe.so ; - -} else { - # link as test application under R5 - - LinkAgainst input_server : - be ; - if $(APPSERVER_TEST_MODE) { - LinkAgainst input_server : - libopenbeos.so ; - } -} - - SEARCH on [ FGristFiles AddOnMonitor.cpp AddOnMonitorHandler.cpp NodeMonitorHandler.cpp ] += [ FDirName $(SUBDIR) $(DOTDOT) $(DOTDOT) kits storage ] ; diff --git a/src/system/libroot/posix/unistd/alarm.c b/src/system/libroot/posix/unistd/alarm.c index ad54f459c2..e47f6e9261 100644 --- a/src/system/libroot/posix/unistd/alarm.c +++ b/src/system/libroot/posix/unistd/alarm.c @@ -4,9 +4,11 @@ */ -#include -#include #include +#include +#include + +#include uint diff --git a/src/system/libroot/posix/unistd/ualarm.c b/src/system/libroot/posix/unistd/ualarm.c index c82f8c7898..6331323c28 100644 --- a/src/system/libroot/posix/unistd/ualarm.c +++ b/src/system/libroot/posix/unistd/ualarm.c @@ -4,9 +4,11 @@ */ -#include -#include #include +#include +#include + +#include uint diff --git a/src/tests/apps/miniterminal/Jamfile b/src/tests/apps/miniterminal/Jamfile index bed336cbd1..260c290f81 100644 --- a/src/tests/apps/miniterminal/Jamfile +++ b/src/tests/apps/miniterminal/Jamfile @@ -1,6 +1,7 @@ SubDir HAIKU_TOP src tests apps miniterminal ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseHeaders [ FDirName $(HAIKU_TOP) src tests apps miniterminal ] ; UseHeaders [ FDirName $(HAIKU_TOP) src apps terminal ] ; @@ -14,13 +15,10 @@ Application MiniTerminal : MiniView.cpp MiniWin.cpp ViewBuffer.cpp - ; - -if $(TARGET_PLATFORM) = haiku { - LinkAgainst MiniTerminal : be ; -} else { - LinkAgainst MiniTerminal : libopenbeos.so ; + : be +; +if $(TARGET_PLATFORM) = libbe_test { HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : MiniTerminal : tests!apps ; } diff --git a/src/tests/kits/app/Jamfile b/src/tests/kits/app/Jamfile index 28d7fb3ca9..dd0fb9c7e5 100644 --- a/src/tests/kits/app/Jamfile +++ b/src/tests/kits/app/Jamfile @@ -25,7 +25,7 @@ CommonTestLib libmessagetest.so MessageOpAssignTest.cpp MessageEasyFindTest.cpp MessageSpeedTest.cpp - : libopenbeos.so stdc++.r4 + : be stdc++.r4 : be stdc++.r4 : : app @@ -151,8 +151,7 @@ CommonTestLib libapptest.so AppRunner.cpp PipedAppRunner.cpp - : libopenbeos.so - be stdc++.r4 + : be stdc++.r4 : be stdc++.r4 : : app support diff --git a/src/tests/kits/app/bapplication/testapps/Jamfile b/src/tests/kits/app/bapplication/testapps/Jamfile index bf26adecbe..47d20f4790 100644 --- a/src/tests/kits/app/bapplication/testapps/Jamfile +++ b/src/tests/kits/app/bapplication/testapps/Jamfile @@ -37,7 +37,7 @@ rule SimpleBAppTestApp2 CommonUnitTest $(name) : $(sources) : kits app - : libopenbeos.so be stdc++.r4 $(useObjects) + : be stdc++.r4 $(useObjects) : be stdc++.r4 $(useR5Objects) : app support ; diff --git a/src/tests/kits/app/bmessenger/Jamfile b/src/tests/kits/app/bmessenger/Jamfile index 8a81327065..5f68f3683a 100644 --- a/src/tests/kits/app/bmessenger/Jamfile +++ b/src/tests/kits/app/bmessenger/Jamfile @@ -4,7 +4,7 @@ CommonUnitTest SMRemoteTargetApp : SMRemoteTargetApp.cpp SMLooper.cpp : kits app - : libopenbeos.so be stdc++.r4 + : be stdc++.r4 : be stdc++.r4 : app support ; diff --git a/src/tests/kits/app/bmessenger/testapps/Jamfile b/src/tests/kits/app/bmessenger/testapps/Jamfile index 3a4c119c51..7058d397ab 100644 --- a/src/tests/kits/app/bmessenger/testapps/Jamfile +++ b/src/tests/kits/app/bmessenger/testapps/Jamfile @@ -38,7 +38,7 @@ rule SimpleBMessengerTestApp2 CommonUnitTest $(name) : $(sources) : kits app - : libopenbeos.so be stdc++.r4 $(useObjects) + : be stdc++.r4 $(useObjects) : be stdc++.r4 $(useR5Objects) : app support ; diff --git a/src/tests/kits/app/broster/testapps/Jamfile b/src/tests/kits/app/broster/testapps/Jamfile index 25083f3fac..7ac3242f21 100644 --- a/src/tests/kits/app/broster/testapps/Jamfile +++ b/src/tests/kits/app/broster/testapps/Jamfile @@ -40,7 +40,7 @@ rule SimpleBRosterTestApp2 CommonUnitTest $(name) : $(sources) : kits app - : libopenbeos.so be stdc++.r4 $(useObjects) + : be stdc++.r4 $(useObjects) : be stdc++.r4 $(useR5Objects) : app support ; diff --git a/src/tests/kits/interface/Jamfile b/src/tests/kits/interface/Jamfile index 7315090e19..2a97960a93 100644 --- a/src/tests/kits/interface/Jamfile +++ b/src/tests/kits/interface/Jamfile @@ -50,8 +50,7 @@ CommonTestLib libinterfacetest.so WidthBufferTest.cpp WidthBufferSimpleTest.cpp - : libopenbeos.so - be stdc++.r4 + : be stdc++.r4 : be stdc++.r4 : : app support diff --git a/src/tests/kits/storage/Jamfile b/src/tests/kits/storage/Jamfile index 7ca4dc50bc..085b016345 100644 --- a/src/tests/kits/storage/Jamfile +++ b/src/tests/kits/storage/Jamfile @@ -22,7 +22,7 @@ CommonTestLib libstoragetest.so SymLinkTest.cpp TestApp.cpp VolumeTest.cpp - : libopenbeos.so be stdc++.r4 + : be stdc++.r4 : be stdc++.r4 : : storage diff --git a/src/tests/kits/storage/disk_device/Jamfile b/src/tests/kits/storage/disk_device/Jamfile index 24871e9403..137068cd90 100644 --- a/src/tests/kits/storage/disk_device/Jamfile +++ b/src/tests/kits/storage/disk_device/Jamfile @@ -9,7 +9,7 @@ UsePrivateHeaders storage ; SimpleTest DiskDeviceTest : DiskDeviceTest.cpp - # We compile these classes in. If we would link against libopenbeos + # We compile these classes in. If we would link against libbe_haiku # instead, we couldn't use any GUI. At least not at this time. # # Mime.cpp diff --git a/src/tests/kits/support/Jamfile b/src/tests/kits/support/Jamfile index 1c2aa9e263..2a745f16ab 100644 --- a/src/tests/kits/support/Jamfile +++ b/src/tests/kits/support/Jamfile @@ -74,8 +74,7 @@ CommonTestLib libsupporttest.so BlockCacheExerciseTest.cpp BlockCacheConcurrencyTest.cpp - : libopenbeos.so - be stdc++.r4 + : be stdc++.r4 : be stdc++.r4 : libsupporttest_RemoteTestObject.so : support diff --git a/src/tests/kits/support/barchivable/remoteobjectdef/Jamfile b/src/tests/kits/support/barchivable/remoteobjectdef/Jamfile index e5f3c8ce56..de14c497aa 100644 --- a/src/tests/kits/support/barchivable/remoteobjectdef/Jamfile +++ b/src/tests/kits/support/barchivable/remoteobjectdef/Jamfile @@ -7,7 +7,7 @@ AddResources libsupporttest_RemoteTestObject_r5.so : RemoteTestObject.rdef ; CommonTestLib libsupporttest_RemoteTestObject.so : RemoteTestObject.cpp - : libopenbeos.so be stdc++.r4 + : be stdc++.r4 : be stdc++.r4 : : support diff --git a/src/tests/servers/app/Jamfile b/src/tests/servers/app/Jamfile index bd4d4b069a..b8b93a8a74 100644 --- a/src/tests/servers/app/Jamfile +++ b/src/tests/servers/app/Jamfile @@ -1,15 +1,9 @@ SubDir HAIKU_TOP src tests servers app ; -SetSubDirSupportedPlatforms r5 bone ; +SetSubDirSupportedPlatforms libbe_test ; -UseHeaders [ FStandardOSHeaders ] : true ; -UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; - # TODO: POSIX headers shouldn't be used. Needed for strlcpy() and addr_t. - -# Remove _NO_INLINE_ASM from the defines for syslog.cpp. Otherwise we get -# references to tls_get/set() etc. that don't exist under BeOS. -#TARGET_DEFINES on [ FGristFiles syslog.o ] -# = [ FFilter $(TARGET_DEFINES) : _NO_INLINE_ASM ] ; +# No need to define any of those targets, when not building for libbe_test +if $(TARGET_PLATFORM) = libbe_test { UseLibraryHeaders agg png zlib ; UsePrivateHeaders app interface shared [ FDirName servers app ] ; @@ -24,15 +18,12 @@ UseFreeTypeHeaders ; SEARCH_SOURCE += $(appServerDir) [ FDirName $(appServerDir) drawing ] ; -# No need to define any of those targets, when building for haiku -if $(TARGET_PLATFORM) != haiku { - SharedLibrary libhwinterface.so : BBitmapBuffer.cpp HWInterface.cpp MultiLocker.cpp - : libhaikuappserver.so libopenbeos.so + : libhaikuappserver.so be ; @@ -46,7 +37,7 @@ SharedLibrary libhwinterfaceimpl.so : fake_input_server.cpp ViewHWInterface.cpp - : libopenbeos.so libhwinterface.so + : be libhwinterface.so ; SharedLibrary libhaikuappserver.so : @@ -74,7 +65,7 @@ SharedLibrary libhaikuappserver.so : # libraries : - libopenbeos.so libtextencoding.so libfreetype.so + be libtextencoding.so libfreetype.so ; AddResources haiku_app_server : app_server.rdef ; @@ -124,21 +115,21 @@ Server haiku_app_server : # libraries : z libpng.so libhaikuappserver.so - libpainter.a libopenbeos.so + libpainter.a be libhwinterface.so libhwinterfaceimpl.so libagg.a libfreetype.so libtextencoding.so ; # install in the test dir HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR) - : libpng.so libhaikuappserver.so libopenbeos.so libhwinterface.so + : libpng.so libhaikuappserver.so libbe_haiku.so libhwinterface.so libhwinterfaceimpl.so libfreetype.so libtextencoding.so : tests!apps ; HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : haiku_app_server : tests!apps ; -} # if $(TARGET_PLATFORM) != haiku +} # if $(TARGET_PLATFORM) = libbe_test SubInclude HAIKU_TOP src tests servers app bitmap_drawing ; SubInclude HAIKU_TOP src tests servers app copy_bits ; diff --git a/src/tests/servers/app/bitmap_drawing/Jamfile b/src/tests/servers/app/bitmap_drawing/Jamfile index 5292659093..7b28f4dec7 100644 --- a/src/tests/servers/app/bitmap_drawing/Jamfile +++ b/src/tests/servers/app/bitmap_drawing/Jamfile @@ -1,20 +1,13 @@ SubDir HAIKU_TOP src tests servers app bitmap_drawing ; +SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; + UseHeaders [ FDirName os app ] ; UseHeaders [ FDirName os interface ] ; Application BitmapDrawing : main.cpp - ; - -if ( $(TARGET_PLATFORM) = haiku ) { - # for running natively under R5 or Haiku: - LinkAgainst BitmapDrawing : - libbe.so ; -} else { - # for running in the Haiku app_server under R5: - LinkAgainst BitmapDrawing : - libopenbeos.so ; -# be ; -} + : be +; diff --git a/src/tests/servers/app/copy_bits/Jamfile b/src/tests/servers/app/copy_bits/Jamfile index d94054d6de..c5326d4997 100644 --- a/src/tests/servers/app/copy_bits/Jamfile +++ b/src/tests/servers/app/copy_bits/Jamfile @@ -1,12 +1,12 @@ SubDir HAIKU_TOP src tests servers app copy_bits ; +SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; + UseHeaders [ FDirName os app ] ; UseHeaders [ FDirName os interface ] ; SimpleTest CopyBits : main.cpp -# for running in the Haiku app_server under R5: -# : libopenbeos.so ; -# for running natively under R5 or Haiku: - : libbe.so ; + : be ; diff --git a/src/tests/servers/app/playground/Jamfile b/src/tests/servers/app/playground/Jamfile index 4d88706a49..05d1e29152 100644 --- a/src/tests/servers/app/playground/Jamfile +++ b/src/tests/servers/app/playground/Jamfile @@ -1,6 +1,7 @@ SubDir HAIKU_TOP src tests servers app playground ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseHeaders [ FDirName os app ] ; UseHeaders [ FDirName os interface ] ; @@ -10,15 +11,10 @@ Application Playground : ObjectView.cpp ObjectWindow.cpp States.cpp + : be ; -if ( $(TARGET_PLATFORM) = haiku ) { - # for running natively under R5 or Haiku: - LinkAgainst Playground : be ; -} else { - # for running in the Haiku app_server under R5: - LinkAgainst Playground : libopenbeos.so ; - +if ( $(TARGET_PLATFORM) = libbe_test ) { HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : Playground : tests!apps ; } diff --git a/src/tests/servers/app/regularapps/Jamfile b/src/tests/servers/app/regularapps/Jamfile index 89a9992b25..6a24561df3 100644 --- a/src/tests/servers/app/regularapps/Jamfile +++ b/src/tests/servers/app/regularapps/Jamfile @@ -7,15 +7,17 @@ UseHeaders [ FDirName $(clockDir) ] ; SEARCH_SOURCE += $(clockDir) [ FDirName $(clockDir) ] ; # No need to define any of those targets, when building for haiku -if $(TARGET_PLATFORM) != haiku { +if $(TARGET_PLATFORM) = libbe_test { + +SetSubDirSupportedPlatforms libbe_test ; SimpleTest TestApp_Clock : cl_view.cpp cl_wind.cpp clock.cpp - : libopenbeos.so + : be : Clock.rdef ; -} # if $(TARGET_PLATFORM) != haiku +} # if $(TARGET_PLATFORM) = libbe_test diff --git a/src/tests/servers/app/resize_limits/Jamfile b/src/tests/servers/app/resize_limits/Jamfile index fbb4960f34..bde2676923 100644 --- a/src/tests/servers/app/resize_limits/Jamfile +++ b/src/tests/servers/app/resize_limits/Jamfile @@ -1,16 +1,9 @@ SubDir HAIKU_TOP src tests servers app resize_limits ; +SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; + Application ResizeLimits : ResizeLimits.cpp - ; - -if ( $(TARGET_PLATFORM) = haiku ) { - # for running natively under R5 or Haiku: - LinkAgainst ResizeLimits : - libbe.so ; -} else { - # for running in the Haiku app_server under R5: - LinkAgainst ResizeLimits : - libopenbeos.so ; -} - + : be +; diff --git a/src/tests/servers/app/scrolling/Jamfile b/src/tests/servers/app/scrolling/Jamfile index 823f389966..0e924d6a5f 100644 --- a/src/tests/servers/app/scrolling/Jamfile +++ b/src/tests/servers/app/scrolling/Jamfile @@ -1,12 +1,12 @@ SubDir HAIKU_TOP src tests servers app scrolling ; +SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; + UseHeaders [ FDirName os app ] ; UseHeaders [ FDirName os interface ] ; SimpleTest Scrolling : main.cpp -# for running in the Haiku app_server under R5: -# : libopenbeos.so ; -# for running natively under R5 or Haiku: - : libbe.so ; + : be ; diff --git a/src/tests/servers/app/textview/Jamfile b/src/tests/servers/app/textview/Jamfile index 129e9bf0eb..fc67359168 100644 --- a/src/tests/servers/app/textview/Jamfile +++ b/src/tests/servers/app/textview/Jamfile @@ -1,12 +1,12 @@ SubDir HAIKU_TOP src tests servers app textview ; +SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; + UseHeaders [ FDirName os app ] ; UseHeaders [ FDirName os interface ] ; SimpleTest TextView : main.cpp -# for running in the Haiku app_server under R5: -# : libopenbeos.so ; -# for running natively under R5 or Haiku: - : libbe.so ; + : be ; diff --git a/src/tests/servers/app/view_state/Jamfile b/src/tests/servers/app/view_state/Jamfile index aee5da9547..52e9a5468e 100644 --- a/src/tests/servers/app/view_state/Jamfile +++ b/src/tests/servers/app/view_state/Jamfile @@ -1,21 +1,17 @@ SubDir HAIKU_TOP src tests servers app view_state ; SetSubDirSupportedPlatformsBeOSCompatible ; +AddSubDirSupportedPlatforms libbe_test ; UseHeaders [ FDirName os app ] ; UseHeaders [ FDirName os interface ] ; Application ViewState : ViewState.cpp + : be ; -if ( $(TARGET_PLATFORM) = haiku ) { - # for running natively under R5 or Haiku: - LinkAgainst ViewState : be ; -} else { - # for running in the Haiku app_server under R5: - LinkAgainst ViewState : libopenbeos.so ; - +if $(TARGET_PLATFORM) = libbe_test { HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : ViewState : tests!apps ; } diff --git a/src/tests/servers/input/prefs/Jamfile b/src/tests/servers/input/prefs/Jamfile index 0c966d8bb4..2f9d303170 100644 --- a/src/tests/servers/input/prefs/Jamfile +++ b/src/tests/servers/input/prefs/Jamfile @@ -22,11 +22,6 @@ SimpleTest KeymapTest : Input.cpp : be tracker ; -if $(COMPILE_FOR_R5) { -} else { - LinkAgainst KeymapTest : libopenbeos.so ; -} - SEARCH on [ FGristFiles KeymapApplication.cpp KeymapWindow.cpp @@ -48,11 +43,6 @@ SimpleTest KeyboardTest : Input.cpp : translation be ; -if $(COMPILE_FOR_R5) { -} else { - LinkAgainst KeyboardTest : libopenbeos.so ; -} - SEARCH on [ FGristFiles Keyboard.cpp KeyboardSettings.cpp @@ -75,11 +65,6 @@ SimpleTest MouseTest : : translation be ; -if $(COMPILE_FOR_R5) { -} else { - LinkAgainst MouseTest : libopenbeos.so ; -} - SEARCH on [ FGristFiles Mouse.cpp MouseSettings.cpp @@ -98,11 +83,6 @@ SimpleTest keymapTest : Input.cpp : be ; -if $(COMPILE_FOR_R5) { -} else { - LinkAgainst keymapTest : libopenbeos.so ; -} - SEARCH on [ FGristFiles main.cpp Keymap.cpp diff --git a/src/tests/servers/input/view_input_device/Jamfile b/src/tests/servers/input/view_input_device/Jamfile index 6f0d678758..d3c99dcafe 100644 --- a/src/tests/servers/input/view_input_device/Jamfile +++ b/src/tests/servers/input/view_input_device/Jamfile @@ -1,6 +1,8 @@ SubDir HAIKU_TOP src tests servers input view_input_device ; +SetSubDirSupportedPlatforms libbe_test ; + Addon ViewInputDevice : input_server devices : ViewInputDevice.cpp ; -LinkAgainst ViewInputDevice : be input_server libopenbeos.so ; +LinkAgainst ViewInputDevice : be input_server be ; MakeLocate ViewInputDevice : [ FDirName $(HAIKU_TEST_DIR) servers input view_input_device input_server devices ] ; diff --git a/src/tests/servers/registrar/Jamfile b/src/tests/servers/registrar/Jamfile index ff8e0bae6c..d09f6b05f7 100644 --- a/src/tests/servers/registrar/Jamfile +++ b/src/tests/servers/registrar/Jamfile @@ -1,24 +1,18 @@ SubDir HAIKU_TOP src tests servers registrar ; -local libbe ; -if $(TARGET_PLATFORM) = r5 { - libbe = libopenbeos.so ; -} else { - libbe = be ; -} +SetSubDirSupportedPlatforms libbe_test ; SimpleTest RegistrarTest1 : RegistrarTest1.cpp - : libopenbeos.so be + : be ; SimpleTest RosterShell : RosterShell.cpp - : $(libbe) stdc++.r4 + : be stdc++.r4 ; -SimpleTest message_deliverer_test : message_deliverer_test.cpp - : libopenbeos.so ; +SimpleTest message_deliverer_test : message_deliverer_test.cpp : be ; SimpleTest run_haiku_registrar @@ -27,47 +21,35 @@ SimpleTest run_haiku_registrar ; # a shutdown working with the emulation under R5 -if $(TARGET_PLATFORM) = r5 { - UsePrivateHeaders app ; - UsePrivateHeaders kernel ; +UsePrivateHeaders app ; +UsePrivateHeaders kernel ; - SimpleTest shutdown - : shutdown.cpp - : libopenbeos.so ; - - SEARCH on [ FGristFiles shutdown.cpp ] = [ FDirName $(HAIKU_TOP) src bin ] ; -} +SimpleTest shutdown + : shutdown.cpp + : be ; + +SEARCH on [ FGristFiles shutdown.cpp ] = [ FDirName $(HAIKU_TOP) src bin ] ; # Two small test apps for testing the shutdown process. SimpleTest no_shutdown_reply : no_shutdown_reply.cpp - : $(libbe) + : be ; SimpleTest negative_shutdown_reply : negative_shutdown_reply.cpp - : $(libbe) + : be ; SimpleTest user_shutdown_reply : user_shutdown_reply.cpp - : $(libbe) + : be ; # the registrar itself -SetSupportedPlatformsForTarget haiku_registrar : r5 bone dano ; - -if $(TARGET_PLATFORM) != haiku { - UseHeaders [ FStandardOSHeaders ] : true ; - UsePrivateHeaders $(DOT) ; - UseHeaders [ FDirName $(HAIKU_TOP) headers posix ] : true ; - # TODO: POSIX headers shouldn't be used. Needed for strlcpy() and - # . -} - UsePrivateHeaders app ; UsePrivateHeaders kernel ; UsePrivateHeaders shared ; @@ -104,13 +86,13 @@ Server haiku_registrar R5Compatibility.cpp : - libopenbeos.so - stdc++.r4 + be + $(TARGET_LIBSTDC++) : registrar.rdef ; -if $(TARGET_PLATFORM) != haiku { +if $(TARGET_PLATFORM) = libbe_test { HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : haiku_registrar : tests!apps ; }