Files
haikuports/media-libs/openimageio/patches/openimageio-1.7.17.patchset
2017-11-19 15:43:19 +01:00

118 lines
3.1 KiB
Plaintext

From 0d155647f10278b130cf4cd74489665177656d35 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Sun, 7 Jun 2015 22:05:26 +0000
Subject: Haiku patch
diff --git a/src/libutil/farmhash.cpp b/src/libutil/farmhash.cpp
index 256ce4d..e8baa21 100644
--- a/src/libutil/farmhash.cpp
+++ b/src/libutil/farmhash.cpp
@@ -159,6 +159,13 @@
#define bswap_64(x) bswap64(x)
#endif
+#elif defined(__HAIKU__)
+
+#undef bswap_32
+#undef bswap_64
+#define bswap_32 __builtin_bswap32
+#define bswap_64 __builtin_bswap64
+
#else
#undef bswap_32
diff --git a/src/libutil/sysutil.cpp b/src/libutil/sysutil.cpp
index 0aa25c0..c061ccc 100644
--- a/src/libutil/sysutil.cpp
+++ b/src/libutil/sysutil.cpp
@@ -77,6 +77,12 @@
# include <sys/ioctl.h>
#endif
+#if defined (__HAIKU__)
+# include <sys/types.h>
+# include <sys/resource.h>
+# include <unistd.h>
+#endif
+
#include <OpenImageIO/dassert.h>
#include <OpenImageIO/sysutil.h>
#include <OpenImageIO/strutil.h>
@@ -255,7 +261,7 @@ Sysutil::this_program_path ()
size_t cb = sizeof(filename);
int r=1;
sysctl(mib, 4, filename, &cb, NULL, 0);
-#elif defined(__GNU__) || defined(__OpenBSD__)
+#elif defined(__GNU__) || defined(__OpenBSD__) || defined(__HAIKU__)
int r = 0;
#else
// No idea what platform this is
diff --git a/src/libutil/xxhash.cpp b/src/libutil/xxhash.cpp
index b17c7f8..4b00d09 100644
--- a/src/libutil/xxhash.cpp
+++ b/src/libutil/xxhash.cpp
@@ -126,8 +126,10 @@ typedef unsigned long long U64;
#if defined(__GNUC__) && !defined(XXH_USE_UNALIGNED_ACCESS)
# define _PACKED __attribute__ ((packed))
#else
+#ifndef __HAIKU__
# define _PACKED
#endif
+#endif
#if !defined(XXH_USE_UNALIGNED_ACCESS) && !defined(__GNUC__)
# ifdef __IBMC__
diff --git a/src/make/detectplatform.mk b/src/make/detectplatform.mk
index dacdc2e..bd9ccb6 100644
--- a/src/make/detectplatform.mk
+++ b/src/make/detectplatform.mk
@@ -46,6 +46,14 @@ ifeq (${platform},unknown)
endif
endif
+ # Haiku
+ ifeq (${uname},haiku)
+ platform := haiku
+ ifeq (${hw},x86_64)
+ platform := haiku64
+ endif
+ endif
+
# Windows
ifeq (${uname},cygwin)
platform := windows
--
2.12.2
From 7fff1ebe616dee4d87698d4aac5155016f8da9ac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Wed, 21 Jun 2017 19:15:08 +0200
Subject: Search path fix
diff --git a/src/cmake/modules/FindFreetype.cmake b/src/cmake/modules/FindFreetype.cmake
index 9f3d16f..5619e3e 100644
--- a/src/cmake/modules/FindFreetype.cmake
+++ b/src/cmake/modules/FindFreetype.cmake
@@ -24,6 +24,8 @@ FIND_PATH (FREETYPE_INCLUDE_DIRS ft2build.h
/usr/local/include/freetype2/freetype
/sw/include
/opt/local/include
+ /system/develop/headers/freetype2
+ /system/develop/headers/x86/freetype2
DOC "The directory where freetype.h resides")
FIND_LIBRARY (FREETYPE_LIBRARIES
NAMES FREETYPE freetype
@@ -36,6 +38,8 @@ FIND_LIBRARY (FREETYPE_LIBRARIES
/usr/local/lib
/sw/lib
/opt/local/lib
+ /system/lib
+ /system/lib/x86
DOC "The FREETYPE library")
if (FREETYPE_INCLUDE_DIRS AND FREETYPE_LIBRARIES)
set (FREETYPE_FOUND TRUE)
--
2.12.2