ladybird/Ports/.port_include.sh
Andreas Kling 2daf89e2f7 Ports: Fix SDL2 port trying to build against PulseAudio for some reason.
I didn't look into why, but for some reason the SDL2 cmake build system
thinks it should build against PulseAudio which we definitely don't have.
So just tell it explicitly not to do that.

Fixes #265.
2019-07-01 14:08:15 +02:00

120 lines
2.4 KiB
Bash
Executable file

#!/bin/sh
# This script contains common helpers for all ports.
set -e
if [ -z "$MAKEOPTS" ]; then
MAKEOPTS="-j $(nproc)"
fi
if [ -z "$INSTALLOPTS" ]; then
INSTALLOPTS=""
fi
if [ -z "$SERENITY_ROOT" ]; then
echo "You must have source'd UseIt.sh to build any ports!"
exit 1
fi
if [ -z "$PORT_DIR" ]; then
echo "Must set PORT_DIR to where the source should be cloned."
exit 1
fi
run_command() {
echo "+ $@"
(cd "$PORT_DIR" && "$@")
echo "+ FINISHED: $@"
}
run_command_nocd() {
echo "+ $@ (nocd)"
("$@")
echo "+ FINISHED (nocd): $@"
}
run_fetch_git() {
if [ -d "$PORT_DIR/.git" ]; then
run_command git fetch
run_command git reset --hard FETCH_HEAD
run_command git clean -fx
else
run_command_nocd git clone "$1" "$PORT_DIR"
fi
}
run_fetch_web() {
if [ -d "$PORT_DIR" ]; then
run_command_nocd rm -rf "$PORT_DIR"
fi
file=$(basename "$1")
run_command_nocd curl "$1" -o "$file"
mkdir "$PORT_DIR"
# may need to make strip-components configurable, as I bet some sick person
# out there has an archive that isn't in a directory :shrug:
run_command_nocd tar xavf "$file" -C "$PORT_DIR" --strip-components=1
}
run_export_env() {
export $1="$2"
}
run_replace_in_file() {
run_command perl -p -i -e "$1" $2
}
run_patch() {
echo "+ Applying patch $1"
run_command patch "$2" < "$1"
}
run_configure_cmake() {
run_command cmake -DCMAKE_TOOLCHAIN_FILE="$SERENITY_ROOT/Toolchain/CMakeToolchain.txt" $CMAKEOPTS .
}
run_configure_autotools() {
run_command ./configure --host=i686-pc-serenity "$@"
}
run_make() {
run_command make $MAKEOPTS "$@"
}
run_make_install() {
run_command make $INSTALLOPTS install "$@"
}
run_send_to_file() {
echo "+ rewrite '$1'"
(cd "$PORT_DIR" && echo "$2" > "$1")
echo "+ FINISHED"
}
if [ -z "$1" ]; then
echo "+ Fetching..."
fetch
echo "+ Configuring..."
configure
echo "+ Building..."
build
echo "+ Installing..."
install
exit 0
fi
if [ "$1" = "fetch" ]; then
echo "+ Fetching..."
fetch
elif [ "$1" = "configure" ]; then
echo "+ Configuring..."
configure
elif [ "$1" = "build" ]; then
echo "+ Building..."
build
elif [ "$1" = "install" ]; then
echo "+ Installing..."
install
else
echo "Unknown verb: $1"
echo "Supported: (one of) fetch configure build install"
exit 1
fi