You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.0 KiB
68 lines
1.0 KiB
4 months ago
|
#!/bin/bash
|
||
|
|
||
|
set -e
|
||
|
|
||
|
builddir=
|
||
|
install=no
|
||
|
|
||
|
while [ $# -gt 0 ]; do
|
||
|
case "$1" in
|
||
|
--build-dir)
|
||
|
if [ $# -lt 2 ]; then
|
||
|
echo "ERROR: missing argument for --build-dir option" >&2
|
||
|
exit 1
|
||
|
fi
|
||
|
builddir=$2
|
||
|
shift 2
|
||
|
;;
|
||
|
--install)
|
||
|
install=yes
|
||
|
shift
|
||
|
;;
|
||
|
--)
|
||
|
shift
|
||
|
break;
|
||
|
;;
|
||
|
*)
|
||
|
echo "ERROR: Unexpected argument: $1" >&2
|
||
|
exit 1
|
||
|
esac
|
||
|
done
|
||
|
|
||
|
if [ -z "${builddir}" ]; then
|
||
|
echo "ERROR: --build-dir option not specified" >&2
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
if [ -e "${builddir}" ]; then
|
||
|
echo "ERROR: directory entry named '${builddir}' already exists" >&2
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
mkdir "${builddir}"
|
||
|
cd "${builddir}"
|
||
|
|
||
|
cflags="-O2"
|
||
|
|
||
|
# enable extra warnings
|
||
|
cflags+=" -Winline"
|
||
|
cflags+=" -Wmissing-include-dirs"
|
||
|
cflags+=" -Wnested-externs"
|
||
|
cflags+=" -Wpointer-arith"
|
||
|
cflags+=" -Wredundant-decls"
|
||
|
cflags+=" -Wswitch-enum"
|
||
|
|
||
|
echo ""
|
||
|
echo "Configuring ..."
|
||
|
CFLAGS="${cflags}" ../configure --enable-examples-build --enable-tests-build "$@"
|
||
|
|
||
|
echo ""
|
||
|
echo "Building ..."
|
||
|
make -j4 -k
|
||
|
|
||
|
if [ "${install}" = "yes" ]; then
|
||
|
echo ""
|
||
|
echo "Installing ..."
|
||
|
make install
|
||
|
fi
|