kconfig/lxdialog/check-lxdialog.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Mar 04 18:56:07 2009 +0000 (2009-03-04)
changeset 1229 8864e5255c2d
parent 1087 5be36a4b304d
child 1973 20f02d426e15
permissions -rw-r--r--
Update the kconfig stuff from git.kernel.org.
Commit f6682f915760ccfe57ef1b6cd5ff2d8f2bf8c1d4

/trunk/kconfig/lxdialog/check-lxdialog.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
yann@1
     1
#!/bin/sh
yann@1
     2
# Check ncurses compatibility
yann@1
     3
yann@1
     4
# What library to link
yann@1
     5
ldflags()
yann@1
     6
{
yann@1087
     7
	for ext in so a dylib ; do
yann@1087
     8
		for lib in ncursesw ncurses curses ; do
yann@1087
     9
			$cc -print-file-name=lib${lib}.${ext} | grep -q /
yann@1087
    10
			if [ $? -eq 0 ]; then
yann@1087
    11
				echo "-l${lib}"
yann@1087
    12
				exit
yann@1087
    13
			fi
yann@1087
    14
		done
yann@1087
    15
	done
yann@1
    16
	exit 1
yann@1
    17
}
yann@1
    18
yann@1
    19
# Where is ncurses.h?
yann@1
    20
ccflags()
yann@1
    21
{
yann@1
    22
	if [ -f /usr/include/ncurses/ncurses.h ]; then
yann@1
    23
		echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses.h>"'
yann@1
    24
	elif [ -f /usr/include/ncurses/curses.h ]; then
yann@1
    25
		echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses/curses.h>"'
yann@1
    26
	elif [ -f /usr/include/ncurses.h ]; then
yann@1
    27
		echo '-DCURSES_LOC="<ncurses.h>"'
yann@1
    28
	else
yann@1
    29
		echo '-DCURSES_LOC="<curses.h>"'
yann@1
    30
	fi
yann@1
    31
}
yann@1
    32
yann@1
    33
# Temp file, try to clean up after us
yann@1
    34
tmp=.lxdialog.tmp
yann@1
    35
trap "rm -f $tmp" 0 1 2 3 15
yann@1
    36
yann@1
    37
# Check if we can link to ncurses
yann@1
    38
check() {
yann@1087
    39
        $cc -xc - -o $tmp 2>/dev/null <<'EOF'
yann@1087
    40
#include CURSES_LOC
yann@1087
    41
main() {}
yann@1087
    42
EOF
yann@1087
    43
	if [ $? != 0 ]; then
yann@1087
    44
	    echo " *** Unable to find the ncurses libraries or the"       1>&2
yann@1087
    45
	    echo " *** required header files."                            1>&2
yann@1087
    46
	    echo " *** 'make menuconfig' requires the ncurses libraries." 1>&2
yann@1087
    47
	    echo " *** "                                                  1>&2
yann@1087
    48
	    echo " *** Install ncurses (ncurses-devel) and try again."    1>&2
yann@1087
    49
	    echo " *** "                                                  1>&2
yann@1087
    50
	    exit 1
yann@1
    51
	fi
yann@1
    52
}
yann@1
    53
yann@1
    54
usage() {
yann@1229
    55
	printf "Usage: $0 [-check compiler options|-ccflags|-ldflags compiler options]\n"
yann@1
    56
}
yann@1
    57
yann@706
    58
if [ $# -eq 0 ]; then
yann@1
    59
	usage
yann@1
    60
	exit 1
yann@1
    61
fi
yann@1
    62
yann@1
    63
cc=""
yann@1
    64
case "$1" in
yann@1
    65
	"-check")
yann@1
    66
		shift
yann@1
    67
		cc="$@"
yann@1
    68
		check
yann@1
    69
		;;
yann@1
    70
	"-ccflags")
yann@1
    71
		ccflags
yann@1
    72
		;;
yann@1
    73
	"-ldflags")
yann@1
    74
		shift
yann@1
    75
		cc="$@"
yann@1
    76
		ldflags
yann@1
    77
		;;
yann@1
    78
	"*")
yann@1
    79
		usage
yann@1
    80
		exit 1
yann@1
    81
		;;
yann@1
    82
esac