1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
|
#!/bin/sh
#
# defaults
#
prefix=/usr/local # where to install midish
alsa=no # do we want alsa support ?
sndio=no # do we want sndio support ?
vars= # variables definitions passed as-is
bindir= # path where to install binaries
datadir= # path where to install doc and examples
mandir= # path where to install man pages
defs= # no extra #defines
lib= # extra path to libraries
include= # extra path to header files
rt_ldadd= # extra -l's for posix real-time extensions
sndio_ldadd= # extra -l's for sndio(7)
alsa_ldadd= # extra -l's for ALSA
#
# few OS-specific tweaks
#
case `uname` in
Linux)
alsa=yes
rt_ldadd="-lrt"
;;
OpenBSD)
sndio=yes
;;
esac
#
# display help screeen
#
help() {
cat << END
Usage: configure [options]
--prefix=DIR set install prefix to DIR [$prefix]
--bindir=DIR install executables in DIR [\$prefix/bin]
--datadir=DIR install read-only data in DIR [\$prefix/share]
--mandir=DIR install man pages in DIR [\$prefix/man]
--enable-alsa enable alsa sequencer backend [$alsa]
--disable-alsa disable alsa sequencer backend
--enable-sndio enable libsndio backend [$sndio]
--disable-sndio disable libsndio backend
END
}
# shell word separator (none)
IFS=''
# sed-quoted new-line
nl='\
'
for i; do
case "$i" in
--prefix=*)
prefix="${i#--prefix=}"
shift;;
--bindir=*)
bindir="${i#--bindir=}"
shift;;
--datadir=*)
datadir="${i#--datadir=}"
shift;;
--mandir=*)
mandir="${i#--mandir=}"
shift;;
--enable-alsa)
alsa=yes
shift;;
--disable-alsa)
alsa=no
shift;;
--enable-sndio)
sndio=yes
shift;;
--disable-sndio)
sndio=no
shift;;
CC=*|CFLAGS=*|LDFLAGS=*)
vars="$vars$i$nl"
shift;;
*)
help
exit 1
;;
esac
done
bindir="${bindir:-$prefix/bin}"
datadir="${datadir:-$prefix/share}"
mandir="${mandir:-$prefix/man}"
#
# add parameters specific to backends
#
if [ $sndio = yes ]; then
defs="$defs -DUSE_SNDIO"
sndio_ldadd="-lsndio"
alsa=no
elif [ $alsa = yes ]; then
defs="$defs -DUSE_ALSA"
alsa_ldadd="-lasound"
else
defs="$defs -DUSE_RAW"
fi
echo "configure: creating Makefile"
sed \
-e "s:@bindir@:$bindir:" \
-e "s:@datadir@:$datadir:" \
-e "s:@mandir@:$mandir:" \
-e "s:@defs@:$defs:" \
-e "s:@include@:$include:" \
-e "s:@lib@:$lib:" \
-e "s:@rt_ldadd@:$rt_ldadd:" \
-e "s:@sndio_ldadd@:$sndio_ldadd:" \
-e "s:@alsa_ldadd@:$alsa_ldadd:" \
-e "s:@vars@:$vars:" \
< Makefile.in >Makefile
if [ ! -e version.h ]; then
echo "#define VERSION \"midish (unknown release)\"" >version.h
fi
echo
echo "bindir................... $bindir"
echo "datadir.................. $datadir"
echo "mandir................... $mandir"
echo "alsa..................... $alsa"
echo "sndio.................... $sndio"
echo
echo "Do \"make && make install\" to compile and install midish"
echo
|