From 6433b2085b22087ca2552520ada31a935b08a4ef Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sat, 24 Mar 2018 14:19:43 +0100 Subject: Fix search path for Lua headers. diff --git a/Modules/FindLua51.cmake b/Modules/FindLua51.cmake index 283a3eb..8fd73f2 100644 --- a/Modules/FindLua51.cmake +++ b/Modules/FindLua51.cmake @@ -38,7 +38,7 @@ locations other than lua/ find_path(LUA_INCLUDE_DIR lua.h HINTS ENV LUA_DIR - PATH_SUFFIXES include/lua51 include/lua5.1 include/lua-5.1 include/lua include + PATH_SUFFIXES include/lua51 include/lua5.1 include/lua-5.1 include/lua include lua5.1 PATHS ~/Library/Frameworks /Library/Frameworks -- 2.35.1 From 90da36afdaa566092a81bcab7a62927e6123e3dc Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Sat, 7 Sep 2019 17:29:56 +0200 Subject: links against libnetwork diff --git a/bootstrap b/bootstrap index e0791d5..f1bae37 100755 --- a/bootstrap +++ b/bootstrap @@ -1722,6 +1722,9 @@ else uv_c_flags="${uv_c_flags} -D_XOPEN_SOURCE=700" libs="${libs} -lsocket" ;; + *Haiku*) + libs="${libs} -lnetwork" + ;; esac fi if test "x${bootstrap_system_libuv}" = "x"; then -- 2.35.1 From 72f4f0056f908483d1622bc24c07e85084bfda2b Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Sat, 7 Sep 2019 23:46:47 +0200 Subject: bootstrap uses cmlibuv diff --git a/Utilities/cmlibuv/src/unix/core.c b/Utilities/cmlibuv/src/unix/core.c index 0793922..2a8c88f 100644 --- a/Utilities/cmlibuv/src/unix/core.c +++ b/Utilities/cmlibuv/src/unix/core.c @@ -1436,7 +1436,9 @@ int uv_os_getpriority(uv_pid_t pid, int* priority) { return UV_EINVAL; errno = 0; +#ifndef __HAIKU__ r = getpriority(PRIO_PROCESS, (int) pid); +#endif if (r == -1 && errno != 0) return UV__ERR(errno); @@ -1450,8 +1452,10 @@ int uv_os_setpriority(uv_pid_t pid, int priority) { if (priority < UV_PRIORITY_HIGHEST || priority > UV_PRIORITY_LOW) return UV_EINVAL; +#ifndef __HAIKU__ if (setpriority(PRIO_PROCESS, (int) pid, priority) != 0) return UV__ERR(errno); +#endif return 0; } -- 2.35.1 From 8a009e76f6c98c390bd0ea87cbcd80b1b5c8eefd Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Sat, 21 Sep 2019 15:30:44 +0200 Subject: also detect secondary arch with clang. diff --git a/Modules/Platform/Haiku.cmake b/Modules/Platform/Haiku.cmake index b8e3ba6..08b11a4 100644 --- a/Modules/Platform/Haiku.cmake +++ b/Modules/Platform/Haiku.cmake @@ -38,6 +38,10 @@ execute_process( string(REGEX MATCH "libraries: =?([^\n]*:)?/boot/system/develop/lib/([^/]*)/?(:?\n+)" _dummy "${_HAIKU_SEARCH_DIRS}\n") set(CMAKE_HAIKU_SECONDARY_ARCH "${CMAKE_MATCH_2}") +if(NOT CMAKE_HAIKU_SECONDARY_ARCH) + string(REGEX MATCH "libraries: =?([^\n]*:)?/system/lib/([^/]*)/?(:?\n+)" _dummy "${_HAIKU_SEARCH_DIRS}\n") + set(CMAKE_HAIKU_SECONDARY_ARCH "${CMAKE_MATCH_2}") +endif() if(NOT CMAKE_HAIKU_SECONDARY_ARCH) set(CMAKE_HAIKU_SECONDARY_ARCH_SUBDIR "") -- 2.35.1 From 0e34776c1b621e1adf6a57b2223800a3372122dd Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Fri, 21 Feb 2020 15:38:39 -0500 Subject: Modules/Haiku: Set CMAKE_SYSTEM_FRAMEWORK_PATH. diff --git a/Modules/Platform/Haiku.cmake b/Modules/Platform/Haiku.cmake index 08b11a4..9a8ae60 100644 --- a/Modules/Platform/Haiku.cmake +++ b/Modules/Platform/Haiku.cmake @@ -124,6 +124,9 @@ LIST(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES LIST(APPEND CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_HAIKU_DEVELOP_LIB_DIRECTORIES}) +# This is needed for find_package to search develop/lib/cmake/. +list(APPEND CMAKE_SYSTEM_FRAMEWORK_PATH /boot/system/develop /boot/system/non-packaged/develop) + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) set(CMAKE_INSTALL_PREFIX "/boot/system" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) -- 2.35.1 From d1f577443fd69056812ff1685b7ed18c251334fc Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Thu, 15 Apr 2021 21:09:12 +0200 Subject: disable dependency tracking for older GNU compilers diff --git a/Modules/Compiler/GNU.cmake b/Modules/Compiler/GNU.cmake index 928e726..87d0167 100644 --- a/Modules/Compiler/GNU.cmake +++ b/Modules/Compiler/GNU.cmake @@ -48,7 +48,9 @@ macro(__compiler_gnu lang) # distcc does not transform -o to -MT when invoking the preprocessor # internally, as it ought to. Work around this bug by setting -MT here # even though it isn't strictly necessary. - set(CMAKE_DEPFILE_FLAGS_${lang} "-MD -MT -MF ") + if(NOT CMAKE_${lang}_COMPILER_ID STREQUAL "GNU" OR NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 4.0) + set(CMAKE_DEPFILE_FLAGS_${lang} "-MD -MT -MF ") + endif() endif() # Initial configuration flags. -- 2.35.1 From 7eeaae08e3320004c9f92e8ad51a7a39bcdd86df Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Wed, 20 Oct 2021 14:28:22 +0200 Subject: Haiku: fix install dirs, let FindPackage search in data/ diff --git a/Source/CMakeInstallDestinations.cmake b/Source/CMakeInstallDestinations.cmake index e82bec3..7e5f577 100644 --- a/Source/CMakeInstallDestinations.cmake +++ b/Source/CMakeInstallDestinations.cmake @@ -1,11 +1,11 @@ # Keep formatting here consistent with bootstrap script expectations. -if(BEOS) +if(BEOS OR HAIKU) set(CMAKE_BIN_DIR_DEFAULT "bin") # HAIKU - set(CMAKE_DATA_DIR_DEFAULT "share/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # HAIKU + set(CMAKE_DATA_DIR_DEFAULT "data/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # HAIKU set(CMAKE_DOC_DIR_DEFAULT "documentation/doc/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # HAIKU set(CMAKE_INFO_DIR_DEFAULT "documentation/info") # HAIKU set(CMAKE_MAN_DIR_DEFAULT "documentation/man") # HAIKU - set(CMAKE_XDGDATA_DIR_DEFAULT "share") # HAIKU + set(CMAKE_XDGDATA_DIR_DEFAULT "data") # HAIKU elseif(CYGWIN) set(CMAKE_BIN_DIR_DEFAULT "bin") # CYGWIN set(CMAKE_DATA_DIR_DEFAULT "share/cmake-${CMake_VERSION}") # CYGWIN diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx index f55d838..13e154f 100644 --- a/Source/cmFindPackageCommand.cxx +++ b/Source/cmFindPackageCommand.cxx @@ -2350,7 +2350,11 @@ bool cmFindPackageCommand::SearchPrefix(std::string const& prefix_in) common.emplace_back("libx32"); } common.emplace_back("lib"); +#ifdef __HAIKU__ + common.emplace_back("data"); +#else common.emplace_back("share"); +#endif // PREFIX/(lib/ARCH|lib*|share)/cmake/(Foo|foo|FOO).*/ { -- 2.35.1 From 9c5b409d2b04b72271a360e4c555d2bf09749491 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Wed, 23 Feb 2022 13:44:06 +0100 Subject: Disable weak symbols; they do not seem to behave correctly. diff --git a/Utilities/cmzstd/lib/common/zstd_trace.h b/Utilities/cmzstd/lib/common/zstd_trace.h index 485cadf..95dc81b 100644 --- a/Utilities/cmzstd/lib/common/zstd_trace.h +++ b/Utilities/cmzstd/lib/common/zstd_trace.h @@ -20,7 +20,7 @@ extern "C" { /* weak symbol support */ #if !defined(ZSTD_HAVE_WEAK_SYMBOLS) && defined(__GNUC__) && \ !defined(__APPLE__) && !defined(_WIN32) && !defined(__MINGW32__) && \ - !defined(__CYGWIN__) && !defined(_AIX) + !defined(__CYGWIN__) && !defined(_AIX) && !defined(__HAIKU__) # define ZSTD_HAVE_WEAK_SYMBOLS 1 #else # define ZSTD_HAVE_WEAK_SYMBOLS 0 -- 2.35.1