18585484eSchristos#! /bin/sh 28585484eSchristos 38585484eSchristosargs=`getopt d:f:v $*` 48585484eSchristosset -- $args 58585484eSchristos 68585484eSchristosLF= 78585484eSchristosV=": " 88585484eSchristos 98585484eSchristosfor i 108585484eSchristosdo 118585484eSchristos case "$i" in 128585484eSchristos -d) sdir="$2" ; shift 2 ;; 138585484eSchristos -f) locfile="$2" ; shift 2 ;; 148585484eSchristos -v) V= ; shift ;; 158585484eSchristos --) shift ; break ;; 168585484eSchristos esac 178585484eSchristosdone 188585484eSchristos 198585484eSchristoscase "$sdir" in 208585484eSchristos '') 218585484eSchristos sdir=. 228585484eSchristosesac 238585484eSchristos 248585484eSchristoscase "$locfile" in 258585484eSchristos */*) 268585484eSchristos LF=$locfile 278585484eSchristos ;; 288585484eSchristos '') 298585484eSchristos ;; 308585484eSchristos *) 318585484eSchristos lf=loc/$locfile 328585484eSchristos if test -f $lf 338585484eSchristos then 348585484eSchristos LF=$lf 358585484eSchristos fi 368585484eSchristos ;; 378585484eSchristosesac 388585484eSchristos 398585484eSchristos# If we have a file to use (ie, LF is not empty) then look for one. 408585484eSchristoscase "$LF" in 418585484eSchristos '') 428585484eSchristos PATH=$PATH:libevent/build-aux 438585484eSchristos export PATH 448585484eSchristos set `scripts/cvo.sh @osname@ @osver@` || exit 1 458585484eSchristos 468585484eSchristos CVO_OSNAME=$1 478585484eSchristos CVO_OSVER=$2 488585484eSchristos 498585484eSchristos x=$CVO_OSVER 508585484eSchristos 518585484eSchristos while true 528585484eSchristos do 538585484eSchristos case "$x" in 548585484eSchristos '') break ;; 558585484eSchristos esac 568585484eSchristoslf=loc/$CVO_OSNAME$x 578585484eSchristos${V}echo "Looking for <$lf>" >&2 588585484eSchristos if test -f $lf 598585484eSchristos then 608585484eSchristos LF=$lf 618585484eSchristos break 628585484eSchristos fi 638585484eSchristos case "$x" in 648585484eSchristos *.*) x=`echo $x | sed -e 's/\.[^.]*$//'` ;; 658585484eSchristos *) x= ;; 668585484eSchristos esac 678585484eSchristos done 688585484eSchristos case "$LF" in 698585484eSchristos '') 708585484eSchristos lf=loc/$CVO_OSNAME 718585484eSchristos${V}echo "Looking for <$lf>" >&2 728585484eSchristos if test -f $lf 738585484eSchristos then 748585484eSchristos LF=$lf 758585484eSchristos fi 768585484eSchristos ;; 778585484eSchristos esac 788585484eSchristos # Handle some "aliases" 798585484eSchristos case "$LF" in 808585484eSchristos '') 818585484eSchristos case "$CVO_OSNAME" in 82*f17b710fSchristos raspbian*) 83*f17b710fSchristos lf=loc/debian 84*f17b710fSchristos${V}echo "Looking for <$lf>" >&2 85*f17b710fSchristos if test -f $lf 86*f17b710fSchristos then 87*f17b710fSchristos LF=$lf 88*f17b710fSchristos fi 89*f17b710fSchristos ;; 908585484eSchristos redhat* | fedora*) 918585484eSchristos lf=loc/redhat 928585484eSchristos${V}echo "Looking for <$lf>" >&2 938585484eSchristos if test -f $lf 948585484eSchristos then 958585484eSchristos LF=$lf 968585484eSchristos fi 978585484eSchristos ;; 988585484eSchristos esac 998585484eSchristos ;; 1008585484eSchristos esac 1018585484eSchristos 1028585484eSchristos # This might be a good place to see if uname returns "Linux", 1038585484eSchristos # and if so, use a generic file for that. 1048585484eSchristos case "$LF" in 1058585484eSchristos '') 1068585484eSchristos case "`uname`" in 1078585484eSchristos Linux) 1088585484eSchristos lf=loc/linux 1098585484eSchristos${V}echo "Looking for <$lf>" >&2 1108585484eSchristos if test -f $lf 1118585484eSchristos then 1128585484eSchristos LF=$lf 1138585484eSchristos fi 1148585484eSchristos ;; 1158585484eSchristos esac 1168585484eSchristos ;; 1178585484eSchristos esac 1188585484eSchristos 1198585484eSchristos # Finally, 'legacy' 1208585484eSchristos case "$LF" in 1218585484eSchristos '') 1228585484eSchristos lf=loc/legacy 1238585484eSchristos${V}echo "Looking for <$lf>" >&2 1248585484eSchristos if test -f $lf 1258585484eSchristos then 1268585484eSchristos LF=$lf 1278585484eSchristos fi 1288585484eSchristos ;; 1298585484eSchristos esac 1308585484eSchristos 1318585484eSchristos case "$LF" in 1328585484eSchristos '') 1338585484eSchristos echo "No loc/XXX file found!" >&2 1348585484eSchristos exit 1 1358585484eSchristos ;; 1368585484eSchristos esac 1378585484eSchristos ;; 1388585484eSchristosesac 1398585484eSchristos 1408585484eSchristos${V}echo "Using <$LF>" >&2 1418585484eSchristosecho "GENLOCINFOFILE=$LF" 1428585484eSchristos 1438585484eSchristos### 1448585484eSchristos 1458585484eSchristosrm -f $sdir/genLocInfo.rc? 1468585484eSchristos 1478585484eSchristosoIFS=$IFS 1488585484eSchristosIFS="," 1498585484eSchristos 1508585484eSchristoswhile true 1518585484eSchristosdo 1528585484eSchristos if read c d s x 1538585484eSchristos then 1548585484eSchristos # echo "Got <$c><$d><$s><$x>" >&2 1558585484eSchristos case "$c" in 1568585484eSchristos \#*) continue ;; 1578585484eSchristos esac 1588585484eSchristos case "$x" in 1598585484eSchristos '') ;; 1608585484eSchristos *) echo "Unrecognized input: <$c,$d,$s,$x>" >&2 1618585484eSchristos touch $sdir/genLocInfo.rc1 1628585484eSchristos continue 1638585484eSchristos ;; 1648585484eSchristos esac 1658585484eSchristos case "$c,$d,$s" in 1668585484eSchristos [Mm][Aa][Nn],,) 1678585484eSchristos echo "MANTAGFMT=man" 1688585484eSchristos continue 1698585484eSchristos ;; 1708585484eSchristos [Mm][Dd][Oo][Cc],,) 1718585484eSchristos echo "MANTAGFMT=mdoc" 1728585484eSchristos continue 1738585484eSchristos ;; 1748585484eSchristos esac 1758585484eSchristos 1768585484eSchristos case "$c,$d,$s" in 177b8ecfcfeSchristos *,bin,*) DB=bin ; DL= ; DS= ; NI= ;; 178b8ecfcfeSchristos *,libexec,*) DB= ; DL=libexec ; DS= ; NI= ;; 179b8ecfcfeSchristos *,noinst,*) DB= ; DL= ; DS= ; NI=noinst ;; 180b8ecfcfeSchristos *,sbin,*) DB= ; DL= ; DS=sbin ; NI= ;; 1818585484eSchristos *) echo "Unrecognized input: <$c,$d,$s>" >&2 1828585484eSchristos touch $sdir/genLocInfo.rc1 1838585484eSchristos continue 1848585484eSchristos ;; 1858585484eSchristos esac 1868585484eSchristos case "$c,$d,$s" in 1878585484eSchristos *,*,1) ;; 1888585484eSchristos *,*,1m) ;; 1898585484eSchristos *,*,1M) ;; 1908585484eSchristos *,*,8) ;; 1918585484eSchristos *) echo "Unrecognized input: <$c,$d,$s>" >&2 1928585484eSchristos touch $sdir/genLocInfo.rc1 1938585484eSchristos continue 1948585484eSchristos ;; 1958585484eSchristos esac 1968585484eSchristos 1978585484eSchristos # Should be OK, mostly... 1988585484eSchristos C=`echo $c | sed -e 'y/abcdefghijklmnopqrstuvwxyz-/ABCDEFGHIJKLMNOPQRSTUVWXYZ_/'` 1998585484eSchristos # echo "c: <$c>, C: <$C>, DB: <$DB>, DL: <$DL>, DS: <$DS>" >&2 2008585484eSchristos 2018585484eSchristos case "$d" in 2028585484eSchristos bin) 2038585484eSchristos eval ${C}_DB=$c 2048585484eSchristos eval ${C}_DL= 2058585484eSchristos eval ${C}_DS= 206b8ecfcfeSchristos eval ${C}_NI= 2078585484eSchristos ;; 2088585484eSchristos libexec) 2098585484eSchristos eval ${C}_DB= 2108585484eSchristos eval ${C}_DL=$c 2118585484eSchristos eval ${C}_DS= 212b8ecfcfeSchristos eval ${C}_NI= 213b8ecfcfeSchristos ;; 214b8ecfcfeSchristos noinst) 215b8ecfcfeSchristos eval ${C}_DB= 216b8ecfcfeSchristos eval ${C}_DL= 217b8ecfcfeSchristos eval ${C}_DS= 218b8ecfcfeSchristos eval ${C}_NI=$c 2198585484eSchristos ;; 2208585484eSchristos sbin) 2218585484eSchristos eval ${C}_DB= 2228585484eSchristos eval ${C}_DL= 2238585484eSchristos eval ${C}_DS=$c 224b8ecfcfeSchristos eval ${C}_NI= 2258585484eSchristos ;; 226b8ecfcfeSchristos *) echo "$0: installdir <$d> must be bin, sbin, libexec, or noinst" >&2 2278585484eSchristos exit 1 2288585484eSchristos ;; 2298585484eSchristos esac 2308585484eSchristos eval ${C}_MS=$s 2318585484eSchristos 2328585484eSchristos # echo "<$c> gets installed in <$d> with a <$s> manpage suffix" >&2 2338585484eSchristos # echo "${C}_DB is <`eval echo '$'${C}_DB`>" >&2 2348585484eSchristos # echo "${C}_DL is <`eval echo '$'${C}_DL`>" >&2 2358585484eSchristos # echo "${C}_DS is <`eval echo '$'${C}_DS`>" >&2 236b8ecfcfeSchristos # echo "${C}_NI is <`eval echo '$'${C}_NI`>" >&2 2378585484eSchristos # echo "${C}_MS is <`eval echo '$'${C}_MS`>" >&2 2388585484eSchristos echo "${C}_DB=`eval echo '$'${C}_DB`" 2398585484eSchristos echo "${C}_DL=`eval echo '$'${C}_DL`" 2408585484eSchristos echo "${C}_DS=`eval echo '$'${C}_DS`" 241b8ecfcfeSchristos echo "${C}_NI=`eval echo '$'${C}_NI`" 2428585484eSchristos echo "${C}_MS=`eval echo '$'${C}_MS`" 2438585484eSchristos 2448585484eSchristos touch $sdir/genLocInfo.rc0 2458585484eSchristos else 2468585484eSchristos break 2478585484eSchristos fi 2488585484eSchristosdone < $LF 2498585484eSchristosIFS=$oIFS 2508585484eSchristos 2518585484eSchristosif test -f $sdir/genLocInfo.rc1 2528585484eSchristosthen 2538585484eSchristos rm $sdir/genLocInfo.rc? 2548585484eSchristos exit 1 2558585484eSchristosfi 2568585484eSchristos 2578585484eSchristosif test -f $sdir/genLocInfo.rc0 2588585484eSchristosthen 2598585484eSchristos rm $sdir/genLocInfo.rc? 2608585484eSchristos echo 'GENLOCINFO=OK' 2618585484eSchristos exit 0 2628585484eSchristosfi 2638585484eSchristos 2648585484eSchristosexit 1 265