mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-15 16:20:08 +02:00
301 lines
12 KiB
Diff
301 lines
12 KiB
Diff
diff -ur cmake-2.6.0/Modules/CMakeFortranCompilerId.F90.in cmake-2.6.0-haiku/Modules/CMakeFortranCompilerId.F90.in
|
|
--- cmake-2.6.0/Modules/CMakeFortranCompilerId.F90.in 2008-05-05 18:26:04.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Modules/CMakeFortranCompilerId.F90.in 2008-06-19 11:16:50.000000000 +0000
|
|
@@ -48,6 +48,10 @@
|
|
PRINT *, 'INFO:platform[IRIX]'
|
|
#elif defined(__hpux) || defined(__hpux__)
|
|
PRINT *, 'INFO:platform[HP-UX]'
|
|
+#elif defined(__HAIKU) || defined(__HAIKU__) || defined(_HAIKU)
|
|
+ PRINT *, 'INFO:platform[Haiku]'
|
|
+! Haiku also defines __BEOS__ so we must
|
|
+! put it prior to the check for __BEOS__
|
|
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
|
|
PRINT *, 'INFO:platform[BeOS]'
|
|
#elif defined(__QNX__) || defined(__QNXNTO__)
|
|
diff -ur cmake-2.6.0/Modules/CMakePlatformId.h.in cmake-2.6.0-haiku/Modules/CMakePlatformId.h.in
|
|
--- cmake-2.6.0/Modules/CMakePlatformId.h.in 2008-05-05 18:26:04.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Modules/CMakePlatformId.h.in 2008-06-19 11:16:50.000000000 +0000
|
|
@@ -35,6 +35,11 @@
|
|
#elif defined(__hpux) || defined(__hpux__)
|
|
# define PLATFORM_ID "HP-UX"
|
|
|
|
+#elif defined(__HAIKU) || defined(__HAIKU__) || defined(_HAIKU)
|
|
+# define PLATFORM_ID "Haiku"
|
|
+! Haiku also defines __BEOS__ so we must
|
|
+! put it prior to the check for __BEOS__
|
|
+
|
|
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
|
|
# define PLATFORM_ID "BeOS"
|
|
|
|
diff -ur cmake-2.6.0/Modules/CheckForPthreads.c cmake-2.6.0-haiku/Modules/CheckForPthreads.c
|
|
--- cmake-2.6.0/Modules/CheckForPthreads.c 2008-05-05 18:26:04.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Modules/CheckForPthreads.c 2008-06-19 11:16:50.000000000 +0000
|
|
@@ -16,7 +16,7 @@
|
|
pthread_create(&tid[0], 0, runner, (void*)1);
|
|
pthread_create(&tid[1], 0, runner, (void*)2);
|
|
|
|
-#if defined(__BEOS__) && !defined(__ZETA__) // (no usleep on BeOS 5.)
|
|
+#if defined(__BEOS__) && !defined(__ZETA__) && !defined(__HAIKU__) // (no usleep on BeOS 5.)
|
|
usleep(1); // for strange behavior on single-processor sun
|
|
#endif
|
|
|
|
Only in cmake-2.6.0-haiku/Modules/Platform: Haiku.cmake
|
|
diff -ur cmake-2.6.0/Source/CPack/cmCPackGeneratorFactory.cxx cmake-2.6.0-haiku/Source/CPack/cmCPackGeneratorFactory.cxx
|
|
--- cmake-2.6.0/Source/CPack/cmCPackGeneratorFactory.cxx 2008-05-05 18:26:05.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Source/CPack/cmCPackGeneratorFactory.cxx 2008-06-19 11:16:50.000000000 +0000
|
|
@@ -35,7 +35,7 @@
|
|
#endif
|
|
|
|
#if !defined(_WIN32) && !defined(__APPLE__) \
|
|
- && !defined(__QNXNTO__) && !defined(__BEOS__)
|
|
+ && !defined(__QNXNTO__) && !defined(__BEOS__) && !defined(__HAIKU__)
|
|
# include "cmCPackDebGenerator.h"
|
|
# include "cmCPackRPMGenerator.h"
|
|
#endif
|
|
@@ -72,7 +72,8 @@
|
|
cmCPackOSXX11Generator::CreateGenerator);
|
|
#endif
|
|
#if !defined(_WIN32) && !defined(__APPLE__) \
|
|
- && !defined(__QNXNTO__) && !defined(__BEOS__)
|
|
+ && !defined(__QNXNTO__) && !defined(__BEOS__)\
|
|
+ && !defined(__HAIKU__)
|
|
this->RegisterGenerator("DEB", "Debian packages",
|
|
cmCPackDebGenerator::CreateGenerator);
|
|
this->RegisterGenerator("RPM", "RPM packages",
|
|
diff -ur cmake-2.6.0/Source/cmCTest.cxx cmake-2.6.0-haiku/Source/cmCTest.cxx
|
|
--- cmake-2.6.0/Source/cmCTest.cxx 2008-05-05 18:26:04.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Source/cmCTest.cxx 2008-06-19 11:16:50.000000000 +0000
|
|
@@ -49,10 +49,15 @@
|
|
|
|
#include <memory> // auto_ptr
|
|
|
|
-#if defined(__BEOS__)
|
|
+#if defined(__BEOS__) && !defined(__HAIKU__)
|
|
#include <be/kernel/OS.h> /* disable_debugger() API. */
|
|
#endif
|
|
|
|
+#if defined(__HAIKU__)
|
|
+#include <os/kernel/OS.h> /* disable_debugger() API. */
|
|
+#endif
|
|
+
|
|
+
|
|
#define DEBUGOUT std::cout << __LINE__ << " "; std::cout
|
|
#define DEBUGERR std::cerr << __LINE__ << " "; std::cerr
|
|
|
|
diff -ur cmake-2.6.0/Source/kwsys/DynamicLoader.cxx cmake-2.6.0-haiku/Source/kwsys/DynamicLoader.cxx
|
|
--- cmake-2.6.0/Source/kwsys/DynamicLoader.cxx 2008-05-05 18:26:05.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Source/kwsys/DynamicLoader.cxx 2008-06-20 14:08:23.000000000 +0000
|
|
@@ -331,7 +331,7 @@
|
|
|
|
// ---------------------------------------------------------------
|
|
// 4. Implementation for BeOS
|
|
-#ifdef __BEOS__
|
|
+#if defined __BEOS__ && !defined(__HAIKU__)
|
|
#include <string.h> // for strerror()
|
|
#include <be/kernel/image.h>
|
|
#include <be/support/Errors.h>
|
|
diff -ur cmake-2.6.0/Source/kwsys/ProcessUNIX.c cmake-2.6.0-haiku/Source/kwsys/ProcessUNIX.c
|
|
--- cmake-2.6.0/Source/kwsys/ProcessUNIX.c 2008-05-05 18:26:05.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Source/kwsys/ProcessUNIX.c 2008-06-20 14:06:56.000000000 +0000
|
|
@@ -75,7 +75,7 @@
|
|
typedef int kwsysProcess_ssize_t;
|
|
#endif
|
|
|
|
-#if defined(__BEOS__) && !defined(__ZETA__)
|
|
+#if defined(__BEOS__) && !defined(__ZETA__) && !defined(__HAIKU__)
|
|
/* BeOS 5 doesn't have usleep(), but it has snooze(), which is identical. */
|
|
# include <be/kernel/OS.h>
|
|
static inline void kwsysProcess_usleep(unsigned int msec)
|
|
diff -ur cmake-2.6.0/Source/kwsys/SystemTools.cxx cmake-2.6.0-haiku/Source/kwsys/SystemTools.cxx
|
|
--- cmake-2.6.0/Source/kwsys/SystemTools.cxx 2008-05-05 18:26:05.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Source/kwsys/SystemTools.cxx 2008-06-19 15:49:33.000000000 +0000
|
|
@@ -131,7 +131,12 @@
|
|
#define _chdir chdir
|
|
#endif
|
|
|
|
-#if defined(__BEOS__) && !defined(__ZETA__)
|
|
+#ifdef (__HAIKU__)
|
|
+#include <os/kernel.OS.h>
|
|
+#include <os/storage/Path.h>
|
|
+#endif
|
|
+
|
|
+#if defined(__BEOS__) && !defined(__ZETA__) && !defined(__HAIKU__)
|
|
#include <be/kernel/OS.h>
|
|
#include <be/storage/Path.h>
|
|
|
|
diff -ur cmake-2.6.0/Source/kwsys/testProcess.c cmake-2.6.0-haiku/Source/kwsys/testProcess.c
|
|
--- cmake-2.6.0/Source/kwsys/testProcess.c 2008-05-05 18:26:05.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Source/kwsys/testProcess.c 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -34,7 +34,7 @@
|
|
# pragma warn -8060 /* possibly incorrect assignment */
|
|
#endif
|
|
|
|
-#if defined(__BEOS__) && !defined(__ZETA__)
|
|
+#if defined(__BEOS__) && !defined(__ZETA__) && !defined(__HAIKU__)
|
|
/* BeOS 5 doesn't have usleep(), but it has snooze(), which is identical. */
|
|
# include <be/kernel/OS.h>
|
|
static inline void testProcess_usleep(unsigned int msec)
|
|
diff -ur cmake-2.6.0/Tests/Complex/Library/CMakeLists.txt cmake-2.6.0-haiku/Tests/Complex/Library/CMakeLists.txt
|
|
--- cmake-2.6.0/Tests/Complex/Library/CMakeLists.txt 2008-05-05 18:26:05.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Tests/Complex/Library/CMakeLists.txt 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -53,7 +53,9 @@
|
|
)
|
|
SET_TARGET_PROPERTIES(CMakeTestCLibraryShared PROPERTIES FOO BAR)
|
|
IF(NOT BEOS) # No libm on BeOS.
|
|
- SET_TARGET_PROPERTIES(CMakeTestCLibraryShared PROPERTIES LINK_FLAGS "-lm")
|
|
+ IF(NOT HAIKU) # libm in included in libroot on Haiku
|
|
+ SET_TARGET_PROPERTIES(CMakeTestCLibraryShared PROPERTIES LINK_FLAGS "-lm")
|
|
+ ENDIF(NOT HAIKU)
|
|
ENDIF(NOT BEOS)
|
|
GET_TARGET_PROPERTY(FOO_BAR_VAR CMakeTestCLibraryShared FOO)
|
|
IF(${FOO_BAR_VAR} MATCHES "BAR")
|
|
diff -ur cmake-2.6.0/Utilities/cmcurl/CMake/CurlTests.c cmake-2.6.0-haiku/Utilities/cmcurl/CMake/CurlTests.c
|
|
--- cmake-2.6.0/Utilities/cmcurl/CMake/CurlTests.c 2008-05-05 18:26:06.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmcurl/CMake/CurlTests.c 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -38,6 +38,12 @@
|
|
# define PLATFORM_AIX_V3
|
|
#endif
|
|
|
|
+/* Haiku defines both __HAIKU__ and __BEOS__ (for now) */
|
|
+/* many BeOS workarounds are no longer needed in Haiku */
|
|
+#if defined(__HAIKU__) && defined(__BEOS__)
|
|
+undef (__BEOS__)
|
|
+#endif
|
|
+
|
|
#if defined(PLATFORM_SUNOS4) || defined(PLATFORM_AIX_V3) || defined(__BEOS__)
|
|
#error "O_NONBLOCK does not work on this platform"
|
|
#endif
|
|
diff -ur cmake-2.6.0/Utilities/cmcurl/curl/curl.h cmake-2.6.0-haiku/Utilities/cmcurl/curl/curl.h
|
|
--- cmake-2.6.0/Utilities/cmcurl/curl/curl.h 2008-05-05 18:26:06.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmcurl/curl/curl.h 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -1133,7 +1133,7 @@
|
|
}
|
|
#endif
|
|
|
|
-#ifdef __BEOS__
|
|
+#if defined __BEOS__ || defined __HAIKU__
|
|
#include <support/SupportDefs.h>
|
|
#endif
|
|
|
|
diff -ur cmake-2.6.0/Utilities/cmcurl/if2ip.c cmake-2.6.0-haiku/Utilities/cmcurl/if2ip.c
|
|
--- cmake-2.6.0/Utilities/cmcurl/if2ip.c 2008-05-05 18:26:06.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmcurl/if2ip.c 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -39,7 +39,7 @@
|
|
*/
|
|
#if !defined(WIN32) && !defined(__BEOS__) && !defined(__CYGWIN__) && \
|
|
!defined(__riscos__) && !defined(__INTERIX) && !defined(NETWARE) && \
|
|
- !defined(_AMIGASF) && !defined(__minix)
|
|
+ !defined(_AMIGASF) && !defined(__minix) && !defined(__HAIKU__)
|
|
|
|
#ifdef HAVE_SYS_SOCKET_H
|
|
#include <sys/socket.h>
|
|
diff -ur cmake-2.6.0/Utilities/cmcurl/select.c cmake-2.6.0-haiku/Utilities/cmcurl/select.c
|
|
--- cmake-2.6.0/Utilities/cmcurl/select.c 2008-05-05 18:26:06.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmcurl/select.c 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -39,7 +39,7 @@
|
|
#error "We can't compile without select() support!"
|
|
#endif
|
|
|
|
-#ifdef __BEOS__
|
|
+#if defined __BEOS__ && !defined __HAIKU__
|
|
/* BeOS has FD_SET defined in socket.h */
|
|
#include <socket.h>
|
|
#endif
|
|
diff -ur cmake-2.6.0/Utilities/cmcurl/setup.h cmake-2.6.0-haiku/Utilities/cmcurl/setup.h
|
|
--- cmake-2.6.0/Utilities/cmcurl/setup.h 2008-05-05 18:26:06.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmcurl/setup.h 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -264,7 +264,7 @@
|
|
|
|
#else /* MSDOS */
|
|
|
|
-#ifdef __BEOS__
|
|
+#if defined __BEOS__ && !defined __HAIKU__
|
|
#define sclose(x) closesocket(x)
|
|
#else /* __BEOS__ */
|
|
#define sclose(x) close(x)
|
|
diff -ur cmake-2.6.0/Utilities/cmtar/libtar.c cmake-2.6.0-haiku/Utilities/cmtar/libtar.c
|
|
--- cmake-2.6.0/Utilities/cmtar/libtar.c 2008-05-05 18:26:07.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmtar/libtar.c 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -98,8 +98,8 @@
|
|
{
|
|
return -1;
|
|
}
|
|
-
|
|
-#if defined(__BEOS__) && !defined(__ZETA__) /* no fchmod on BeOS...do pathname instead. */
|
|
+/* no fchmod on BeOS...do pathname instead. */
|
|
+#if defined(__BEOS__) && !defined(__ZETA__) && !defined(__HAIKU__)
|
|
if ((oflags & O_CREAT) && chmod(pathname, mode & 07777))
|
|
{
|
|
return -1;
|
|
diff -ur cmake-2.6.0/Utilities/cmxmlrpc/xmlrpc_curl_transport.c cmake-2.6.0-haiku/Utilities/cmxmlrpc/xmlrpc_curl_transport.c
|
|
--- cmake-2.6.0/Utilities/cmxmlrpc/xmlrpc_curl_transport.c 2008-05-05 18:26:07.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmxmlrpc/xmlrpc_curl_transport.c 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -10,7 +10,7 @@
|
|
|
|
#include "xmlrpc_config.h"
|
|
|
|
-#if defined(__BEOS__)
|
|
+#if defined(__BEOS__) && !defined(__HAIKU__)
|
|
/* Some helpful system header has char==bool, then bool.h does int==bool. */
|
|
#define HAVE_BOOL 1
|
|
#endif
|
|
diff -ur cmake-2.6.0/Utilities/cmzlib/zconf.h cmake-2.6.0-haiku/Utilities/cmzlib/zconf.h
|
|
--- cmake-2.6.0/Utilities/cmzlib/zconf.h 2008-05-05 18:26:07.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmzlib/zconf.h 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -237,7 +237,7 @@
|
|
# endif
|
|
#endif
|
|
|
|
-#if defined (__BEOS__)
|
|
+#if defined (__BEOS__) && !defined (__HAIKU__)
|
|
# ifdef ZLIB_DLL
|
|
# ifdef ZLIB_INTERNAL
|
|
# define ZEXPORT __declspec(dllexport)
|
|
diff -ur cmake-2.6.0/Utilities/cmzlib/zutil.h cmake-2.6.0-haiku/Utilities/cmzlib/zutil.h
|
|
--- cmake-2.6.0/Utilities/cmzlib/zutil.h 2008-05-05 18:26:07.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/Utilities/cmzlib/zutil.h 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -147,7 +147,13 @@
|
|
# define OS_CODE 0x0f
|
|
#endif
|
|
|
|
-#if defined(_BEOS_) || defined(RISCOS)
|
|
+/* Haiku defines both __HAIKU__ and __BEOS__ (for now) */
|
|
+/* many BeOS workarounds are no longer needed in Haiku */
|
|
+#if defined(__HAIKU__) && defined(__BEOS__)
|
|
+undef (__BEOS__)
|
|
+#endif
|
|
+
|
|
+#if defined(_BEOS_) || defined(RISCOS)
|
|
# define fdopen(fd,mode) NULL /* No fdopen() */
|
|
#endif
|
|
|
|
diff -ur cmake-2.6.0/bootstrap cmake-2.6.0-haiku/bootstrap
|
|
--- cmake-2.6.0/bootstrap 2008-05-05 18:26:04.000000000 +0000
|
|
+++ cmake-2.6.0-haiku/bootstrap 2008-06-19 11:16:51.000000000 +0000
|
|
@@ -73,6 +73,13 @@
|
|
cmake_system_beos=false
|
|
fi
|
|
|
|
+# Determine whether this is Haiku
|
|
+if echo "${cmake_system}" | grep Haiku >/dev/null 2>&1; then
|
|
+ cmake_system_haiku=true
|
|
+else
|
|
+ cmake_system_haiku=false
|
|
+fi
|
|
+
|
|
# Choose the generator to use for bootstrapping.
|
|
if ${cmake_system_mingw}; then
|
|
# Bootstrapping from an MSYS prompt.
|
|
@@ -603,6 +610,11 @@
|
|
cmake_ld_flags="${LDFLAGS} -lroot -lbe"
|
|
fi
|
|
|
|
+# Add Haiku toolkits...
|
|
+if ${cmake_system_haiku}; then
|
|
+ cmake_ld_flags="${LDFLAGS} -lroot -lbe"
|
|
+fi
|
|
+
|
|
# Test C compiler
|
|
cmake_c_compiler=
|
|
|