| #!@SHELL@ |
| # $Id: ncurses-config.in,v 1.50 2021/08/07 21:36:14 tom Exp $ |
| ############################################################################## |
| # Copyright 2018-2020,2021 Thomas E. Dickey # |
| # Copyright 2006-2015,2017 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"), # |
| # to deal in the Software without restriction, including without limitation # |
| # the rights to use, copy, modify, merge, publish, distribute, distribute # |
| # with modifications, sublicense, and/or sell copies of the Software, and to # |
| # permit persons to whom the Software is furnished to do so, subject to the # |
| # following conditions: # |
| # # |
| # The above copyright notice and this permission notice shall be included in # |
| # all copies or substantial portions of the Software. # |
| # # |
| # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # |
| # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # |
| # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # |
| # THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # |
| # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # |
| # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # |
| # DEALINGS IN THE SOFTWARE. # |
| # # |
| # Except as contained in this notice, the name(s) of the above copyright # |
| # holders shall not be used in advertising or otherwise to promote the sale, # |
| # use or other dealings in this Software without prior written # |
| # authorization. # |
| ############################################################################## |
| # |
| # Author: Thomas E. Dickey, 2006-on |
| |
| LANG=C; export LANG |
| LANGUAGE=C; export LANGUAGE |
| LC_ALL=C; export LC_ALL |
| LC_CTYPE=C; export LC_CTYPE |
| |
| prefix="@prefix@" |
| exec_prefix="@exec_prefix@" |
| |
| bindir="@bindir@" |
| includedir="@includedir@" |
| libdir="@libdir@" |
| datarootdir="@datarootdir@" |
| datadir="@datadir@" |
| mandir="@mandir@" |
| |
| THIS="@LIB_NAME@@USE_LIB_SUFFIX@" |
| TINFO_LIB="@TINFO_ARG_SUFFIX@" |
| RPATH_LIST="@RPATH_LIST@" |
| |
| includesubdir="@includedir@/${THIS}" |
| |
| # Ensure that RPATH_LIST contains only absolute pathnames, if it is nonempty. |
| # We cannot filter it out within the build-process since the variable is used |
| # in some special cases of installation using a relative path. |
| if [ -n "$RPATH_LIST" ] |
| then |
| save_IFS="$IFS" |
| IFS='@PATH_SEPARATOR@' |
| filtered= |
| for item in $RPATH_LIST |
| do |
| case "$item" in |
| ./*|../*|*/..|*/../*) |
| ;; |
| *) |
| [ -n "$filtered" ] && filtered="${filtered}@PATH_SEPARATOR@" |
| filtered="${filtered}${item}" |
| ;; |
| esac |
| done |
| IFS="$save_IFS" |
| # if the result is empty, there is little we can do to fix it |
| RPATH_LIST="$filtered" |
| fi |
| |
| # with --disable-overwrite, we installed into a subdirectory, but transformed |
| # the headers to include like this: |
| # <ncurses@LIB_SUFFIX@/curses.h> |
| if [ x@WITH_OVERWRITE@ = xno ]; then |
| case $includedir in |
| $prefix/include/ncurses@LIB_SUFFIX@@EXTRA_SUFFIX@) |
| includedir=`echo "$includedir" | sed -e 's,/[^/]*$,,'` |
| ;; |
| esac |
| fi |
| |
| LIBS="@LIBS@" |
| if [ "@TINFO_NAME@" = "@LIB_NAME@" ]; then |
| LIBS="-l${THIS} $LIBS" |
| else |
| LIBS="-l${THIS} -l${TINFO_LIB} $LIBS" |
| fi |
| |
| # Ignore -L options which do not correspond to an actual directory, or which |
| # are standard library directories (i.e., the linker is supposed to search |
| # those directories). |
| # |
| # There is no portable way to find the list of standard library directories. |
| # Require a POSIX shell anyway, to keep this simple. |
| lib_flags= |
| for opt in -L$libdir @EXTRA_PKG_LDFLAGS@ $LIBS |
| do |
| case $opt in |
| -specs*) # ignore linker specs-files which were used to build library |
| continue |
| ;; |
| -Wl,-z,*) # ignore flags used to manipulate shared image |
| continue |
| ;; |
| -Wl,--dynamic-linker*) # ignore ELF interpreter |
| continue |
| ;; |
| -L*) |
| lib_check=`echo "x$opt" | sed -e 's/^.-L//'` |
| [ -d "$lib_check" ] || continue |
| case "$lib_check" in |
| @LD_SEARCHPATH@) # skip standard libdir |
| if [ "$lib_check" = "$libdir" ] |
| then |
| lib_first=yes |
| IFS_save="$IFS" |
| IFS='|' |
| LIBDIRS="@LD_SEARCHPATH@" |
| for lib_check in $LIBDIRS |
| do |
| if [ -d "$lib_check" ] |
| then |
| if [ "$lib_check" != "$libdir" ] |
| then |
| lib_first=no |
| fi |
| break |
| fi |
| done |
| IFS="$IFS_save" |
| [ $lib_first = yes ] && continue |
| found=no |
| for check in $lib_flags |
| do |
| if [ "x$check" = "x$opt" ] |
| then |
| found=yes |
| break |
| fi |
| done |
| [ $found = yes ] && continue |
| : |
| else |
| continue |
| fi |
| ;; |
| *) |
| found=no |
| for check in $lib_flags |
| do |
| if [ "x$check" = "x$opt" ] |
| then |
| found=yes |
| break |
| fi |
| done |
| [ $found = yes ] && continue |
| ;; |
| esac |
| ;; |
| esac |
| lib_flags="$lib_flags $opt" |
| done |
| |
| [ $# = 0 ] && exec @SHELL@ $0 --error |
| |
| while [ $# -gt 0 ]; do |
| case "$1" in |
| # basic configuration |
| --prefix) |
| echo "$prefix" |
| ;; |
| --exec-prefix) |
| echo "$exec_prefix" |
| ;; |
| # compile/link |
| --cflags) |
| INCS="@PKG_CFLAGS@" |
| if [ "x@WITH_OVERWRITE@" = xno ]; then |
| INCS="$INCS -I${includesubdir}" |
| fi |
| if [ "${includedir}" != /usr/include ]; then |
| INCS="$INCS -I${includedir}" |
| fi |
| sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO |
| $INCS |
| ENDECHO |
| ;; |
| --libs) |
| OPTS= |
| for opt in $lib_flags |
| do |
| [ -n "$OPTS" ] && OPTS="$OPTS " |
| OPTS="${OPTS}${opt}" |
| done |
| printf "%s\n" "$OPTS" |
| ;; |
| --libs-only-L) |
| OPTS= |
| for opt in $lib_flags |
| do |
| case "x$opt" in |
| x-L*) |
| [ -n "$OPTS" ] && OPTS="$OPTS " |
| OPTS="${OPTS}${opt}" |
| ;; |
| esac |
| done |
| printf "%s\n" "$OPTS" |
| ;; |
| --libs-only-l) |
| OPTS= |
| for opt in $lib_flags |
| do |
| case "x$opt" in |
| x-l*) |
| [ -n "$OPTS" ] && OPTS="$OPTS " |
| OPTS="${OPTS}${opt}" |
| ;; |
| esac |
| done |
| printf "%s\n" "$OPTS" |
| ;; |
| --libs-only-other) |
| OPTS= |
| for opt in $lib_flags |
| do |
| case "x$opt" in |
| x-[lL]*) |
| ;; |
| *) |
| [ -n "$OPTS" ] && OPTS="$OPTS " |
| OPTS="${OPTS}${opt}" |
| ;; |
| esac |
| done |
| printf "%s\n" "$OPTS" |
| ;; |
| # identification |
| --version) |
| echo "@NCURSES_MAJOR@.@NCURSES_MINOR@.@NCURSES_PATCH@" |
| ;; |
| --abi-version) |
| echo "@cf_cv_abi_version@" |
| ;; |
| --mouse-version) |
| echo "@NCURSES_MOUSE_VERSION@" |
| ;; |
| # locations |
| --bindir) |
| echo "${bindir}" |
| ;; |
| --datadir) |
| echo "${datadir}" |
| ;; |
| --includedir) |
| INCS= |
| if [ "x@WITH_OVERWRITE@" = xno ]; then |
| INCS="${includesubdir}" |
| elif [ "${includedir}" != /usr/include ]; then |
| INCS="${includedir}" |
| fi |
| echo $INCS |
| ;; |
| --libdir) |
| echo "${libdir}" |
| ;; |
| --mandir) |
| echo "${mandir}" |
| ;; |
| --terminfo) |
| echo "@TERMINFO@" |
| ;; |
| --terminfo-dirs) |
| echo "@TERMINFO_DIRS@" |
| ;; |
| --termpath) |
| echo "@TERMPATH@" |
| ;; |
| # general info |
| --help) |
| cat <<ENDHELP |
| Usage: `basename $0` [options] |
| |
| Options: |
| --prefix echos the package-prefix of ${THIS} |
| --exec-prefix echos the executable-prefix of ${THIS} |
| |
| --cflags echos the C compiler flags needed to compile with ${THIS} |
| --libs echos the libraries needed to link with ${THIS} |
| |
| --libs-only-L echos -L linker options (search path) for ${THIS} |
| --libs-only-l echos -l linker options (libraries) for ${THIS} |
| --libs-only-other echos linker options other than -L/-l |
| |
| --version echos the release+patchdate version of ${THIS} |
| --abi-version echos the ABI version of ${THIS} |
| --mouse-version echos the mouse-interface version of ${THIS} |
| |
| --bindir echos the directory containing ${THIS} programs |
| --datadir echos the directory containing ${THIS} data |
| --includedir echos the directory containing ${THIS} header files |
| --libdir echos the directory containing ${THIS} libraries |
| --mandir echos the directory containing ${THIS} manpages |
| --terminfo echos the \$TERMINFO terminfo database path |
| --terminfo-dirs echos the \$TERMINFO_DIRS directory list |
| --termpath echos the \$TERMPATH termcap list |
| |
| --help prints this message |
| ENDHELP |
| ;; |
| --error|*) |
| @SHELL@ $0 --help 1>&2 |
| exit 1 |
| ;; |
| esac |
| shift |
| done |
| # vi:ts=4 sw=4 |
| # vile:shmode |