mirror of
https://github.com/Relintai/osxcross.git
synced 2025-02-03 22:45:56 +01:00
more portable way to find the llvm lto.h header
should now support llvm 3.2-3.5
This commit is contained in:
parent
339712ba21
commit
2c0cb38fbe
5
build.sh
5
build.sh
@ -108,8 +108,10 @@ pushd cctools*
|
||||
patch -p0 < $PATCH_DIR/cctools-ld64-1.patch
|
||||
patch -p0 < $PATCH_DIR/cctools-ld64-2.patch
|
||||
patch -p0 < $PATCH_DIR/cctools-ld64-3.patch
|
||||
patch -p0 < $PATCH_DIR/cctools-llvm-3.4.patch
|
||||
patch -p0 < $PATCH_DIR/cctools-conf-1.patch
|
||||
patch -p0 < $PATCH_DIR/cctools-llvm-lto.patch
|
||||
CF=$CFLAGS CXXF=$CXXFLAGS LF=$LDFLAGS
|
||||
eval `$BASE_DIR/oclang/find_lto_header.sh`
|
||||
set +e
|
||||
grep -n "__block," /usr/include/unistd.h &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
@ -121,6 +123,7 @@ set -e
|
||||
./configure --prefix=$TARGET_DIR --target=x86_64-apple-$TARGET
|
||||
make -j$JOBS
|
||||
make install -j$JOBS
|
||||
export CFLAGS=$CF CXXFLAGS=$CXXF LDFLAGS=$LF
|
||||
|
||||
pushd $TARGET_DIR/bin
|
||||
CCTOOLS=`find . -name "x86_64-apple-darwin*"`
|
||||
|
27
oclang/find_lto_header.sh
Executable file
27
oclang/find_lto_header.sh
Executable file
@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
function try()
|
||||
{
|
||||
LLVM_CONFIG="llvm-config$1"
|
||||
which $LLVM_CONFIG &>/dev/null
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
set -e
|
||||
LLVM_INC_DIR=`$LLVM_CONFIG --includedir`
|
||||
LLVM_LIB_DIR=`$LLVM_CONFIG --libdir`
|
||||
ln -sf "$LLVM_INC_DIR/llvm-c/lto.h" "include/llvm-c/lto.h"
|
||||
echo -n "export LDFLAGS+=\" -L$LLVM_LIB_DIR -lLTO \" "
|
||||
echo -n "export CFLAGS+=\" -DLTO_SUPPORT=1 \" "
|
||||
echo -n "export CXXFLAGS+=\" -DLTO_SUPPORT=1 \""
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
try ""
|
||||
try "-3.2"
|
||||
try "-3.3"
|
||||
try "-3.4"
|
||||
try "-3.5"
|
||||
|
||||
echo "echo \"can not find lto.h - make sure llvm-devel is installed on your system\""
|
||||
exit 1
|
@ -1,21 +0,0 @@
|
||||
--- configure.ac 2013-09-23 14:13:38.000000000 +0200
|
||||
+++ configure.ac 2013-10-23 21:30:12.000000000 +0200
|
||||
@@ -205,13 +205,13 @@
|
||||
AC_CHECK_PROG(HAVE_LLVM_CONFIG, llvm-config, true, false)
|
||||
|
||||
if test "x$HAVE_LLVM_CONFIG" = "xfalse"; then
|
||||
- AC_CHECK_PROG(HAVE_LLVM_CONFIG_32, llvm-config-3.2, true, false)
|
||||
- if test "x$HAVE_LLVM_CONFIG_32" = "xfalse"; then
|
||||
- AC_MSG_ERROR([llvm-config or llvm-config-3.2 not found on your system,please install related packages])
|
||||
+ AC_CHECK_PROG(HAVE_LLVM_CONFIG_34, llvm-config-3.4, true, false)
|
||||
+ if test "x$HAVE_LLVM_CONFIG_34" = "xfalse"; then
|
||||
+ AC_MSG_ERROR([llvm-config or llvm-config-3.4 not found on your system,please install related packages])
|
||||
else
|
||||
- LLVM_LIBDIR=`llvm-config-3.2 --libdir`
|
||||
+ LLVM_LIBDIR=`llvm-config-3.4 --libdir`
|
||||
if test -f $LLVM_LIBDIR/libLTO.so;then
|
||||
- LTO_LIBS="-L`llvm-config-3.2 --libdir` -lLTO"
|
||||
+ LTO_LIBS="-L`llvm-config-3.4 --libdir` -lLTO"
|
||||
LTO_DEFS="-DLTO_SUPPORT=1"
|
||||
fi
|
||||
fi
|
40
patches/cctools-llvm-lto.patch
Normal file
40
patches/cctools-llvm-lto.patch
Normal file
@ -0,0 +1,40 @@
|
||||
--- configure.ac 2013-12-01 21:31:58.462322949 +0100
|
||||
+++ configure.ac 2013-12-01 21:30:38.670319304 +0100
|
||||
@@ -35,7 +35,6 @@
|
||||
AC_CHECK_TOOL([HOST_RANLIB], [ranlib], :)
|
||||
AC_CHECK_TOOL([HOST_AR], [ar], :)
|
||||
|
||||
-AC_CHECK_HEADERS([llvm-c/lto.h], [], [AC_MSG_ERROR([*** lto.h not found, Please install llvm dev packages according to your system])])
|
||||
AC_CHECK_HEADERS([openssl/md5.h], [], [AC_MSG_ERROR([*** md5.h not found, Please install ssl dev packages according to your system])])
|
||||
AC_CHECK_HEADERS([uuid/uuid.h], [], [AC_MSG_ERROR([*** uuid.h not found, Please install uuid dev packages according to your system])])
|
||||
|
||||
@@ -189,29 +188,6 @@
|
||||
AC_C_BIGENDIAN([AC_SUBST([ENDIAN_FLAG],[-D__BIG_ENDIAN__=1])],
|
||||
[AC_SUBST([ENDIAN_FLAG],[-D__LITTLE_ENDIAN__=1])])
|
||||
|
||||
-# Check LTO
|
||||
-AC_CHECK_PROG(HAVE_LLVM_CONFIG, llvm-config, true, false)
|
||||
-
|
||||
-if test "x$HAVE_LLVM_CONFIG" = "xfalse"; then
|
||||
- AC_CHECK_PROG(HAVE_LLVM_CONFIG_32, llvm-config-3.2, true, false)
|
||||
- if test "x$HAVE_LLVM_CONFIG_32" = "xfalse"; then
|
||||
- AC_MSG_ERROR([llvm-config or llvm-config-3.2 not found on your system,please install related packages])
|
||||
- else
|
||||
- LLVM_LIBDIR=`llvm-config-3.2 --libdir`
|
||||
- if test -f $LLVM_LIBDIR/libLTO.so;then
|
||||
- LTO_LIBS="-L`llvm-config-3.2 --libdir` -lLTO"
|
||||
- LTO_DEFS="-DLTO_SUPPORT=1"
|
||||
- fi
|
||||
- fi
|
||||
-else
|
||||
- LLVM_LIBDIR=`llvm-config --libdir`
|
||||
- if test -f $LLVM_LIBDIR/libLTO.so;then
|
||||
- LTO_LIBS="-L`llvm-config --libdir` -lLTO"
|
||||
- LTO_DEFS="-DLTO_SUPPORT=1"
|
||||
- fi
|
||||
-fi
|
||||
-
|
||||
-
|
||||
AC_SUBST(LTO_LIBS)
|
||||
AC_SUBST(LTO_DEFS)
|
||||
|
Loading…
Reference in New Issue
Block a user