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
#!/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
|