allow deselecting previously selected drivers: e.g. --enable-drivers='all,!hd44780'
This commit is contained in:
+28
-10
@@ -10,18 +10,36 @@ AC_ARG_ENABLE(drivers,
|
|||||||
[ joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,]
|
[ joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,]
|
||||||
[ MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,]
|
[ MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,]
|
||||||
[ sli,stv5730,svga,t6963,text,tyan,ula200,xosd]
|
[ sli,stv5730,svga,t6963,text,tyan,ula200,xosd]
|
||||||
[ \"all\" compiles all drivers],
|
[ 'all' compiles all drivers;]
|
||||||
|
[ 'all,!xxx,!yyy' de-selects previously selected drivers],
|
||||||
drivers="$enableval",
|
drivers="$enableval",
|
||||||
drivers=[bayrad,CFontz,CFontz633,curses,CwLnx,glk,lb216,lcdm001,MtxOrb,pylcd,text])
|
drivers=[bayrad,CFontz,CFontz633,curses,CwLnx,glk,lb216,lcdm001,MtxOrb,pylcd,text])
|
||||||
|
|
||||||
if test "$drivers" = "all"; then
|
allDrivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,sli,stv5730,svga,t6963,text,tyan,ula200,xosd]
|
||||||
drivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,sli,stv5730,svga,t6963,text,tyan,ula200,xosd]
|
|
||||||
fi
|
|
||||||
|
|
||||||
drivers=`echo $drivers | sed 's/,/ /g'`
|
drivers=`echo $drivers | sed -e 's/,/ /g'`
|
||||||
for driver in $drivers
|
|
||||||
do
|
|
||||||
|
|
||||||
|
dnl replace special keyword "all" in a secure manner
|
||||||
|
drivers=[" $drivers "]
|
||||||
|
drivers=`echo " $drivers " | sed -e "s/ all / ${allDrivers} /"`
|
||||||
|
drivers=`echo $drivers | sed -e 's/,/ /g'`
|
||||||
|
|
||||||
|
dnl ignore unwanted drivers
|
||||||
|
selectdrivers=" "
|
||||||
|
for driver in $drivers ; do
|
||||||
|
case $driver in
|
||||||
|
!*)
|
||||||
|
driver=`echo $driver | sed -e 's/^.//'`
|
||||||
|
selectdrivers=[`echo $selectdrivers | sed -r -e "s/ $driver / /"`]
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
selectdrivers=["$selectdrivers $driver "]
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
dnl check for wanted drivers and their dependencies
|
||||||
|
for driver in $selectdrivers ; do
|
||||||
case "$driver" in
|
case "$driver" in
|
||||||
bayrad)
|
bayrad)
|
||||||
DRIVERS="$DRIVERS bayrad${SO}"
|
DRIVERS="$DRIVERS bayrad${SO}"
|
||||||
@@ -318,10 +336,10 @@ dnl else
|
|||||||
*)
|
*)
|
||||||
AC_MSG_ERROR([Unknown driver $driver])
|
AC_MSG_ERROR([Unknown driver $driver])
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
actdrivers=`echo $actdrivers | sed 's/ /,/g'`
|
actdrivers=`echo $actdrivers | sed -e 's/ /,/g'`
|
||||||
AC_MSG_RESULT([Will compile drivers: $actdrivers])
|
AC_MSG_RESULT([Will compile drivers: $actdrivers])
|
||||||
|
|
||||||
AC_SUBST(LIBCURSES)
|
AC_SUBST(LIBCURSES)
|
||||||
|
|||||||
@@ -51,7 +51,8 @@ AC_ARG_ENABLE(drivers,
|
|||||||
[ joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,]
|
[ joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,]
|
||||||
[ MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,]
|
[ MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,]
|
||||||
[ sli,stv5730,svga,t6963,text,tyan,ula200,xosd]
|
[ sli,stv5730,svga,t6963,text,tyan,ula200,xosd]
|
||||||
[ \"all\" compiles all drivers],
|
[ 'all' compiles all drivers;]
|
||||||
|
[ 'all,!xxx,!yyy' de-selects previously selected drivers],
|
||||||
drivers="$enableval",
|
drivers="$enableval",
|
||||||
</screen>
|
</screen>
|
||||||
<para>becomes:</para>
|
<para>becomes:</para>
|
||||||
@@ -65,7 +66,8 @@ AC_ARG_ENABLE(drivers,
|
|||||||
[ joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,]
|
[ joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,]
|
||||||
[ MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,]
|
[ MtxOrb,NoritakeVFD,pylcd,sed1330,sed1520,serialVFD,]
|
||||||
[ sli,stv5730,svga,t6963,text,tyan,ula200,xosd,<emphasis>myDriver</emphasis>]
|
[ sli,stv5730,svga,t6963,text,tyan,ula200,xosd,<emphasis>myDriver</emphasis>]
|
||||||
[ \"all\" compiles all drivers],
|
[ 'all' compiles all drivers;]
|
||||||
|
[ 'all,!xxx,!yyy' de-selects previously selected drivers],
|
||||||
drivers="$enableval",
|
drivers="$enableval",
|
||||||
</screen>
|
</screen>
|
||||||
</sect3>
|
</sect3>
|
||||||
@@ -77,15 +79,11 @@ AC_ARG_ENABLE(drivers,
|
|||||||
|
|
||||||
<para>This:</para>
|
<para>This:</para>
|
||||||
<screen>
|
<screen>
|
||||||
if test "$drivers" = "all"; then
|
allDrivers=[bayrad,CFontz,CFontz633,...(big list)...,tyan,ula200,xosd]
|
||||||
drivers=[bayrad,CFontz,...(big list)...,ula200,xosd]
|
|
||||||
fi
|
|
||||||
</screen>
|
</screen>
|
||||||
<para>becomes:</para>
|
<para>becomes:</para>
|
||||||
<screen>
|
<screen>
|
||||||
if test "$drivers" = "all"; then
|
allDrivers=[bayrad,CFontz,CFontz633,...(big list)...,tyan,ula200,xosd,<emphasis>myDriver</emphasis>]
|
||||||
drivers=[bayrad,CFontz,...(big list)...,ula200,xosd,<emphasis>myDriver</emphasis>]
|
|
||||||
fi
|
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|||||||
Reference in New Issue
Block a user