mirror of
https://github.com/Relintai/osxcross.git
synced 2025-02-03 22:45:56 +01:00
help clang to find its own intrinsic headers (this issue appears to be fixed in clang 3.4+)
bump version to 0.5
This commit is contained in:
parent
d957737e0f
commit
65944f3394
@ -1,3 +1,6 @@
|
|||||||
|
0.5:
|
||||||
|
- fixed: help clang to find its own intrinsic headers (this issue appears to be fixed in clang 3.4+)
|
||||||
|
|
||||||
0.4:
|
0.4:
|
||||||
- added: gcc support
|
- added: gcc support
|
||||||
- added: a workaround for buggish unistd.h headers, no more need to edit /usr/include/unistd.h
|
- added: a workaround for buggish unistd.h headers, no more need to edit /usr/include/unistd.h
|
||||||
|
5
build.sh
5
build.sh
@ -1,5 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
pushd "${0%/*}" &>/dev/null
|
||||||
|
|
||||||
export LC_ALL="C"
|
export LC_ALL="C"
|
||||||
export CC=clang
|
export CC=clang
|
||||||
export CXX=clang++
|
export CXX=clang++
|
||||||
@ -20,7 +22,7 @@ OSX_VERSION_MIN=10.5
|
|||||||
LINKER_VERSION=134.9
|
LINKER_VERSION=134.9
|
||||||
|
|
||||||
# Don't change this
|
# Don't change this
|
||||||
OSXCROSS_VERSION=0.4
|
OSXCROSS_VERSION=0.5
|
||||||
|
|
||||||
function require
|
function require
|
||||||
{
|
{
|
||||||
@ -199,6 +201,7 @@ mv -f SDKs/*$SDK_VERSION* $SDK_DIR
|
|||||||
pushd $SDK_DIR/MacOSX$SDK_VERSION.sdk
|
pushd $SDK_DIR/MacOSX$SDK_VERSION.sdk
|
||||||
set +e
|
set +e
|
||||||
ln -s $SDK_DIR/MacOSX$SDK_VERSION.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/std*.h usr/include 2>/dev/null
|
ln -s $SDK_DIR/MacOSX$SDK_VERSION.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/std*.h usr/include 2>/dev/null
|
||||||
|
$BASE_DIR/oclang/find_intrinsic_headers.sh $SDK_DIR/MacOSX$SDK_VERSION.sdk
|
||||||
set -e
|
set -e
|
||||||
popd
|
popd
|
||||||
|
|
||||||
|
32
oclang/find_intrinsic_headers.sh
Executable file
32
oclang/find_intrinsic_headers.sh
Executable file
@ -0,0 +1,32 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# help clang to find its own intrinsic headers
|
||||||
|
# this issue appears to be fixed in 3.4+
|
||||||
|
|
||||||
|
pushd "${0%/*}" &>/dev/null
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
SDK_DIR="$1"
|
||||||
|
|
||||||
|
test -n "$SDK_DIR" || { echo "no SDK directory given" && exit 1; }
|
||||||
|
test -e "$SDK_DIR" || { echo "$SDK_DIR does not exist" && exit 1; }
|
||||||
|
|
||||||
|
CLANG_VERSION=`echo "int main(){printf(\"%d.%d\",__clang_major__,__clang_minor__);return 0;}" | clang -xc -ansi -otest - 2>/dev/null && ./test && rm test`
|
||||||
|
CLANG_DIR=`dirname \`which clang\``
|
||||||
|
|
||||||
|
CLANG_INTRIN_DIR="$CLANG_DIR/../include/clang/$CLANG_VERSION/include"
|
||||||
|
|
||||||
|
test ! -e "$CLANG_INTRIN_DIR" && CLANG_INTRIN_DIR="$CLANG_DIR/../lib/clang/$CLANG_VERSION/include"
|
||||||
|
|
||||||
|
test -e "$CLANG_INTRIN_DIR" || { echo "can not find clang intrinsics directory" && exit 1; }
|
||||||
|
test -f "$CLANG_INTRIN_DIR/xmmintrin.h" || { echo "xmmintrin.h does not exist in $CLANG_INTRIN_DIR" && exit 1; }
|
||||||
|
|
||||||
|
echo "found clang intrinsic headers: $CLANG_INTRIN_DIR"
|
||||||
|
|
||||||
|
ln -sf $CLANG_INTRIN_DIR/float.h $SDK_DIR/usr/include
|
||||||
|
ln -sf $CLANG_INTRIN_DIR/*intrin*.h $SDK_DIR/usr/include
|
||||||
|
ln -sf $CLANG_INTRIN_DIR/mm*.h $SDK_DIR/usr/include
|
||||||
|
ln -sf $CLANG_INTRIN_DIR/*va*.h $SDK_DIR/usr/include
|
||||||
|
ln -sf $CLANG_INTRIN_DIR/*cpu*.h $SDK_DIR/usr/include
|
||||||
|
ln -sf $CLANG_INTRIN_DIR/*math*.h $SDK_DIR/usr/include
|
||||||
|
ln -sf $CLANG_INTRIN_DIR/*iso*.h $SDK_DIR/usr/include
|
@ -36,6 +36,12 @@ CPLUSINC2=$OSXCROSS_SDK/usr/include/c++/4.0.0
|
|||||||
CPLUSINC3=$OSXCROSS_SDK/usr/include/c++/4.0.0/$ARCH2-apple-darwin9
|
CPLUSINC3=$OSXCROSS_SDK/usr/include/c++/4.0.0/$ARCH2-apple-darwin9
|
||||||
TARGET=$ARCH1-apple-$OSXCROSS_TARGET
|
TARGET=$ARCH1-apple-$OSXCROSS_TARGET
|
||||||
|
|
||||||
|
XMMINTRIN=`readlink "$STDINC/xmmintrin.h"`
|
||||||
|
if [ $? -eq 0 ] && [ ! -f "$XMMINTRIN" ]; then
|
||||||
|
echo "oclang error: dead intrinsic link found - please re-run ./build.sh" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
$COMPILER $OSXCROSS_TARGET_OPTION $TARGET -isysroot $OSXCROSS_SDK \
|
$COMPILER $OSXCROSS_TARGET_OPTION $TARGET -isysroot $OSXCROSS_SDK \
|
||||||
-isystem $STDINC -isystem $CPLUSINC1 -isystem $CPLUSINC2 -isystem $CPLUSINC3 \
|
-isystem $STDINC -isystem $CPLUSINC1 -isystem $CPLUSINC2 -isystem $CPLUSINC3 \
|
||||||
$OSX_VERSION_MIN_OPT -mlinker-version=$OSXCROSS_LINKER_VERSION $OSXCROSS_OPT_ARGS \
|
$OSX_VERSION_MIN_OPT -mlinker-version=$OSXCROSS_LINKER_VERSION $OSXCROSS_OPT_ARGS \
|
||||||
|
Loading…
Reference in New Issue
Block a user