ppsspp/b.sh

112 lines
2.6 KiB
Bash
Raw Normal View History

#!/bin/bash
2014-07-24 06:34:46 +00:00
CMAKE=1
# Check Blackberry NDK
BB_OS=`cat ${QNX_TARGET}/etc/qversion 2>/dev/null`
if [ ! -z "$BB_OS" ]; then
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=Blackberry/bb.toolchain.cmake -DBLACKBERRY=${BB_OS} ${CMAKE_ARGS}"
DEBUG_ARGS="-devMode -debugToken ${QNX_CONFIGURATION}/../debugtoken.bar"
2014-07-24 06:34:46 +00:00
PACKAGE=1
TARGET_OS=Blackberry
fi
# Check Symbian NDK
if [ ! -z "$EPOCROOT" ]; then
QMAKE_ARGS="-spec symbian-sbsv2 ${QMAKE_ARGS}"
2014-07-24 06:34:46 +00:00
CMAKE=0
PACKAGE=1
MAKE_OPT="release-gcce ${MAKE_OPT}"
TARGET_OS=Symbian
fi
# Check arguments
while test $# -gt 0
do
case "$1" in
2014-07-24 06:34:46 +00:00
--qt) echo "Qt enabled"
CMAKE=0
;;
--ios) CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=ios/ios.toolchain.cmake -GXcode ${CMAKE_ARGS}"
2014-07-24 06:34:46 +00:00
TARGET_OS=iOS
PACKAGE=1
;;
--android) CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=android/android.toolchain.cmake ${CMAKE_ARGS}"
TARGET_OS=Android
PACKAGE=1
;;
2014-07-24 06:34:46 +00:00
--simulator) echo "Simulator mode enabled"
CMAKE_ARGS="-DSIMULATOR=ON ${CMAKE_ARGS}"
;;
--release)
CMAKE_ARGS="-DCMAKE_BUILD_TYPE=Release ${CMAKE_ARGS}"
QMAKE_ARGS="CONFIG+=release ${QMAKE_ARGS}"
2014-07-24 06:34:46 +00:00
;;
--debug)
CMAKE_ARGS="-DCMAKE_BUILD_TYPE=Debug ${CMAKE_ARGS}"
QMAKE_ARGS="CONFIG+=debug ${QMAKE_ARGS}"
;;
--system-ffmpeg)
QMAKE_ARGS="CONFIG+=system_ffmpeg ${QMAKE_ARGS}"
2014-07-24 06:34:46 +00:00
;;
--headless) echo "Headless mode enabled"
CMAKE_ARGS="-DHEADLESS=ON ${CMAKE_ARGS}"
;;
--no-package) echo "Packaging disabled"
PACKAGE=0
;;
--release-package) echo "Blackberry release package enabled"
2013-12-09 04:42:49 +00:00
if [ ! -f "Blackberry/build.txt" ]; then
echo "1" > "Blackberry/build.txt"
fi
DEBUG_ARGS="-buildId ../Blackberry/build.txt"
;;
--*) echo "Bad option: $1"
exit 1
;;
*) MAKE_OPT="$1 ${MAKE_OPT}"
;;
esac
shift
done
2014-07-24 06:34:46 +00:00
if [ ! -z "$TARGET_OS" ]; then
echo "Building for $TARGET_OS"
BUILD_DIR="$(tr [A-Z] [a-z] <<< build-"$TARGET_OS")"
# HACK (doesn't like shadowed dir)
2014-07-24 06:34:46 +00:00
if [ "$TARGET_OS" == "Symbian" ]; then
BUILD_DIR="Qt"
fi
2013-11-28 14:23:47 +00:00
else
echo "Building for native host."
if [ "$CMAKE" == "0" ]; then
BUILD_DIR="build-qt"
else
BUILD_DIR="build"
fi
2013-11-28 14:23:47 +00:00
fi
# Strict errors. Any non-zero return exits this script
set -e
2014-07-24 06:34:46 +00:00
mkdir -p ${BUILD_DIR}
pushd ${BUILD_DIR}
if [ "$CMAKE" == "1" ]; then
cmake $HEADLESS $CMAKE_ARGS .. | (grep -v "^-- " || true)
else
qmake $QMAKE_ARGS ../Qt/PPSSPPQt.pro
fi
make -j4 $MAKE_OPT
2014-07-24 06:34:46 +00:00
if [ "$PACKAGE" == "1" ]; then
2014-07-24 07:02:15 +00:00
if [ "$TARGET_OS" == "Blackberry" ]; then
2014-07-24 06:34:46 +00:00
cp ../Blackberry/bar-descriptor.xml .
blackberry-nativepackager -package PPSSPP.bar bar-descriptor.xml $DEBUG_ARGS
2014-07-24 07:02:15 +00:00
elif [ "$TARGET_OS" == "Symbian" ]; then
2014-07-24 06:34:46 +00:00
make sis
2014-07-24 07:02:15 +00:00
elif [ "$TARGET_OS" == "iOS" ]; then
xcodebuild -configuration Release
2014-07-24 06:34:46 +00:00
fi
fi
popd