mirror of
https://github.com/moonlight-stream/moonlight-ios.git
synced 2025-07-01 15:26:11 +00:00
105 lines
2.6 KiB
Bash
Executable File
105 lines
2.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
SYSROOT_iPHONE="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk"
|
|
SYSROOT_SIMULATOR="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk"
|
|
CC_IPHONE="xcrun -sdk iphoneos clang"
|
|
CC_SIMULATOR="xcrun -sdk iphonesimulator clang"
|
|
function build_one {
|
|
./configure \
|
|
--prefix=$PREFIX \
|
|
--disable-ffmpeg \
|
|
--disable-ffplay \
|
|
--disable-ffprobe \
|
|
--disable-ffserver \
|
|
--disable-armv5te \
|
|
--disable-armv6 \
|
|
--disable-doc \
|
|
--disable-everything \
|
|
--disable-debug \
|
|
--enable-decoder=h264 \
|
|
--enable-avresample \
|
|
--enable-cross-compile \
|
|
--sysroot=$SYSROOT \
|
|
--target-os=darwin \
|
|
--cc="$CC" \
|
|
--extra-cflags="$CFLAGS" \
|
|
--extra-ldflags="$LDFLAGS" \
|
|
--enable-pic \
|
|
$ADDI_FLAGS
|
|
make clean && make -j4 && make install
|
|
}
|
|
|
|
|
|
# armv7
|
|
function build_armv7 {
|
|
PREFIX="armv7"
|
|
SYSROOT=$SYSROOT_iPHONE
|
|
CC=$CC_IPHONE
|
|
CFLAGS="-arch armv7 -mfpu=neon -miphoneos-version-min=7.1 -fpic"
|
|
LDFLAGS="-arch armv7 -isysroot $SYSROOT_iPHONE -miphoneos-version-min=7.1"
|
|
ADDI_FLAGS="--arch=arm --cpu=cortex-a9"
|
|
build_one
|
|
}
|
|
|
|
# armv7s
|
|
function build_armv7s {
|
|
PREFIX="armv7s"
|
|
SYSROOT=$SYSROOT_iPHONE
|
|
CC=$CC_IPHONE
|
|
CFLAGS="-arch armv7s -mfpu=neon -miphoneos-version-min=7.1"
|
|
LDFLAGS="-arch armv7s -isysroot $SYSROOT_iPHONE -miphoneos-version-min=7.1"
|
|
ADDI_FLAGS="--arch=arm --cpu=cortex-a9"
|
|
build_one
|
|
}
|
|
|
|
# i386
|
|
function build_i386 {
|
|
PREFIX="i386"
|
|
SYSROOT=$SYSROOT_SIMULATOR
|
|
CC=$CC_SIMULATOR
|
|
CFLAGS="-arch i386"
|
|
LDFLAGS="-arch i386 -isysroot $SYSROOT_SIMULATOR -mios-simulator-version-min=7.1"
|
|
ADDI_FLAGS="--arch=i386 --cpu=i386 --disable-asm"
|
|
build_one
|
|
}
|
|
|
|
|
|
# create fat library
|
|
function build_universal {
|
|
cd armv7/lib
|
|
for file in *.a
|
|
do
|
|
cd ../..
|
|
xcrun -sdk iphoneos lipo -output universal/lib/$file -create \
|
|
-arch armv7 armv7/lib/$file \
|
|
-arch armv7s armv7s/lib/$file \
|
|
-arch i386 i386/lib/$file
|
|
echo "Universal $file created."
|
|
cd -
|
|
done
|
|
cd ../..
|
|
}
|
|
|
|
echo "FFmpeg directory?"
|
|
read SOURCE
|
|
|
|
cd $SOURCE
|
|
|
|
if [ "$1" = "clean" ]
|
|
then
|
|
rm -r armv7 armv7s i386 universal
|
|
make clean
|
|
exit 0
|
|
fi
|
|
mkdir armv7
|
|
mkdir armv7s
|
|
mkdir i386
|
|
mkdir -p universal/lib
|
|
|
|
build_armv7
|
|
build_armv7s
|
|
build_i386
|
|
build_universal
|
|
echo "Ouput files in $SOURCE/armv7 $SOURCE/armv7s $SOURCE/i386 $SOURCE/universal"
|
|
|