mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-14 15:50:07 +02:00
363 lines
12 KiB
Plaintext
363 lines
12 KiB
Plaintext
From d6ee5488845a252d380cd25890136de7b54a7ce0 Mon Sep 17 00:00:00 2001
|
|
From: Alexander von Gluck IV <kallisti5@unixzen.com>
|
|
Date: Wed, 22 Jan 2014 05:04:31 +0000
|
|
Subject: haiku: fix Host.h for endian.h
|
|
|
|
|
|
diff --git a/include/llvm/Support/Host.h b/include/llvm/Support/Host.h
|
|
index 8f4bf3c..8114f9b 100644
|
|
--- a/include/llvm/Support/Host.h
|
|
+++ b/include/llvm/Support/Host.h
|
|
@@ -16,7 +16,7 @@
|
|
|
|
#include "llvm/ADT/StringMap.h"
|
|
|
|
-#if defined(__linux__) || defined(__GNU__)
|
|
+#if defined(__linux__) || defined(__GNU__) || defined(__HAIKU__)
|
|
#include <endian.h>
|
|
#else
|
|
#if !defined(BYTE_ORDER) && !defined(LLVM_ON_WIN32)
|
|
--
|
|
2.7.0
|
|
|
|
|
|
From 8974eea683319522bb0e0dafeb409224c2d00768 Mon Sep 17 00:00:00 2001
|
|
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
|
Date: Sun, 18 May 2014 12:41:16 +0200
|
|
Subject: libLTO: add soname when building on Haiku.
|
|
|
|
|
|
diff --git a/tools/lto/Makefile b/tools/lto/Makefile
|
|
index 530c05a..ffa76d2 100644
|
|
--- a/tools/lto/Makefile
|
|
+++ b/tools/lto/Makefile
|
|
@@ -17,6 +17,10 @@ EXPORTED_SYMBOL_FILE = $(PROJ_SRC_DIR)/lto.exports
|
|
|
|
include $(LEVEL)/Makefile.common
|
|
|
|
+ifeq ($(HOST_OS),Haiku)
|
|
+ LLVMLibsOptions := $(LLVMLibsOptions) -Wl,-soname=$(SharedPrefix)LTO$(SHLIBEXT)
|
|
+endif
|
|
+
|
|
ifeq ($(HOST_OS),Darwin)
|
|
# Special hack to allow libLTO to have an offset version number.
|
|
ifdef LLVM_LTO_VERSION_OFFSET
|
|
--
|
|
2.7.0
|
|
|
|
|
|
From 89aaec4cfcfd3f0f8bbc15fc81bae45b1c74b00b Mon Sep 17 00:00:00 2001
|
|
From: Jerome Duval <jerome.duval@gmail.com>
|
|
Date: Wed, 20 Jan 2016 21:13:28 +0000
|
|
Subject: llvm-config: use /develop/headers instead of /include
|
|
|
|
* don't provide obj-root and src-root.
|
|
|
|
diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
|
|
index 80f6279..8275aac 100644
|
|
--- a/tools/llvm-config/llvm-config.cpp
|
|
+++ b/tools/llvm-config/llvm-config.cpp
|
|
@@ -309,7 +309,11 @@ int main(int argc, char **argv) {
|
|
"-I" + ActiveObjRoot + "/include");
|
|
} else {
|
|
ActivePrefix = CurrentExecPrefix;
|
|
+#ifdef __HAIKU__
|
|
+ ActiveIncludeDir = ActivePrefix + "/develop/headers";
|
|
+#else
|
|
ActiveIncludeDir = ActivePrefix + "/include";
|
|
+#endif
|
|
ActiveBinDir = ActivePrefix + "/bin";
|
|
ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
|
|
ActiveIncludeOption = "-I" + ActiveIncludeDir;
|
|
@@ -497,10 +501,16 @@ int main(int argc, char **argv) {
|
|
OS << LLVM_HAS_RTTI << '\n';
|
|
} else if (Arg == "--shared-mode") {
|
|
PrintSharedMode = true;
|
|
- } else if (Arg == "--obj-root") {
|
|
- OS << ActivePrefix << '\n';
|
|
- } else if (Arg == "--src-root") {
|
|
- OS << LLVM_SRC_ROOT << '\n';
|
|
+ } else if (Arg == "--obj-root" || Arg == "--src-root") {
|
|
+ if (IsInDevelopmentTree) {
|
|
+ if (Arg == "--obj-root")
|
|
+ OS << ActivePrefix << '\n';
|
|
+ else
|
|
+ OS << LLVM_SRC_ROOT << '\n';
|
|
+ } else {
|
|
+ llvm::errs() << "llvm-config: sources not installed\n";
|
|
+ exit(1);
|
|
+ }
|
|
} else {
|
|
usage();
|
|
}
|
|
--
|
|
2.7.0
|
|
|
|
|
|
From 4e245f44390a3b549b535892d06777e9e4f1009f Mon Sep 17 00:00:00 2001
|
|
From: Jerome Duval <jerome.duval@gmail.com>
|
|
Date: Sun, 31 Jan 2016 10:23:24 +0000
|
|
Subject: patch cmake build for Haiku.
|
|
|
|
|
|
diff --git a/autoconf/config.guess b/autoconf/config.guess
|
|
index b209a1a..776ef5c 100755
|
|
--- a/autoconf/config.guess
|
|
+++ b/autoconf/config.guess
|
|
@@ -2,13 +2,13 @@
|
|
# Attempt to guess a canonical system name.
|
|
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
|
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
|
-# 2011 Free Software Foundation, Inc.
|
|
+# 2011, 2012, 2013 Free Software Foundation, Inc.
|
|
|
|
-timestamp='2011-08-20'
|
|
+timestamp='2012-12-29'
|
|
|
|
# This file is free software; you can redistribute it and/or modify it
|
|
# under the terms of the GNU General Public License as published by
|
|
-# the Free Software Foundation; either version 2 of the License, or
|
|
+# the Free Software Foundation; either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful, but
|
|
@@ -17,26 +17,22 @@ timestamp='2011-08-20'
|
|
# General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
-# along with this program; if not, write to the Free Software
|
|
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
|
|
-# 02110-1301, USA.
|
|
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
# As a special exception to the GNU General Public License, if you
|
|
# distribute this file as part of a program that contains a
|
|
# configuration script generated by Autoconf, you may include it under
|
|
-# the same distribution terms that you use for the rest of that program.
|
|
-
|
|
-
|
|
-# Originally written by Per Bothner. Please send patches (context
|
|
-# diff format) to <config-patches@gnu.org> and include a ChangeLog
|
|
-# entry.
|
|
+# the same distribution terms that you use for the rest of that
|
|
+# program. This Exception is an additional permission under section 7
|
|
+# of the GNU General Public License, version 3 ("GPLv3").
|
|
#
|
|
-# This script attempts to guess a canonical system name similar to
|
|
-# config.sub. If it succeeds, it prints the system name on stdout, and
|
|
-# exits with 0. Otherwise, it exits with 1.
|
|
+# Originally written by Per Bothner.
|
|
#
|
|
# You can get the latest version of this script from:
|
|
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
|
|
+#
|
|
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
|
|
+
|
|
|
|
me=`echo "$0" | sed -e 's,.*/,,'`
|
|
|
|
@@ -57,8 +53,8 @@ GNU config.guess ($timestamp)
|
|
|
|
Originally written by Per Bothner.
|
|
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
|
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free
|
|
-Software Foundation, Inc.
|
|
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
|
|
+2012, 2013 Free Software Foundation, Inc.
|
|
|
|
This is free software; see the source for copying conditions. There is NO
|
|
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
|
|
@@ -145,7 +141,7 @@ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
|
|
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|
*:NetBSD:*:*)
|
|
# NetBSD (nbsd) targets should (where applicable) match one or
|
|
- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
|
|
+ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
|
|
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
|
|
# switched to ELF, *-*-netbsd* would select the old
|
|
# object file format. This provides both forward
|
|
@@ -202,14 +198,14 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
|
|
echo "${machine}-${os}${release}"
|
|
exit ;;
|
|
- *:OpenBSD:*:*)
|
|
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
|
|
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
|
|
- exit ;;
|
|
*:Bitrig:*:*)
|
|
UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
|
|
echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
|
|
exit ;;
|
|
+ *:OpenBSD:*:*)
|
|
+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
|
|
+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
|
|
+ exit ;;
|
|
*:ekkoBSD:*:*)
|
|
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
|
|
exit ;;
|
|
@@ -308,7 +304,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
|
|
echo arm-acorn-riscix${UNAME_RELEASE}
|
|
exit ;;
|
|
- arm:riscos:*:*|arm:RISCOS:*:*)
|
|
+ arm*:riscos:*:*|arm*:RISCOS:*:*)
|
|
echo arm-unknown-riscos
|
|
exit ;;
|
|
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
|
|
@@ -807,10 +803,13 @@ EOF
|
|
i*:CYGWIN*:*)
|
|
echo ${UNAME_MACHINE}-pc-cygwin
|
|
exit ;;
|
|
+ *:MINGW64*:*)
|
|
+ echo ${UNAME_MACHINE}-pc-mingw64
|
|
+ exit ;;
|
|
*:MINGW*:*)
|
|
echo ${UNAME_MACHINE}-pc-mingw32
|
|
exit ;;
|
|
- *:MSYS*:*)
|
|
+ i*:MSYS*:*)
|
|
echo ${UNAME_MACHINE}-pc-msys
|
|
exit ;;
|
|
i*:windows32*:*)
|
|
@@ -867,8 +866,12 @@ EOF
|
|
i*86:Minix:*:*)
|
|
echo ${UNAME_MACHINE}-pc-minix
|
|
exit ;;
|
|
- aarch64*:Linux:*)
|
|
- echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
+ aarch64:Linux:*:*)
|
|
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
+ exit ;;
|
|
+ aarch64_be:Linux:*:*)
|
|
+ UNAME_MACHINE=aarch64_be
|
|
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
exit ;;
|
|
alpha:Linux:*:*)
|
|
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
|
|
@@ -904,13 +907,16 @@ EOF
|
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
exit ;;
|
|
cris:Linux:*:*)
|
|
- echo cris-axis-linux-gnu
|
|
+ echo ${UNAME_MACHINE}-axis-linux-gnu
|
|
exit ;;
|
|
crisv32:Linux:*:*)
|
|
- echo crisv32-axis-linux-gnu
|
|
+ echo ${UNAME_MACHINE}-axis-linux-gnu
|
|
exit ;;
|
|
frv:Linux:*:*)
|
|
- echo frv-unknown-linux-gnu
|
|
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
+ exit ;;
|
|
+ hexagon:Linux:*:*)
|
|
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
exit ;;
|
|
i*86:Linux:*:*)
|
|
LIBC=gnu
|
|
@@ -952,7 +958,7 @@ EOF
|
|
test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
|
|
;;
|
|
or32:Linux:*:*)
|
|
- echo or32-unknown-linux-gnu
|
|
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
exit ;;
|
|
padre:Linux:*:*)
|
|
echo sparc-unknown-linux-gnu
|
|
@@ -971,9 +977,6 @@ EOF
|
|
ppc64:Linux:*:*)
|
|
echo powerpc64-unknown-linux-gnu
|
|
exit ;;
|
|
- ppc64le:Linux:*:*)
|
|
- echo powerpc64le-unknown-linux-gnu
|
|
- exit ;;
|
|
ppc:Linux:*:*)
|
|
echo powerpc-unknown-linux-gnu
|
|
exit ;;
|
|
@@ -996,7 +999,7 @@ EOF
|
|
echo ${UNAME_MACHINE}-dec-linux-gnu
|
|
exit ;;
|
|
x86_64:Linux:*:*)
|
|
- echo x86_64-unknown-linux-gnu
|
|
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
exit ;;
|
|
xtensa*:Linux:*:*)
|
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
|
@@ -1203,6 +1206,9 @@ EOF
|
|
BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
|
|
echo i586-pc-haiku
|
|
exit ;;
|
|
+ x86_64:Haiku:*:*)
|
|
+ echo x86_64-unknown-haiku
|
|
+ exit ;;
|
|
SX-4:SUPER-UX:*:*)
|
|
echo sx4-nec-superux${UNAME_RELEASE}
|
|
exit ;;
|
|
@@ -1258,7 +1264,7 @@ EOF
|
|
NEO-?:NONSTOP_KERNEL:*:*)
|
|
echo neo-tandem-nsk${UNAME_RELEASE}
|
|
exit ;;
|
|
- NSE-?:NONSTOP_KERNEL:*:*)
|
|
+ NSE-*:NONSTOP_KERNEL:*:*)
|
|
echo nse-tandem-nsk${UNAME_RELEASE}
|
|
exit ;;
|
|
NSR-?:NONSTOP_KERNEL:*:*)
|
|
@@ -1327,11 +1333,11 @@ EOF
|
|
i*86:AROS:*:*)
|
|
echo ${UNAME_MACHINE}-pc-aros
|
|
exit ;;
|
|
+ x86_64:VMkernel:*:*)
|
|
+ echo ${UNAME_MACHINE}-unknown-esx
|
|
+ exit ;;
|
|
esac
|
|
|
|
-#echo '(No uname command or uname output not recognized.)' 1>&2
|
|
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
|
|
-
|
|
eval $set_cc_for_build
|
|
cat >$dummy.c <<EOF
|
|
#ifdef _SEQUENT_
|
|
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake
|
|
index f699211..c5be442 100755
|
|
--- a/cmake/config-ix.cmake
|
|
+++ b/cmake/config-ix.cmake
|
|
@@ -13,7 +13,7 @@ include(TestBigEndian)
|
|
|
|
include(HandleLLVMStdlib)
|
|
|
|
-if( UNIX AND NOT BEOS )
|
|
+if( UNIX AND NOT (BEOS OR HAIKU) )
|
|
# Used by check_symbol_exists:
|
|
set(CMAKE_REQUIRED_LIBRARIES m)
|
|
endif()
|
|
diff --git a/cmake/modules/CheckAtomic.cmake b/cmake/modules/CheckAtomic.cmake
|
|
index 551de6a..d43fd7b 100644
|
|
--- a/cmake/modules/CheckAtomic.cmake
|
|
+++ b/cmake/modules/CheckAtomic.cmake
|
|
@@ -32,8 +32,6 @@ if (LLVM_COMPILER_IS_GCC_COMPATIBLE)
|
|
if (NOT HAVE_CXX_ATOMICS_WITH_LIB)
|
|
message(FATAL_ERROR "Host compiler must support std::atomic!")
|
|
endif()
|
|
- else()
|
|
- message(FATAL_ERROR "Host compiler appears to require libatomic, but cannot find it.")
|
|
endif()
|
|
endif()
|
|
endif()
|
|
diff --git a/lib/Support/CMakeLists.txt b/lib/Support/CMakeLists.txt
|
|
index 75b3e89..db5c555 100644
|
|
--- a/lib/Support/CMakeLists.txt
|
|
+++ b/lib/Support/CMakeLists.txt
|
|
@@ -24,7 +24,9 @@ if( NOT MSVC )
|
|
if ( LLVM_ENABLE_ZLIB AND HAVE_LIBZ )
|
|
set(system_libs ${system_libs} z)
|
|
endif()
|
|
- set(system_libs ${system_libs} m)
|
|
+ if( UNIX AND NOT (BEOS OR HAIKU) )
|
|
+ set(system_libs ${system_libs} m)
|
|
+ endif()
|
|
endif( MINGW )
|
|
endif( NOT MSVC )
|
|
|
|
--
|
|
2.7.0
|
|
|