64 lines
1.7 KiB
Bash
Executable File
64 lines
1.7 KiB
Bash
Executable File
set -e
|
|
|
|
# Check out the source without the Windows/Mac prebuilts
|
|
[[ ! -z "$COMMIT" ]] || COMMIT="master"
|
|
echo "Checking out $COMMIT"
|
|
git clone https://github.com/moonlight-stream/moonlight-qt.git
|
|
cd moonlight-qt
|
|
git checkout $COMMIT
|
|
git log -1
|
|
git -c submodule.libs.update=none submodule update --init --recursive
|
|
|
|
# Grab the verson metadata
|
|
VERSION=`cat app/version.txt`
|
|
|
|
# Determine extra target-specific dependencies
|
|
if [ "$TARGET" == "rpi" ]; then
|
|
EXTRA_BUILD_DEPS="libraspberrypi-dev | rbp-userland-dev-osmc"
|
|
EXTRA_DEPS="libraspberrypi0 | rbp-userland-osmc"
|
|
elif [ "$TARGET" == "rpi64" ]; then
|
|
EXTRA_BUILD_DEPS=""
|
|
EXTRA_DEPS=""
|
|
elif [ "$TARGET" == "l4t" ]; then
|
|
EXTRA_BUILD_DEPS=""
|
|
elif [ "$TARGET" == "desktop" ]; then
|
|
EXTRA_BUILD_DEPS="libwayland-dev, wayland-protocols, libva-dev, libvdpau-dev"
|
|
else
|
|
echo "Unrecognized target: $TARGET"
|
|
exit 1
|
|
fi
|
|
|
|
# Create a build directory
|
|
mkdir /opt/build
|
|
|
|
# Generate source tarball
|
|
scripts/generate-src.sh
|
|
|
|
# Move the tarball into the build directory
|
|
mv build/source/MoonlightSrc-$VERSION.tar.gz /opt/build/moonlight-qt_$VERSION.orig.tar.gz
|
|
|
|
# Extract the tarball into the appropriate directory
|
|
cd /opt/build
|
|
mkdir moonlight-qt-$VERSION
|
|
cd moonlight-qt-$VERSION
|
|
tar xvf ../moonlight-qt_$VERSION.orig.tar.gz
|
|
|
|
# Copy the debian directory into the build directory
|
|
cp -r /opt/debian .
|
|
|
|
# Patch the control file with target-specific dependencies
|
|
sed -i "s/EXTRA_BUILD_DEPS/$EXTRA_BUILD_DEPS/g" debian/control
|
|
sed -i "s/EXTRA_DEPS/$EXTRA_DEPS/g" debian/control
|
|
cat debian/control
|
|
|
|
# Build the package
|
|
debuild -us -uc
|
|
|
|
# Copy the output to the out directory
|
|
cd /opt/build
|
|
shopt -s extglob
|
|
cp -v -r !(moonlight-qt-$VERSION) /out
|
|
|
|
# Done!
|
|
echo "Build successful!"
|