X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=misc%2Frun_tic.in;h=9cbb4eefa4e428757d78d59e398f2c9fcc6ae6ef;hp=295ae0780d725b1b2b440924577f95b57e5e757b;hb=da5e7c6148aa378da9d8da09be73e0ddd3995c6f;hpb=46722468f47c2b77b3987729b4bcf2321cccfd01 diff --git a/misc/run_tic.in b/misc/run_tic.in index 295ae078..9cbb4eef 100644 --- a/misc/run_tic.in +++ b/misc/run_tic.in @@ -1,6 +1,7 @@ #!@SHELL@ +# $Id: run_tic.in,v 1.29 2010/10/23 20:49:04 tom Exp $ ############################################################################## -# Copyright (c) 1998,2000 Free Software Foundation, Inc. # +# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # # # # Permission is hereby granted, free of charge, to any person obtaining a # # copy of this software and associated documentation files (the "Software"), # @@ -27,9 +28,8 @@ # authorization. # ############################################################################## # -# Author: Thomas E. Dickey 1996,2000 +# Author: Thomas E. Dickey 1996-on # -# $Id: run_tic.in,v 1.11 2001/10/14 00:44:33 tom Exp $ # This script is used to install terminfo.src using tic. We use a script # because the path checking is too awkward to do in a makefile. # @@ -41,83 +41,115 @@ echo '** Building terminfo database, please wait...' # The script is designed to be run from the misc/Makefile as # make install.data -: ${suffix=@PROG_EXT@} -: ${DESTDIR=@DESTDIR@} -: ${prefix=@prefix@} -: ${exec_prefix=@exec_prefix@} -: ${bindir=@bindir@} -: ${top_srcdir=@top_srcdir@} -: ${srcdir=@srcdir@} -: ${datadir=@datadir@} -: ${ticdir=@TERMINFO@} -: ${source=@TERMINFO_SRC@} -: ${LN_S="@LN_S@"} -: ${THAT_CC=cc} -: ${THIS_CC=cc} +: ${suffix:=@PROG_EXT@} +: ${DESTDIR:=@DESTDIR@} +: ${prefix:=@prefix@} +: ${exec_prefix:=@exec_prefix@} +: ${bindir:=@bindir@} +: ${top_srcdir:=@top_srcdir@} +: ${srcdir:=@srcdir@} +: ${datadir:=@datadir@} +: ${TIC_PATH:=@TIC_PATH@} +: ${ticdir:=@TERMINFO@} +: ${source:=@TERMINFO_SRC@} +: ${LN_S:="@LN_S@"} +: ${cross_compiling:=no} +: ${ext_funcs:=@NCURSES_EXT_FUNCS@} test -z "${DESTDIR}" && DESTDIR= # Allow tic to run either from the install-path, or from the build-directory. # Do not do this if we appear to be cross-compiling. In that case, we rely # on the host's copy of tic to compile the terminfo database. -if test "$THAT_CC" = "$THIS_CC" ; then -case "$PATH" in -:*) PATH=../progs:${DESTDIR}$bindir$PATH ;; -*) PATH=../progs:${DESTDIR}$bindir:$PATH ;; -esac -export PATH +if test "x$cross_compiling" = "xno" +then + if test -f ../progs/tic$suffix + then + case "$PATH" in + @PATH_SEPARATOR@*) + PATH=../progs@PATH_SEPARATOR@../lib@PATH_SEPARATOR@${DESTDIR}$bindir$PATH + ;; + *) + PATH=../progs@PATH_SEPARATOR@../lib@PATH_SEPARATOR@${DESTDIR}$bindir@PATH_SEPARATOR@$PATH + ;; + esac + export PATH + SHLIB="sh $srcdir/shlib" + TIC_PATH="$SHLIB tic" + elif test "$TIC_PATH" = unknown + then + echo '? no tic program found' + exit 1 + fi +else + # Cross-compiling, so don't set PATH or run shlib. + SHLIB= + # reset $suffix, since it applies to the target, not the build platform. + suffix= fi -# + # set another env var that doesn't get reset when `shlib' runs, so `shlib' uses # the PATH we just set. -# -NEWPATH=$PATH -export NEWPATH -PROG_BIN_DIR=${DESTDIR}$bindir -export PROG_BIN_DIR +SHLIB_PATH=$PATH +export SHLIB_PATH + +# set a variable to simplify environment update in shlib +SHLIB_HOST=@host_os@ +export SHLIB_HOST +# don't use user's TERMINFO variable TERMINFO=${DESTDIR}$ticdir ; export TERMINFO umask 022 # Construct the name of the old (obsolete) pathname, e.g., /usr/lib/terminfo. -TICDIR=`echo $TERMINFO | sed -e 's@/share/@/lib/@'` +TICDIR=`echo $TERMINFO | sed -e 's%/share/\([^/]*\)$%/lib/\1%'` # Remove the old terminfo stuff; we don't care if it existed before, and it # would generate a lot of confusing error messages if we tried to overwrite it. # We explicitly remove its contents rather than the directory itself, in case # the directory is actually a symbolic link. -( cd $TERMINFO && rm -fr ? 2>/dev/null ) +( test -d "$TERMINFO" && cd $TERMINFO && rm -fr ? 2>/dev/null ) -# If we're not installing into /usr/share/, we'll have to adjust the location -# of the tabset files in terminfo.src (which are in a parallel directory). -TABSET=`echo $ticdir | sed -e 's@/terminfo$@/tabset@'` -if test "x$TABSET" != "x/usr/share/tabset" ; then - echo '** adjusting tabset paths' - TMP=${TMPDIR-/tmp}/$$ - sed -e s:/usr/share/tabset:$TABSET:g $source >$TMP - trap "rm -f $TMP" 0 1 2 5 15 - source=$TMP -fi +if test "$ext_funcs" = 1 ; then +cat <