kconfig/lxdialog/check-lxdialog.sh
author Arnaud Lacombe <lacombar@gmail.com>
Tue Aug 03 06:17:51 2010 +0200 (2010-08-03)
changeset 2064 f5ebe8c429dc
parent 1229 8864e5255c2d
child 2125 4009fc9c47d5
permissions -rw-r--r--
libc/uClibc: add uClibc 0.9.30.3

This version has been released a couple of month ago, but it never reached
crosstool-ng tree. This may be linked to the fact that the current 0.9.30.2,
once patched, has nothing much different from 0.9.30.3, released.

I'm not including any patch with this upgrade, on purpose.

Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
yann@1
     1
#!/bin/sh
yann@1
     2
# Check ncurses compatibility
yann@1
     3
titus@1973
     4
OS=`uname`
titus@1973
     5
titus@1973
     6
# Under MACOS make sure that the macports-installed version is used.
titus@1973
     7
case "$OS" in
titus@1973
     8
	Darwin) BASEDIR="/opt/local";;
titus@1973
     9
	*)      BASEDIR="/usr";;
titus@1973
    10
esac
titus@1973
    11
titus@1973
    12
INCLUDEPATH="${BASEDIR}/include"
titus@1973
    13
LIBPATH="${BASEDIR}/lib"
titus@1973
    14
yann@1
    15
# What library to link
yann@1
    16
ldflags()
yann@1
    17
{
yann@1087
    18
	for ext in so a dylib ; do
yann@1087
    19
		for lib in ncursesw ncurses curses ; do
titus@1973
    20
			if [ -f "${LIBPATH}/lib${lib}.${ext}" ]; then
titus@1973
    21
				echo "-L${LIBPATH} -l${lib}"
yann@1087
    22
				exit
yann@1087
    23
			fi
yann@1087
    24
		done
yann@1087
    25
	done
yann@1
    26
	exit 1
yann@1
    27
}
yann@1
    28
yann@1
    29
# Where is ncurses.h?
yann@1
    30
ccflags()
yann@1
    31
{
titus@1973
    32
	if [ -f "${INCLUDEPATH}/ncursesw/ncurses.h" ]; then
titus@1973
    33
		echo "-I${INCLUDEPATH} \"-DCURSES_LOC=<ncursesw/ncurses.h>\""
titus@1973
    34
	elif [ -f "${INCLUDEPATH}/ncurses/ncurses.h" ]; then
titus@1973
    35
		echo "-I${INCLUDEPATH} \"-DCURSES_LOC=<ncurses/ncurses.h>\""
titus@1973
    36
	elif [ -f "${INCLUDEPATH}/ncursesw/curses.h" ]; then
titus@1973
    37
		echo "-I${INCLUDEPATH} \"-DCURSES_LOC=<ncursesw/curses.h>\""
titus@1973
    38
	elif [ -f "${INCLUDEPATH}/ncurses/curses.h" ]; then
titus@1973
    39
		echo "-I${INCLUDEPATH} \"-DCURSES_LOC=<ncurses/curses.h>\""
titus@1973
    40
	elif [ -f "${INCLUDEPATH}/ncurses.h" ]; then
titus@1973
    41
		echo "-I${INCLUDEPATH} \"-DCURSES_LOC=<ncurses.h>\""
titus@1973
    42
	elif [ -f "${INCLUDEPATH}/curses.h" ]; then
titus@1973
    43
		echo "-I${INCLUDEPATH} \"-DCURSES_LOC=<curses.h>\""
yann@1
    44
	else
titus@1973
    45
		exit 1
yann@1
    46
	fi
yann@1
    47
}
yann@1
    48
yann@1
    49
# Temp file, try to clean up after us
yann@1
    50
tmp=.lxdialog.tmp
yann@1
    51
trap "rm -f $tmp" 0 1 2 3 15
yann@1
    52
yann@1
    53
# Check if we can link to ncurses
yann@1
    54
check() {
titus@1973
    55
        IF=`echo $(ccflags) | sed -e 's/"//g'`
titus@1973
    56
        $cc $IF $(ldflags) -xc - -o $tmp 2>/dev/null <<'EOF'
yann@1087
    57
#include CURSES_LOC
yann@1087
    58
main() {}
yann@1087
    59
EOF
yann@1087
    60
	if [ $? != 0 ]; then
yann@1087
    61
	    echo " *** Unable to find the ncurses libraries or the"       1>&2
yann@1087
    62
	    echo " *** required header files."                            1>&2
yann@1087
    63
	    echo " *** 'make menuconfig' requires the ncurses libraries." 1>&2
yann@1087
    64
	    echo " *** "                                                  1>&2
yann@1087
    65
	    echo " *** Install ncurses (ncurses-devel) and try again."    1>&2
yann@1087
    66
	    echo " *** "                                                  1>&2
yann@1087
    67
	    exit 1
yann@1
    68
	fi
yann@1
    69
}
yann@1
    70
yann@1
    71
usage() {
yann@1229
    72
	printf "Usage: $0 [-check compiler options|-ccflags|-ldflags compiler options]\n"
yann@1
    73
}
yann@1
    74
yann@706
    75
if [ $# -eq 0 ]; then
yann@1
    76
	usage
yann@1
    77
	exit 1
yann@1
    78
fi
yann@1
    79
yann@1
    80
cc=""
yann@1
    81
case "$1" in
yann@1
    82
	"-check")
yann@1
    83
		shift
yann@1
    84
		cc="$@"
yann@1
    85
		check
yann@1
    86
		;;
yann@1
    87
	"-ccflags")
yann@1
    88
		ccflags
yann@1
    89
		;;
yann@1
    90
	"-ldflags")
yann@1
    91
		shift
yann@1
    92
		cc="$@"
yann@1
    93
		ldflags
yann@1
    94
		;;
yann@1
    95
	"*")
yann@1
    96
		usage
yann@1
    97
		exit 1
yann@1
    98
		;;
yann@1
    99
esac