mirror of
https://github.com/yann64/haikuports.git
synced 2026-05-05 14:38:51 +02:00
83 lines
2.8 KiB
Plaintext
83 lines
2.8 KiB
Plaintext
From 3922d6f415fbfa9154d36bef777fc78e29c11a08 Mon Sep 17 00:00:00 2001
|
|
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
|
Date: Mon, 20 Nov 2017 22:44:37 +1000
|
|
Subject: Fix build for Haiku
|
|
|
|
|
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index 641c144..5a5a12b 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -231,6 +231,14 @@ if (UNIX)
|
|
endif(UNIX)
|
|
|
|
# Add security (hardening flags)
|
|
+IF (HAIKU)
|
|
+ SET(SEC_COMP_FLAGS "-D_FORTIFY_SOURCE=2 -Wcast-align -fPIE -Wa,--noexecstack")
|
|
+ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SEC_COMP_FLAGS}")
|
|
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SEC_COMP_FLAGS}")
|
|
+ SET(SEC_LINK_FLAGS "-Wl,-z,nodump -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -pie")
|
|
+ SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${SEC_LINK_FLAGS}")
|
|
+ SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${SEC_LINK_FLAGS}")
|
|
+ELSE ()
|
|
IF (UNIX OR APPLE OR ANDROID)
|
|
SET(SEC_COMP_FLAGS "-D_FORTIFY_SOURCE=2 -fstack-protector-all -Wcast-align -fPIE")
|
|
IF (NOT ANDROID AND NOT CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND NOT APPLE)
|
|
@@ -248,6 +256,7 @@ IF (UNIX OR APPLE OR ANDROID)
|
|
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${SEC_LINK_FLAGS}")
|
|
SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${SEC_LINK_FLAGS}")
|
|
ENDIF ()
|
|
+ENDIF ()
|
|
|
|
# Clang Format support
|
|
IF (UNIX OR APPLE)
|
|
@@ -358,7 +367,9 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/kstars/version.h.cmake
|
|
# let our config.h be found first in any case
|
|
include_directories (BEFORE ${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
+IF (NOT HAIKU)
|
|
add_subdirectory(doc)
|
|
+ENDIF()
|
|
add_subdirectory(kstars)
|
|
add_subdirectory(datahandlers)
|
|
|
|
@@ -371,7 +382,9 @@ IF (NOT ANDROID)
|
|
ki18n_install("${CMAKE_CURRENT_BINARY_DIR}/po")
|
|
ENDIF ()
|
|
|
|
+IF (NOT HAIKU)
|
|
install(FILES org.kde.kstars.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR})
|
|
+ENDIF()
|
|
|
|
feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
|
|
|
diff --git a/kstars/htmesh/SkipListElement.h b/kstars/htmesh/SkipListElement.h
|
|
index f8187e4..a14cd7d 100644
|
|
--- a/kstars/htmesh/SkipListElement.h
|
|
+++ b/kstars/htmesh/SkipListElement.h
|
|
@@ -20,7 +20,7 @@
|
|
#define KEY_MAX _I64_MAX
|
|
#else
|
|
#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || \
|
|
- (defined(__SUNPRO_CC) && defined(__sun)) || defined(__APPLE__)
|
|
+ (defined(__SUNPRO_CC) && defined(__sun)) || defined(__APPLE__) || defined(__HAIKU__)
|
|
#define KEY_MAX LLONG_MAX
|
|
#else
|
|
#define KEY_MAX LONG_LONG_MAX
|
|
diff --git a/kstars/htmesh/SpatialGeneral.h b/kstars/htmesh/SpatialGeneral.h
|
|
index 450119e..4c822d0 100644
|
|
--- a/kstars/htmesh/SpatialGeneral.h
|
|
+++ b/kstars/htmesh/SpatialGeneral.h
|
|
@@ -101,7 +101,7 @@ const float64 gEpsilon = 1.0E-15;
|
|
// standard explicit template instantiation, define.
|
|
//
|
|
|
|
-#if defined(__APPLE__)
|
|
+#if defined(__APPLE__) || defined(__HAIKU__)
|
|
#define LINKAGE
|
|
#endif
|
|
|
|
--
|
|
2.15.0
|
|
|