Commit 0beff516 authored by Felix Paul Kühne's avatar Felix Paul Kühne

Add build script

parent 9c77f505
#!/bin/sh
# Copyright (C) Pierre d'Herbemont, 2010
# Copyright (C) Felix Paul Kühne, 2012-2013
set -e
PLATFORM=OS
SDK=iphoneos6.1
SDK_MIN=5.1
VERBOSE=no
CONFIGURATION="Release"
usage()
{
cat << EOF
usage: $0 [-s] [-v] [-k sdk]
OPTIONS
-k Specify which sdk to use (see 'xcodebuild -showsdks', current: ${SDK})
-v Be more verbose
-s Build for simulator
-d Enable Debug
EOF
}
spushd()
{
pushd "$1" 2>&1> /dev/null
}
spopd()
{
popd 2>&1> /dev/null
}
info()
{
local green="\033[1;32m"
local normal="\033[0m"
echo "[${green}info${normal}] $1"
}
buildxcodeproj()
{
local target="$2"
if [ "x$target" = "x" ]; then
target="$1"
fi
info "Building $1 ($target, ${CONFIGURATION})"
local extra=""
if [ "$PLATFORM" = "Simulator" ]; then
extra="ARCHS=i386"
fi
xcodebuild -project "$1.xcodeproj" \
-target "$target" \
-sdk $SDK \
-configuration ${CONFIGURATION} ${extra} \
IPHONEOS_DEPLOYMENT_TARGET=${SDK_MIN} > ${out}
}
while getopts "hvsdk:" OPTION
do
case $OPTION in
h)
usage
exit 1
;;
v)
VERBOSE=yes
;;
s)
PLATFORM=Simulator
SDK=iphonesimulator6.1
;;
d) CONFIGURATION="Debug"
;;
k)
SDK=$OPTARG
;;
?)
usage
exit 1
;;
esac
done
shift $(($OPTIND - 1))
out="/dev/null"
if [ "$VERBOSE" = "yes" ]; then
out="/dev/stdout"
fi
if [ "x$1" != "x" ]; then
usage
exit 1
fi
# Get root dir
spushd .
aspen_root_dir=`pwd`
spopd
info "Preparing build dirs"
mkdir -p ImportedSources
spushd ImportedSources
if ! [ -e vlc ]; then
git clone git://git.videolan.org/vlc.git
info "Applying patches to vlc.git"
cd vlc
git am ../../patches/*.patch
if [ $? -ne 0 ]; then
git am --abort
info "Applying the patches failed, aborting git-am"
exit 1
fi
cd ..
fi
if ! [ -e MediaLibraryKit ]; then
git clone git://git.videolan.org/MediaLibraryKit.git
fi
if ! [ -e VLCKit ]; then
git clone git://git.videolan.org/vlc-bindings/VLCKit.git
#info "Applying patches to VLCKit.git"
#cd VLCKit
#git am ../../patches/vlckit/*.patch
#if [ $? -ne 0 ]; then
#git am --abort
#info "Applying the patches failed, aborting git-am"
#exit 1
#fi
#cd ..
fi
if ! [ -e OBSlider ]; then
git clone git://github.com/sylverb/OBSlider.git
info "Applying patches to OBSlider.git"
cd OBSlider
git am ../../patches/obslider/*.patch
if [ $? -ne 0 ]; then
git am --abort
info "Applying the patches failed, aborting git-am"
exit 1
fi
cd ..
fi
info "Setup 'External' folders"
if [ "$PLATFORM" = "Simulator" ]; then
xcbuilddir="build/Release-iphonesimulator"
else
xcbuilddir="build/Release-iphoneos"
fi
framework_build="${aspen_root_dir}/ImportedSources/VLCKit/${xcbuilddir}"
mlkit_build="${aspen_root_dir}/ImportedSources/MediaLibraryKit/${xcbuilddir}"
spushd MediaLibraryKit
rm -f External/MobileVLCKit
ln -sf ${framework_build} External/MobileVLCKit
spopd
spopd #ImportedSources
rm -f External/MobileVLCKit
rm -f External/MediaLibraryKit
ln -sf ${framework_build} External/MobileVLCKit
ln -sf ${mlkit_build} External/MediaLibraryKit
#
# Build time
#
info "Building"
spushd ImportedSources
spushd vlc/extras/package/ios
info "Building vlc"
args=""
if [ "$PLATFORM" = "Simulator" ]; then
args="${args} -s"
fi
if [ "$VERBOSE" = "yes" ]; then
args="${args} -v"
fi
./build.sh ${args} -k "${SDK}"
spopd
spushd VLCKit
buildxcodeproj MobileVLCKit "Aggregate static plugins"
buildxcodeproj MobileVLCKit "MobileVLCKit"
spopd
spushd MediaLibraryKit
buildxcodeproj MobileMediaLibraryKit
spopd
spopd # ImportedSources
# Build the Aspen Project now
buildxcodeproj AspenProject
info "Build completed"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment