diff -Naur boost_1_42_0/boost/config/platform/haiku.hpp boost_1_42_0-haiku/boost/config/platform/haiku.hpp
|
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_42_0/boost/config/select_platform_config.hpp boost_1_42_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_42_0/boost/config/stdlib/libstdcpp3.hpp boost_1_42_0-haiku/boost/config/stdlib/libstdcpp3.hpp
|
old
|
new
|
|
| 31 | 31 | |
| 32 | 32 | #ifdef __GLIBCXX__ // gcc 3.4 and greater: |
| 33 | 33 | # if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \ |
| 34 | | || defined(_GLIBCXX__PTHREADS) |
| | 34 | || defined(_GLIBCXX__PTHREADS) || defined(__HAIKU__) |
| 35 | 35 | // |
| 36 | 36 | // If the std lib has thread support turned on, then turn it on in Boost |
| 37 | 37 | // as well. We do this because some gcc-3.4 std lib headers define _REENTANT |
diff -Naur boost_1_42_0/boost/interprocess/detail/workaround.hpp boost_1_42_0-haiku/boost/interprocess/detail/workaround.hpp
|
old
|
new
|
|
| 63 | 63 | #endif |
| 64 | 64 | |
| 65 | 65 | //Check for XSI shared memory objects. They are available in nearly all UNIX platforms |
| 66 | | #if !defined(__QNXNTO__) |
| | 66 | #if !defined(__QNXNTO__) || !defined(__HAIKU__) |
| 67 | 67 | # define BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| 68 | 68 | #endif |
| 69 | 69 | |
diff -Naur boost_1_42_0/boost/interprocess/mapped_region.hpp boost_1_42_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 <cassert> |
| 38 | 40 | # else |
| 39 | 41 | # error Unknown platform |
| … |
… |
|
| 398 | 400 | mapping_handle_t map_hnd = mapping.get_mapping_handle(); |
| 399 | 401 | |
| 400 | 402 | //Some systems dont' support XSI shared memory |
| | 403 | # if !defined(__HAIKU__) |
| 401 | 404 | #ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| 402 | 405 | if(map_hnd.is_xsi){ |
| 403 | 406 | //Get the size |
| … |
… |
|
| 440 | 443 | return; |
| 441 | 444 | } |
| 442 | 445 | #endif //ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| | 446 | #endif //Haiku |
| 443 | 447 | if(size == 0){ |
| 444 | 448 | struct ::stat buf; |
| 445 | 449 | if(0 != fstat(map_hnd.handle, &buf)){ |
| … |
… |
|
| 544 | 548 | inline void mapped_region::priv_close() |
| 545 | 549 | { |
| 546 | 550 | if(m_base != MAP_FAILED){ |
| | 551 | # if !defined(__HAIKU__) |
| 547 | 552 | #ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| 548 | 553 | if(m_is_xsi){ |
| 549 | 554 | int ret = ::shmdt(m_base); |
| … |
… |
|
| 552 | 557 | return; |
| 553 | 558 | } |
| 554 | 559 | #endif //#ifdef BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS |
| | 560 | #endif //Haiku |
| 555 | 561 | munmap(static_cast<char*>(m_base) - m_extra_offset, m_size + m_extra_offset); |
| 556 | 562 | m_base = MAP_FAILED; |
| 557 | 563 | } |
diff -Naur boost_1_42_0/boost/math/tools/config.hpp boost_1_42_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) |
| | 27 | || defined(__HAIKU__) || defined(__hppa) || defined(__NO_LONG_DOUBLE_MATH) |
| 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_42_0/boost/thread/detail/platform.hpp boost_1_42_0-haiku/boost/thread/detail/platform.hpp
|
old
|
new
|
|
| 31 | 31 | # define BOOST_THREAD_CYGWIN |
| 32 | 32 | #elif defined(_WIN32) || defined(__WIN32__) || defined(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_42_0/boost/thread/thread_time.hpp boost_1_42_0-haiku/boost/thread/thread_time.hpp
|
old
|
new
|
|
| 17 | 17 | |
| 18 | 18 | inline system_time get_system_time() |
| 19 | 19 | { |
| | 20 | #ifndef BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK |
| | 21 | # error "High precision clock not supported on this platform" |
| | 22 | #endif |
| 20 | 23 | return boost::date_time::microsec_clock<system_time>::universal_time(); |
| 21 | 24 | } |
| 22 | 25 | |
diff -Naur boost_1_42_0/tools/build/v2/tools/builtin.jam boost_1_42_0-haiku/tools/build/v2/tools/builtin.jam
|
old
|
new
|
|
| 39 | 39 | |
| 40 | 40 | |
| 41 | 41 | .os-names = aix bsd cygwin darwin freebsd hpux iphone linux netbsd |
| 42 | | openbsd osf qnx qnxnto sgi solaris unix unixware windows |
| | 42 | openbsd osf qnx qnxnto sgi solaris unix unixware windows haiku |
| 43 | 43 | elf # Not actually an OS -- used for targeting bare metal where |
| 44 | 44 | # object format is ELF. This catches both -elf and -eabi gcc |
| 45 | 45 | # targets and well as other compilers targeting ELF. It is not |
| … |
… |
|
| 77 | 77 | case MACOSX : host-os = darwin ; |
| 78 | 78 | case KFREEBSD : host-os = freebsd ; |
| 79 | 79 | case LINUX : host-os = linux ; |
| | 80 | case HAIKU : host-os = haiku ; |
| 80 | 81 | case SUNOS : |
| 81 | 82 | ECHO "SunOS is not a supported operating system." ; |
| 82 | 83 | ECHO "We believe last version of SunOS was released in 1992, " ; |
diff -Naur boost_1_42_0/tools/build/v2/tools/gcc.jam boost_1_42_0-haiku/tools/build/v2/tools/gcc.jam
|
old
|
new
|
|
| 795 | 795 | |
| 796 | 796 | actions link bind LIBRARIES |
| 797 | 797 | { |
| 798 | | "$(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) |
| | 798 | "$(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) |
| 799 | 799 | |
| 800 | 800 | } |
| 801 | 801 | |
| … |
… |
|
| 885 | 885 | option = -pthreads ; |
| 886 | 886 | libs = rt ; |
| 887 | 887 | } |
| | 888 | case haiku : |
| | 889 | { |
| | 890 | # pthread |
| | 891 | } |
| 888 | 892 | case beos : |
| 889 | 893 | { |
| 890 | 894 | # BeOS has no threading options, so do not set anything here. |
diff -Naur boost_1_42_0/tools/jam/src/Jambase boost_1_42_0-haiku/tools/jam/src/Jambase
|
old
|
new
|
|
| 837 | 837 | NOARSCAN ?= true ; |
| 838 | 838 | STDHDRS ?= /boot/develop/headers/posix ; |
| 839 | 839 | } |
| 840 | | else if $(OS) = BEOS |
| | 840 | else if $(OS) = BEOS || $(OS) = HAIKU |
| 841 | 841 | { |
| 842 | 842 | BINDIR ?= /boot/apps ; |
| 843 | 843 | CC ?= gcc ; |
diff -Naur boost_1_42_0/tools/jam/src/boehm_gc/include/private/gcconfig.h boost_1_42_0-haiku/tools/jam/src/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 | # endif |
| 213 | 217 | # if defined(__BEOS__) && defined(_X86_) |
| 214 | 218 | # define I386 |
| 215 | 219 | # define BEOS |
| … |
… |
|
| 1007 | 1011 | # define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff)) |
| 1008 | 1012 | # define STACKBOTTOM ((ptr_t) 0x3ffff000) |
| 1009 | 1013 | # endif |
| | 1014 | # ifdef HAIKU |
| | 1015 | # define OS_TYPE "HAIKU" |
| | 1016 | # include <OS.h> |
| | 1017 | # define GETPAGESIZE() B_PAGE_SIZE |
| | 1018 | extern int etext[]; |
| | 1019 | # define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff)) |
| | 1020 | # endif |
| 1010 | 1021 | # ifdef BEOS |
| 1011 | 1022 | # define OS_TYPE "BEOS" |
| 1012 | 1023 | # include <OS.h> |
diff -Naur boost_1_42_0/tools/jam/src/fileunix.c boost_1_42_0-haiku/tools/jam/src/fileunix.c
|
old
|
new
|
|
| 79 | 79 | # endif |
| 80 | 80 | |
| 81 | 81 | # if defined( OS_QNX ) || \ |
| | 82 | defined( OS_HAIKU ) || \ |
| 82 | 83 | defined( OS_BEOS ) || \ |
| 83 | 84 | defined( OS_MPEIX ) |
| 84 | 85 | # define NO_AR |
diff -Naur boost_1_42_0/tools/jam/src/jam.h boost_1_42_0-haiku/tools/jam/src/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_42_0/tools/jam/src/jambase.c boost_1_42_0-haiku/tools/jam/src/jambase.c
|
old
|
new
|
|
| 542 | 542 | "NOARSCAN ?= true ;\n", |
| 543 | 543 | "STDHDRS ?= /boot/develop/headers/posix ;\n", |
| 544 | 544 | "}\n", |
| 545 | | "else if $(OS) = BEOS\n", |
| | 545 | "else if $(OS) = BEOS || $(OS) = HAIKU\n", |
| 546 | 546 | "{\n", |
| 547 | 547 | "BINDIR ?= /boot/apps ;\n", |
| 548 | 548 | "CC ?= gcc ;\n", |