diff -Naur boost_1_47_0/boost/config/platform/haiku.cpp boost_1_47_0-haiku/boost/config/platform/haiku.cpp
|
old
|
new
|
|
| | 1 | // (C) Copyright John Maddock 2001. |
| | 2 | // Use, modification and distribution are subject to the |
| | 3 | // Boost Software License, Version 1.0. (See accompanying file |
| | 4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
| | 5 | |
| | 6 | // See http://www.boost.org for most recent version. |
| | 7 | |
| | 8 | // Haiku specific config options: |
| | 9 | |
| | 10 | #define BOOST_PLATFORM "Haiku" |
| | 11 | |
| | 12 | #define BOOST_NO_INTRINSIC_WCHAR_T |
| | 13 | #define BOOST_HAS_UNISTD_H |
| | 14 | |
| | 15 | #define BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS |
| | 16 | |
| | 17 | #define BOOST_HAS_THREADS |
| | 18 | |
| | 19 | // |
| | 20 | // thread API's not auto detected: |
| | 21 | // |
| | 22 | #define BOOST_HAS_SCHED_YIELD |
| | 23 | #define BOOST_HAS_NANOSLEEP |
| | 24 | #define BOOST_HAS_GETTIMEOFDAY |
| | 25 | #define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE |
| | 26 | #define BOOST_HAS_SIGACTION |
| | 27 | |
| | 28 | // boilerplate code: |
| | 29 | #include <boost/config/posix_features.hpp> |
diff -Naur boost_1_47_0/boost/config/select_platform_config.hpp boost_1_47_0-haiku/boost/config/select_platform_config.hpp
|
old
|
new
|
|
| 41 | 41 | // win32: |
| 42 | 42 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/win32.hpp" |
| 43 | 43 | |
| | 44 | #elif defined(__HAIKU__) |
| | 45 | // Haiku |
| | 46 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/haiku.hpp" |
| | 47 | |
| 44 | 48 | #elif defined(__BEOS__) |
| 45 | 49 | // BeOS |
| 46 | 50 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/beos.hpp" |
diff -Naur boost_1_47_0/boost/config/stdlib/libstdcpp3.hpp boost_1_47_0-haiku/boost/config/stdlib/libstdcpp3.hpp
|
old
|
new
|
|
| 33 | 33 | |
| 34 | 34 | #ifdef __GLIBCXX__ // gcc 3.4 and greater: |
| 35 | 35 | # if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \ |
| 36 | | || defined(_GLIBCXX__PTHREADS) |
| | 36 | || defined(_GLIBCXX__PTHREADS) || defined(__HAIKU__) |
| 37 | 37 | // |
| 38 | 38 | // If the std lib has thread support turned on, then turn it on in Boost |
| 39 | 39 | // as well. We do this because some gcc-3.4 std lib headers define _REENTANT |
diff -Naur boost_1_47_0/boost/interprocess/detail/workaround.hpp boost_1_47_0-haiku/boost/interprocess/detail/workaround.hpp
|
old
|
new
|
|
| 64 | 64 | #endif |
| 65 | 65 | |
| 66 | 66 | //Check for XSI shared memory objects. They are available in nearly all UNIX platforms |
| 67 | | #if !defined(__QNXNTO__) |
| | 67 | #if !defined(__QNXNTO__) || !defined(__HAIKU__) |
| 68 | 68 | # define BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| 69 | 69 | #endif |
| 70 | 70 | |
diff -Naur boost_1_47_0/boost/interprocess/mapped_region.hpp boost_1_47_0-haiku/boost/interprocess/mapped_region.hpp
|
old
|
new
|
|
| 31 | 31 | # include <unistd.h> |
| 32 | 32 | # include <sys/stat.h> |
| 33 | 33 | # include <sys/types.h> |
| | 34 | # if !defined(__HAIKU__) |
| 34 | 35 | # if defined(BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS) |
| 35 | 36 | # include <sys/shm.h> //System V shared memory... |
| 36 | 37 | # endif |
| | 38 | # endif |
| 37 | 39 | # include <boost/assert.hpp> |
| 38 | 40 | # else |
| 39 | 41 | # error Unknown platform |
| … |
… |
|
| 396 | 398 | mapping_handle_t map_hnd = mapping.get_mapping_handle(); |
| 397 | 399 | |
| 398 | 400 | //Some systems dont' support XSI shared memory |
| | 401 | # if !defined(__HAIKU__) |
| 399 | 402 | #ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| 400 | 403 | if(map_hnd.is_xsi){ |
| 401 | 404 | //Get the size |
| … |
… |
|
| 438 | 441 | return; |
| 439 | 442 | } |
| 440 | 443 | #endif //ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| | 444 | #endif //Haiku |
| 441 | 445 | if(size == 0){ |
| 442 | 446 | struct ::stat buf; |
| 443 | 447 | if(0 != fstat(map_hnd.handle, &buf)){ |
| … |
… |
|
| 547 | 551 | inline void mapped_region::priv_close() |
| 548 | 552 | { |
| 549 | 553 | if(m_base != MAP_FAILED){ |
| | 554 | # if !defined(__HAIKU__) |
| 550 | 555 | #ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| 551 | 556 | if(m_is_xsi){ |
| 552 | 557 | int ret = ::shmdt(m_base); |
| … |
… |
|
| 555 | 560 | return; |
| 556 | 561 | } |
| 557 | 562 | #endif //#ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| | 563 | #endif //Haiku |
| 558 | 564 | munmap(static_cast<char*>(m_base) - m_extra_offset, m_size + m_extra_offset); |
| 559 | 565 | m_base = MAP_FAILED; |
| 560 | 566 | } |
diff -Naur boost_1_47_0/boost/math/tools/config.hpp boost_1_47_0-haiku/boost/math/tools/config.hpp
|
old
|
new
|
|
| 24 | 24 | #include <boost/math/special_functions/detail/round_fwd.hpp> |
| 25 | 25 | |
| 26 | 26 | #if (defined(__CYGWIN__) || defined(__FreeBSD__) || defined(__NetBSD__) \ |
| 27 | | || defined(__hppa) || defined(__NO_LONG_DOUBLE_MATH)) && !defined(BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS) |
| | 27 | || defined(__HAIKU__) || defined(__hppa) || defined(__NO_LONG_DOUBLE_MATH)) && !defined(BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS) |
| 28 | 28 | # define BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS |
| 29 | 29 | #endif |
| 30 | 30 | #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582)) |
diff -Naur boost_1_47_0/boost/thread/detail/platform.hpp boost_1_47_0-haiku/boost/thread/detail/platform.hpp
|
old
|
new
|
|
| 31 | 31 | # define BOOST_THREAD_CYGWIN |
| 32 | 32 | #elif (defined(_WIN32) || defined(__WIN32__) || defined(WIN32)) && !defined(BOOST_DISABLE_WIN32) |
| 33 | 33 | # define BOOST_THREAD_WIN32 |
| | 34 | #elif defined(__HAIKU__) |
| | 35 | # define BOOST_THREAD_HAIKU |
| 34 | 36 | #elif defined(__BEOS__) |
| 35 | 37 | # define BOOST_THREAD_BEOS |
| 36 | 38 | #elif defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__) |
diff -Naur boost_1_47_0/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h boost_1_47_0-haiku/tools/build/v2/engine/boehm_gc/include/private/gcconfig.h
|
old
|
new
|
|
| 210 | 210 | # endif |
| 211 | 211 | # define mach_type_known |
| 212 | 212 | # endif |
| | 213 | # if defined(__HAIKU__) && defined(_X86_) |
| | 214 | # define I386 |
| | 215 | # define HAIKU |
| | 216 | # define mach_type_known |
| | 217 | # endif |
| 213 | 218 | # if defined(__BEOS__) && defined(_X86_) |
| 214 | 219 | # define I386 |
| 215 | 220 | # define BEOS |
| … |
… |
|
| 1007 | 1012 | # define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff)) |
| 1008 | 1013 | # define STACKBOTTOM ((ptr_t) 0x3ffff000) |
| 1009 | 1014 | # endif |
| | 1015 | # ifdef HAIKU |
| | 1016 | # define OS_TYPE "HAIKU" |
| | 1017 | # include <OS.h> |
| | 1018 | # define GETPAGESIZE() B_PAGE_SIZE |
| | 1019 | extern int etext[]; |
| | 1020 | # define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff)) |
| | 1021 | # endif |
| 1010 | 1022 | # ifdef BEOS |
| 1011 | 1023 | # define OS_TYPE "BEOS" |
| 1012 | 1024 | # include <OS.h> |
diff -Naur boost_1_47_0/tools/build/v2/engine/fileunix.c boost_1_47_0-haiku/tools/build/v2/engine/fileunix.c
|
old
|
new
|
|
| 80 | 80 | # endif |
| 81 | 81 | |
| 82 | 82 | # if defined( OS_QNX ) || \ |
| | 83 | defined( OS_HAIKU ) || \ |
| 83 | 84 | defined( OS_BEOS ) || \ |
| 84 | 85 | defined( OS_MPEIX ) |
| 85 | 86 | # define NO_AR |
diff -Naur boost_1_47_0/tools/build/v2/engine/jam.h boost_1_47_0-haiku/tools/build/v2/engine/jam.h
|
old
|
new
|
|
| 228 | 228 | #define OSMINOR "OS=AMIGA" |
| 229 | 229 | #define OS_AMIGA |
| 230 | 230 | #endif |
| | 231 | #ifdef __HAIKU__ |
| | 232 | #define unix |
| | 233 | #define OSMINOR "OS=HAIKU" |
| | 234 | #define OS_HAIKU |
| | 235 | #endif |
| 231 | 236 | #ifdef __BEOS__ |
| 232 | 237 | #define unix |
| 233 | 238 | #define OSMINOR "OS=BEOS" |
diff -Naur boost_1_47_0/tools/build/v2/engine/Jambase boost_1_47_0-haiku/tools/build/v2/engine/Jambase
|
old
|
new
|
|
| 827 | 827 | SUFLIB ?= .lib ; |
| 828 | 828 | SUFOBJ ?= .o ; |
| 829 | 829 | } |
| | 830 | else if $(OS) = HAIKU |
| | 831 | { |
| | 832 | BINDIR ?= /boot/common/bin ; |
| | 833 | CC ?= gcc ; |
| | 834 | C++ ?= $(CC) ; |
| | 835 | FORTRAN ?= "" ; |
| | 836 | LIBDIR ?= /boot/develop/lib/x86 ; |
| | 837 | LINK ?= gcc ; |
| | 838 | LINKLIBS ?= -lnetwork ; |
| | 839 | NOARSCAN ?= true ; |
| | 840 | STDHDRS ?= /boot/develop/headers/posix ; |
| | 841 | } |
| | 842 | |
| 830 | 843 | else if $(OS) = BEOS && $(METROWERKS) |
| 831 | 844 | { |
| 832 | 845 | AR ?= mwld -xml -o ; |
diff -Naur boost_1_47_0/tools/build/v2/engine/jambase.c boost_1_47_0-haiku/tools/build/v2/engine/jambase.c
|
old
|
new
|
|
| 548 | 548 | "NOARSCAN ?= true ;\n", |
| 549 | 549 | "STDHDRS ?= /boot/develop/headers/posix ;\n", |
| 550 | 550 | "}\n", |
| | 551 | "else if $(OS) = HAIKU\n", |
| | 552 | "{\n", |
| | 553 | "BINDIR ?= /boot/common/bin ;\n", |
| | 554 | "CC ?= gcc ;\n", |
| | 555 | "C++ ?= $(CC) ;\n", |
| | 556 | "FORTRAN ?= \"\" ;\n", |
| | 557 | "LIBDIR ?= /boot/develop/lib/x86 ;\n", |
| | 558 | "LINK ?= gcc ;\n", |
| | 559 | "LINKLIBS ?= -lnetwork ;\n", |
| | 560 | "NOARSCAN ?= true ;\n", |
| | 561 | "STDHDRS ?= /boot/develop/headers/posix ;\n", |
| | 562 | "}\n", |
| | 563 | |
| 551 | 564 | "else if $(OS) = BEOS\n", |
| 552 | 565 | "{\n", |
| 553 | 566 | "BINDIR ?= /boot/apps ;\n", |
diff -Naur boost_1_47_0/tools/build/v2/tools/builtin.jam boost_1_47_0-haiku/tools/build/v2/tools/builtin.jam
|
old
|
new
|
|
| 40 | 40 | |
| 41 | 41 | |
| 42 | 42 | .os-names = aix bsd cygwin darwin freebsd hpux iphone linux netbsd |
| 43 | | openbsd osf qnx qnxnto sgi solaris unix unixware windows |
| | 43 | openbsd osf qnx qnxnto sgi solaris unix unixware windows haiku |
| 44 | 44 | elf # Not actually an OS -- used for targeting bare metal where |
| 45 | 45 | # object format is ELF. This catches both -elf and -eabi gcc |
| 46 | 46 | # targets and well as other compilers targeting ELF. It is not |
| … |
… |
|
| 78 | 78 | case MACOSX : host-os = darwin ; |
| 79 | 79 | case KFREEBSD : host-os = freebsd ; |
| 80 | 80 | case LINUX : host-os = linux ; |
| | 81 | case HAIKU : host-os = haiku ; |
| 81 | 82 | case SUNOS : |
| 82 | 83 | ECHO "SunOS is not a supported operating system." ; |
| 83 | 84 | ECHO "We believe last version of SunOS was released in 1992, " ; |
diff -Naur boost_1_47_0/tools/build/v2/tools/gcc.jam boost_1_47_0-haiku/tools/build/v2/tools/gcc.jam
|
old
|
new
|
|
| 951 | 951 | |
| 952 | 952 | actions link bind LIBRARIES |
| 953 | 953 | { |
| 954 | | "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) |
| | 954 | "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -nostart -Wl,-shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) |
| 955 | 955 | |
| 956 | 956 | } |
| 957 | 957 | |
| … |
… |
|
| 1043 | 1043 | option = -pthreads ; |
| 1044 | 1044 | libs = rt ; |
| 1045 | 1045 | } |
| | 1046 | case haiku : |
| | 1047 | { |
| | 1048 | # pthread |
| | 1049 | } |
| 1046 | 1050 | case beos : |
| 1047 | 1051 | { |
| 1048 | 1052 | # BeOS has no threading options, so do not set anything here. |