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