mirror of
https://github.com/Aigor44/ncursesw-morphos.git
synced 2024-12-15 07:30:12 +08:00
399 lines
12 KiB
Plaintext
Executable File
399 lines
12 KiB
Plaintext
Executable File
# Local configure fragment for ncurses/sysdeps/unix/sysv/linux.
|
|
|
|
nc_given_srcdir=${srcdir}/ncurses
|
|
|
|
NCURSES_MAJOR="`egrep '^NCURSES_MAJOR[ ]*=' $nc_given_srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
|
|
NCURSES_MINOR="`egrep '^NCURSES_MINOR[ ]*=' $nc_given_srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
|
|
NCURSES_PATCH="`egrep '^NCURSES_PATCH[ ]*=' $nc_given_srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
|
|
cf_cv_abi_version=${NCURSES_MAJOR}
|
|
cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
|
|
|
|
# Default to char
|
|
if [ x${cf_cv_type_of_bool} = x ]
|
|
then
|
|
cf_cv_type_of_bool=char
|
|
fi
|
|
|
|
rm -f ncurses/MKterm.h.awk \
|
|
ncurses/codes.c \
|
|
ncurses/comp_captab.c \
|
|
ncurses/confdefs.h \
|
|
ncurses/config.log \
|
|
ncurses/curses.h \
|
|
ncurses/expanded.c \
|
|
ncurses/fallback.c \
|
|
ncurses/hashsize.h \
|
|
ncurses/keys.tries \
|
|
ncurses/lib_gen.c \
|
|
ncurses/lib_keyname.c \
|
|
ncurses/names.c \
|
|
ncurses/ncurses_cfg.h \
|
|
ncurses/nomacros.h \
|
|
ncurses/parametrized.h \
|
|
ncurses/term.h \
|
|
ncurses/termcap.h \
|
|
ncurses/terminfo.5 \
|
|
ncurses/termsort.c \
|
|
ncurses/unctrl.c \
|
|
ncurses/unctrl.h
|
|
|
|
# Protect against being on the right side of a sed subst in config.status.
|
|
sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\&%]/\\&/g;
|
|
s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<EOF
|
|
|
|
|
|
s%@DEFS@%-DHAVE_CONFIG_H%g
|
|
s%@NCURSES_MAJOR@%$NCURSES_MAJOR%g
|
|
s%@NCURSES_MINOR@%$NCURSES_MINOR%g
|
|
s%@NCURSES_PATCH@%$NCURSES_PATCH%g
|
|
s%@cf_cv_rel_version@%$cf_cv_rel_version%g
|
|
s%@cf_cv_abi_version@%$cf_cv_abi_version%g
|
|
s%@cf_cv_builtin_bool@%1%g
|
|
s%@cf_cv_type_of_bool@%$cf_cv_type_of_bool%g
|
|
s%@cf_cv_shift_limit@%32%g
|
|
s%@cf_cv_widec_shift@%8%g
|
|
s%@cf_cv_typeof_chtype@%long%g
|
|
s%@cf_cv_1UL@%1UL%g
|
|
|
|
EOF
|
|
|
|
# Split the substitutions into bite-sized pieces for seds with
|
|
# small command number limits, like on Digital OSF/1 and HP-UX.
|
|
nc_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
|
|
nc_file=1 # Number of current file.
|
|
nc_beg=1 # First line for current file.
|
|
nc_end=$nc_max_sed_cmds # Line after last line for current file.
|
|
nc_more_lines=:
|
|
nc_sed_cmds=""
|
|
while $nc_more_lines; do
|
|
if test $nc_beg -gt 1; then
|
|
sed "1,${nc_beg}d; ${nc_end}q" conftest.subs > conftest.s$nc_file
|
|
else
|
|
sed "${nc_end}q" conftest.subs > conftest.s$nc_file
|
|
fi
|
|
if test ! -s conftest.s$nc_file; then
|
|
nc_more_lines=false
|
|
rm -f conftest.s$nc_file
|
|
else
|
|
if test -z "$nc_sed_cmds"; then
|
|
nc_sed_cmds="sed -f conftest.s$nc_file"
|
|
else
|
|
nc_sed_cmds="$nc_sed_cmds | sed -f conftest.s$nc_file"
|
|
fi
|
|
nc_file=`expr $nc_file + 1`
|
|
nc_beg=$nc_end
|
|
nc_end=`expr $nc_end + $nc_max_sed_cmds`
|
|
fi
|
|
done
|
|
if test -z "$nc_sed_cmds"; then
|
|
nc_sed_cmds=cat
|
|
fi
|
|
|
|
NC_CONFIG_FILES=${NC_CONFIG_FILES-"ncurses/MKterm.h.awk ncurses/curses.h ncurses/termcap.h ncurses/unctrl.h"}
|
|
for nc_file in .. $NC_CONFIG_FILES; do if test "x$nc_file" != x..; then
|
|
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
|
|
case "$nc_file" in
|
|
*:*) nc_file_in=`echo "$nc_file"|sed 's%[^:]*:%%'`
|
|
nc_file=`echo "$nc_file"|sed 's%:.*%%'` ;;
|
|
*) nc_file_in=`echo "${nc_file}" | sed 's%ncurses%include%'`.in ;;
|
|
esac
|
|
|
|
# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
|
|
|
|
# Remove last slash and all that follows it. Not all systems have dirname.
|
|
nc_dir=`echo $nc_file|sed 's%/[^/][^/]*$%%'`
|
|
if test "$nc_dir" != "$nc_file" && test "$nc_dir" != .; then
|
|
# The file is in a subdirectory.
|
|
test ! -d "$nc_dir" && mkdir "$nc_dir"
|
|
nc_dir_suffix="/`echo $nc_dir|sed 's%^\./%%'`"
|
|
# A "../" for each directory in $nc_dir_suffix.
|
|
nc_dots=`echo $nc_dir_suffix|sed 's%/[^/]*%../%g'`
|
|
else
|
|
nc_dir_suffix= nc_dots=
|
|
fi
|
|
|
|
case "$nc_given_srcdir" in
|
|
.) nc_srcdir=.
|
|
if test -z "$nc_dots"; then nc_top_srcdir=.
|
|
else nc_top_srcdir=`echo $nc_dots|sed 's%/$%%'`; fi ;;
|
|
/*) nc_srcdir="$nc_given_srcdir$nc_dir_suffix"; nc_top_srcdir="$nc_given_srcdir" ;;
|
|
*) # Relative path.
|
|
nc_srcdir="$nc_dots$nc_given_srcdir$nc_dir_suffix"
|
|
nc_top_srcdir="$nc_dots$nc_given_srcdir" ;;
|
|
esac
|
|
|
|
case "$ac_given_INSTALL" in
|
|
[/$]*) NC_INSTALL="$ac_given_INSTALL" ;;
|
|
*) NC_INSTALL="$nc_dots$ac_given_INSTALL" ;;
|
|
esac
|
|
|
|
echo creating "$nc_file"
|
|
rm -f "$nc_file"
|
|
configure_input="Generated automatically from `echo $nc_file_in|sed 's%.*/%%'` by configure."
|
|
case "$nc_file" in
|
|
*Makefile*) nc_comsub="1i\\
|
|
# $configure_input" ;;
|
|
*) nc_comsub= ;;
|
|
esac
|
|
|
|
nc_file_inputs=`echo $nc_file_in|sed -e "s%^%$nc_given_srcdir/%" -e "s%:% $nc_given_srcdir/%g"`
|
|
sed -e "$nc_comsub
|
|
s%@configure_input@%$configure_input%g
|
|
s%@nc_srcdir@%$nc_srcdir%g
|
|
s%@nc_top_srcdir@%$nc_top_srcdir%g
|
|
s%@INSTALL@%$NC_INSTALL%g
|
|
" $nc_file_inputs | (eval "$nc_sed_cmds") > $nc_file
|
|
fi; done
|
|
rm -f conftest.s*
|
|
|
|
# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
|
|
# NAME is the cpp macro being defined and VALUE is the value it is being given.
|
|
#
|
|
# nc_d sets the value in "#define NAME VALUE" lines.
|
|
nc_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)'
|
|
nc_dB='\([ ][ ]*\)[^ ]*%\1#\2'
|
|
nc_dC='\3'
|
|
nc_dD='%g'
|
|
# nc_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
|
|
nc_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
|
|
nc_uB='\([ ]\)%\1#\2define\3'
|
|
nc_uC=' '
|
|
nc_uD='\4%g'
|
|
# nc_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
|
|
nc_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
|
|
nc_eB='$%\1#\2define\3'
|
|
nc_eC=' '
|
|
nc_eD='%g'
|
|
|
|
NC_CONFIG_HEADERS="ncurses/ncurses_cfg.h:include/ncurses_cfg.hin"
|
|
for nc_file in .. $NC_CONFIG_HEADERS; do if test "x$nc_file" != x..; then
|
|
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
|
|
case "$nc_file" in
|
|
*:*) nc_file_in=`echo "$nc_file"|sed 's%[^:]*:%%'`
|
|
nc_file=`echo "$nc_file"|sed 's%:.*%%'` ;;
|
|
*) nc_file_in="${nc_file}.in" ;;
|
|
esac
|
|
|
|
echo creating $nc_file
|
|
|
|
rm -f conftest.frag conftest.in conftest.out
|
|
nc_file_inputs=`echo $nc_file_in|sed -e "s%^%$nc_given_srcdir/%" -e "s%:% $nc_given_srcdir/%g"`
|
|
cat $nc_file_inputs > conftest.in
|
|
|
|
rm -f conftest.frag
|
|
cat >> conftest.frag <<CEOF
|
|
|
|
#define CC_HAS_INLINE_FUNCS 1
|
|
#define GCC_NORETURN __attribute__((noreturn))
|
|
#define GCC_PRINTF 1
|
|
#define GCC_SCANF 1
|
|
#define GCC_UNUSED __attribute__((unused))
|
|
#define GOOD_SELECT 1
|
|
#define HAVE_ISASCII 1
|
|
#define HAVE_BUILTIN_H 1
|
|
#define HAVE_DIRENT_H 1
|
|
#define HAVE_FCNTL_H 1
|
|
#define HAVE_FORM_H 1
|
|
#define HAVE_GETOPT_H 1
|
|
CEOF
|
|
cat >> conftest.frag <<CEOF
|
|
#define HAVE_GETTIMEOFDAY 1
|
|
#define HAVE_GETTTYNAM 1
|
|
#define HAVE_LIBFORM 1
|
|
#define HAVE_LIBMENU 1
|
|
#define HAVE_LIBPANEL 1
|
|
#define HAVE_LIMITS_H 1
|
|
#define HAVE_LINK 1
|
|
#define HAVE_LOCALE_H 1
|
|
#define HAVE_LONG_FILE_NAMES 1
|
|
#define HAVE_MEMCCPY 1
|
|
#define HAVE_MENU_H 1
|
|
#define HAVE_NC_ALLOC_H 1
|
|
CEOF
|
|
cat >> conftest.frag <<CEOF
|
|
#define HAVE_PANEL_H 1
|
|
#define HAVE_POLL 1
|
|
#define HAVE_POLL_H 1
|
|
#define HAVE_REGEX_H_FUNCS 1
|
|
#define HAVE_REMOVE 1
|
|
#define HAVE_SELECT 1
|
|
#define HAVE_SETBUF 1
|
|
#define HAVE_SETBUFFER 1
|
|
#define HAVE_SETVBUF 1
|
|
#define HAVE_SIGACTION 1
|
|
#define HAVE_SIGVEC 1
|
|
#define HAVE_SIZECHANGE 1
|
|
CEOF
|
|
cat >> conftest.frag <<CEOF
|
|
#define HAVE_STRDUP 1
|
|
#define HAVE_SYS_IOCTL_H 1
|
|
#define HAVE_SYS_PARAM_H 1
|
|
#define HAVE_SYS_SELECT_H 1
|
|
#define HAVE_SYS_TIMES_H 1
|
|
#define HAVE_SYS_TIME_H 1
|
|
#define HAVE_SYS_TIME_SELECT 1
|
|
#define HAVE_TCGETATTR 1
|
|
#define HAVE_TERMIOS_H 1
|
|
#define HAVE_TERMIO_H 1
|
|
#define HAVE_TIMES 1
|
|
#define HAVE_TTYENT_H 1
|
|
CEOF
|
|
cat >> conftest.frag <<CEOF
|
|
#define HAVE_TYPEINFO 1
|
|
#define HAVE_UNISTD_H 1
|
|
#define HAVE_USLEEP 1
|
|
#define HAVE_VALUES_H 1
|
|
#define HAVE_VFSCANF 1
|
|
#define HAVE_VSNPRINTF 1
|
|
#define HAVE_VSSCANF 1
|
|
#define NCURSES_EXT_FUNCS 1
|
|
#define NDEBUG 1
|
|
#define PURE_TERMINFO 1
|
|
#define RETSIGTYPE void
|
|
#define STDC_HEADERS 1
|
|
CEOF
|
|
cat >> conftest.frag <<CEOF
|
|
#define SYSTEM_NAME "linux-gnu"
|
|
#define TYPEOF_CHTYPE long
|
|
#define USE_DATABASE 1
|
|
#define USE_SCROLL_HINTS 1
|
|
CEOF
|
|
cat >> conftest.edit <<CEOF
|
|
/@DEFS@/r conftest.frag
|
|
/@DEFS@/d
|
|
CEOF
|
|
sed -f conftest.edit conftest.in > conftest.out
|
|
rm -f conftest.in
|
|
mv conftest.out conftest.in
|
|
rm -f conftest.edit conftest.frag
|
|
|
|
rm -f conftest.frag conftest.h
|
|
echo "/* $nc_file. Generated automatically by configure. */" > conftest.h
|
|
cat conftest.in >> conftest.h
|
|
rm -f conftest.in
|
|
if cmp -s $nc_file conftest.h 2>/dev/null; then
|
|
echo "$nc_file is unchanged"
|
|
rm -f conftest.h
|
|
else
|
|
# Remove last slash and all that follows it. Not all systems have dirname.
|
|
nc_dir=`echo $nc_file|sed 's%/[^/][^/]*$%%'`
|
|
if test "$nc_dir" != "$nc_file" && test "$nc_dir" != .; then
|
|
# The file is in a subdirectory.
|
|
test ! -d "$nc_dir" && mkdir "$nc_dir"
|
|
fi
|
|
rm -f $nc_file
|
|
mv conftest.h $nc_file
|
|
fi
|
|
fi; done
|
|
|
|
|
|
SYS_NAME=`uname -a`
|
|
if test -z "$SYS_NAME"; then SYS_NAME=unknown;fi
|
|
|
|
NC_AWK=awk
|
|
BUILD_CC=${BUILD_CC-gcc}
|
|
NC_CC="${BUILD_CC} -I${nc_given_srcdir}/ncurses -Incurses -I${nc_given_srcdir}/include"
|
|
NC_CPP="${NC_CC} -E"
|
|
CF_LIST_MODELS="normal"
|
|
#WITH_ECHO="yes"
|
|
#WITH_OVERWRITE="yes"
|
|
nc_cxx_library="yes"
|
|
cf_cv_systype="Linux"
|
|
cf_cv_rel_version="4.2"
|
|
cf_cv_abi_version="4"
|
|
cf_cv_do_symlinks="yes"
|
|
cf_cv_rm_so_locs="no"
|
|
|
|
|
|
rm -f headers.sed headers.sh
|
|
|
|
echo creating headers.sh
|
|
cat >headers.sh <<NC_EOF
|
|
#!/bin/sh
|
|
# This shell script is generated by the 'configure' script. It is invoked in a
|
|
# subdirectory of the build tree. It generates a sed-script in the parent
|
|
# directory that is used to adjust includes for header files that reside in a
|
|
# subdirectory of /usr/include, etc.
|
|
PRG=""
|
|
while test \$# != 3
|
|
do
|
|
PRG="\$PRG \$1"; shift
|
|
done
|
|
DST=\$1
|
|
REF=\$2
|
|
SRC=\$3
|
|
echo installing \$SRC in \$DST
|
|
case \$DST in
|
|
/*/include/*)
|
|
TMP=\${TMPDIR-/tmp}/\`basename \$SRC\`
|
|
if test ! -f ../headers.sed ; then
|
|
END=\`basename \$DST\`
|
|
for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
|
|
do
|
|
NAME=\`basename \$i\`
|
|
echo "s/<\$NAME>/<\$END\/\$NAME>/" >> ../headers.sed
|
|
done
|
|
fi
|
|
rm -f \$TMP
|
|
sed -f ../headers.sed \$SRC > \$TMP
|
|
eval \$PRG \$TMP \$DST
|
|
rm -f \$TMP
|
|
;;
|
|
*)
|
|
eval \$PRG \$SRC \$DST
|
|
;;
|
|
esac
|
|
NC_EOF
|
|
|
|
chmod 0755 headers.sh
|
|
|
|
echo creating ncurses/term.h
|
|
${NC_AWK} -f ncurses/MKterm.h.awk ${nc_given_srcdir}/include/Caps > ncurses/term.h
|
|
sh ${nc_given_srcdir}/include/edit_cfg.sh ncurses/ncurses_cfg.h ncurses/term.h
|
|
|
|
echo creating ncurses/hashsize.h
|
|
sh ${nc_given_srcdir}/include/MKhashsize.sh ${nc_given_srcdir}/include/Caps > ncurses/hashsize.h
|
|
|
|
echo creating ncurses/parametrized.h
|
|
sh ${nc_given_srcdir}/include/MKparametrized.sh ${nc_given_srcdir}/include/Caps > ncurses/parametrized.h
|
|
|
|
echo creating ncurses/termsort.c
|
|
sh ${nc_given_srcdir}/progs/MKtermsort.sh "${NC_AWK}" ${nc_given_srcdir}/include/Caps > ncurses/termsort.c
|
|
|
|
echo creating ncurses/fallback.c
|
|
sh ${nc_given_srcdir}/ncurses/MKfallback.sh > ncurses/fallback.c
|
|
|
|
echo creating ncurses/lib_gen.c
|
|
sh ${nc_given_srcdir}/ncurses/MKlib_gen.sh "${NC_CPP}" "${NC_AWK}" < ncurses/curses.h > ncurses/lib_gen.c
|
|
|
|
echo creating ncurses/nomacros.h
|
|
sh ${nc_given_srcdir}/ncurses/MKlib_gen.sh "${NC_CPP}" "${NC_AWK}" < ncurses/curses.h | fgrep undef > ncurses/nomacros.h
|
|
|
|
echo creating ncurses/expanded.c
|
|
sh ${nc_given_srcdir}/ncurses/MKexpanded.sh "${NC_CPP}"
|
|
mv expanded.c ncurses/expanded.c
|
|
|
|
echo creating ncurses/comp_captab.c
|
|
${NC_CC} -o make_hash -DMAIN_PROGRAM ${nc_given_srcdir}/ncurses/comp_hash.c
|
|
sh ${nc_given_srcdir}/ncurses/MKcaptab.awk "${NC_AWK}" ${nc_given_srcdir}/include/Caps > ncurses/comp_captab.c
|
|
rm -f make_hash
|
|
|
|
echo creating ncurses/lib_keyname.c
|
|
${NC_AWK} -f ${nc_given_srcdir}/ncurses/MKkeyname.awk ${nc_given_srcdir}/ncurses/keys.list > ncurses/lib_keyname.c
|
|
|
|
echo creating ncurses/names.c and ncurses/codes.c
|
|
${NC_AWK} -f ${nc_given_srcdir}/ncurses/MKnames.awk ${nc_given_srcdir}/include/Caps
|
|
cat namehdr boolnames boolfnames numnames numfnames strnames strfnames nameftr >ncurses/names.c
|
|
cat namehdr boolcodes numcodes strcodes codeftr > ncurses/codes.c
|
|
rm -f namehdr nameftr codeftr boolnames boolfnames boolcodes numnames numfnames numcodes strnames strfnames strcodes
|
|
|
|
echo creating ncurses/keys.tries
|
|
${NC_CC} -o make_key ${nc_given_srcdir}/ncurses/make_keys.c
|
|
./make_key ${nc_given_srcdir}/ncurses/keys.list > ncurses/keys.tries
|
|
rm -f make_key
|
|
|
|
echo creating ncurses/unctrl.c
|
|
echo | ${NC_AWK} -f ${nc_given_srcdir}/ncurses/MKunctrl.awk > ncurses/unctrl.c
|
|
echo creating ncurses/terminfo.5
|
|
sh ${nc_given_srcdir}/man/MKterminfo.sh ${nc_given_srcdir}/man/terminfo.head ${nc_given_srcdir}/include/Caps ${nc_given_srcdir}/man/terminfo.tail > ncurses/terminfo.5
|