1#!@SHELL@ 2# $Id: ncurses-config.in,v 1.50 2021/08/07 21:36:14 tom Exp $ 3############################################################################## 4# Copyright 2018-2020,2021 Thomas E. Dickey # 5# Copyright 2006-2015,2017 Free Software Foundation, Inc. # 6# # 7# Permission is hereby granted, free of charge, to any person obtaining a # 8# copy of this software and associated documentation files (the "Software"), # 9# to deal in the Software without restriction, including without limitation # 10# the rights to use, copy, modify, merge, publish, distribute, distribute # 11# with modifications, sublicense, and/or sell copies of the Software, and to # 12# permit persons to whom the Software is furnished to do so, subject to the # 13# following conditions: # 14# # 15# The above copyright notice and this permission notice shall be included in # 16# all copies or substantial portions of the Software. # 17# # 18# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # 19# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # 20# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # 21# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # 22# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # 23# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # 24# DEALINGS IN THE SOFTWARE. # 25# # 26# Except as contained in this notice, the name(s) of the above copyright # 27# holders shall not be used in advertising or otherwise to promote the sale, # 28# use or other dealings in this Software without prior written # 29# authorization. # 30############################################################################## 31# 32# Author: Thomas E. Dickey, 2006-on 33 34LANG=C; export LANG 35LANGUAGE=C; export LANGUAGE 36LC_ALL=C; export LC_ALL 37LC_CTYPE=C; export LC_CTYPE 38 39prefix="@prefix@" 40exec_prefix="@exec_prefix@" 41 42bindir="@bindir@" 43includedir="@includedir@" 44libdir="@libdir@" 45datarootdir="@datarootdir@" 46datadir="@datadir@" 47mandir="@mandir@" 48 49THIS="@LIB_NAME@@USE_LIB_SUFFIX@" 50TINFO_LIB="@TINFO_ARG_SUFFIX@" 51RPATH_LIST="@RPATH_LIST@" 52 53includesubdir="@includedir@/${THIS}" 54 55# Ensure that RPATH_LIST contains only absolute pathnames, if it is nonempty. 56# We cannot filter it out within the build-process since the variable is used 57# in some special cases of installation using a relative path. 58if [ -n "$RPATH_LIST" ] 59then 60 save_IFS="$IFS" 61 IFS='@PATH_SEPARATOR@' 62 filtered= 63 for item in $RPATH_LIST 64 do 65 case "$item" in 66 ./*|../*|*/..|*/../*) 67 ;; 68 *) 69 [ -n "$filtered" ] && filtered="${filtered}@PATH_SEPARATOR@" 70 filtered="${filtered}${item}" 71 ;; 72 esac 73 done 74 IFS="$save_IFS" 75 # if the result is empty, there is little we can do to fix it 76 RPATH_LIST="$filtered" 77fi 78 79# with --disable-overwrite, we installed into a subdirectory, but transformed 80# the headers to include like this: 81# <ncurses@LIB_SUFFIX@/curses.h> 82if [ x@WITH_OVERWRITE@ = xno ]; then 83 case $includedir in 84 $prefix/include/ncurses@LIB_SUFFIX@@EXTRA_SUFFIX@) 85 includedir=`echo "$includedir" | sed -e 's,/[^/]*$,,'` 86 ;; 87 esac 88fi 89 90LIBS="@LIBS@" 91if [ "@TINFO_NAME@" = "@LIB_NAME@" ]; then 92 LIBS="-l${THIS} $LIBS" 93else 94 LIBS="-l${THIS} -l${TINFO_LIB} $LIBS" 95fi 96 97# Ignore -L options which do not correspond to an actual directory, or which 98# are standard library directories (i.e., the linker is supposed to search 99# those directories). 100# 101# There is no portable way to find the list of standard library directories. 102# Require a POSIX shell anyway, to keep this simple. 103lib_flags= 104for opt in -L$libdir @EXTRA_PKG_LDFLAGS@ $LIBS 105do 106 case $opt in 107 -specs*) # ignore linker specs-files which were used to build library 108 continue 109 ;; 110 -Wl,-z,*) # ignore flags used to manipulate shared image 111 continue 112 ;; 113 -Wl,--dynamic-linker*) # ignore ELF interpreter 114 continue 115 ;; 116 -L*) 117 lib_check=`echo "x$opt" | sed -e 's/^.-L//'` 118 [ -d "$lib_check" ] || continue 119 case "$lib_check" in 120 @LD_SEARCHPATH@) # skip standard libdir 121 if [ "$lib_check" = "$libdir" ] 122 then 123 lib_first=yes 124 IFS_save="$IFS" 125 IFS='|' 126 LIBDIRS="@LD_SEARCHPATH@" 127 for lib_check in $LIBDIRS 128 do 129 if [ -d "$lib_check" ] 130 then 131 if [ "$lib_check" != "$libdir" ] 132 then 133 lib_first=no 134 fi 135 break 136 fi 137 done 138 IFS="$IFS_save" 139 [ $lib_first = yes ] && continue 140 found=no 141 for check in $lib_flags 142 do 143 if [ "x$check" = "x$opt" ] 144 then 145 found=yes 146 break 147 fi 148 done 149 [ $found = yes ] && continue 150 : 151 else 152 continue 153 fi 154 ;; 155 *) 156 found=no 157 for check in $lib_flags 158 do 159 if [ "x$check" = "x$opt" ] 160 then 161 found=yes 162 break 163 fi 164 done 165 [ $found = yes ] && continue 166 ;; 167 esac 168 ;; 169 esac 170 lib_flags="$lib_flags $opt" 171done 172 173[ $# = 0 ] && exec @SHELL@ $0 --error 174 175while [ $# -gt 0 ]; do 176 case "$1" in 177 # basic configuration 178 --prefix) 179 echo "$prefix" 180 ;; 181 --exec-prefix) 182 echo "$exec_prefix" 183 ;; 184 # compile/link 185 --cflags) 186 INCS="@PKG_CFLAGS@" 187 if [ "x@WITH_OVERWRITE@" = xno ]; then 188 INCS="$INCS -I${includesubdir}" 189 fi 190 if [ "${includedir}" != /usr/local/includez ]; then 191 INCS="$INCS -I${includedir}" 192 fi 193 sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO 194 $INCS 195ENDECHO 196 ;; 197 --libs) 198 OPTS= 199 for opt in $lib_flags 200 do 201 [ -n "$OPTS" ] && OPTS="$OPTS " 202 OPTS="${OPTS}${opt}" 203 done 204 printf "%s\n" "$OPTS" 205 ;; 206 --libs-only-L) 207 OPTS= 208 for opt in $lib_flags 209 do 210 case "x$opt" in 211 x-L*) 212 [ -n "$OPTS" ] && OPTS="$OPTS " 213 OPTS="${OPTS}${opt}" 214 ;; 215 esac 216 done 217 printf "%s\n" "$OPTS" 218 ;; 219 --libs-only-l) 220 OPTS= 221 for opt in $lib_flags 222 do 223 case "x$opt" in 224 x-l*) 225 [ -n "$OPTS" ] && OPTS="$OPTS " 226 OPTS="${OPTS}${opt}" 227 ;; 228 esac 229 done 230 printf "%s\n" "$OPTS" 231 ;; 232 --libs-only-other) 233 OPTS= 234 for opt in $lib_flags 235 do 236 case "x$opt" in 237 x-[lL]*) 238 ;; 239 *) 240 [ -n "$OPTS" ] && OPTS="$OPTS " 241 OPTS="${OPTS}${opt}" 242 ;; 243 esac 244 done 245 printf "%s\n" "$OPTS" 246 ;; 247 # identification 248 --version) 249 echo "@NCURSES_MAJOR@.@NCURSES_MINOR@.@NCURSES_PATCH@" 250 ;; 251 --abi-version) 252 echo "@cf_cv_abi_version@" 253 ;; 254 --mouse-version) 255 echo "@NCURSES_MOUSE_VERSION@" 256 ;; 257 # locations 258 --bindir) 259 echo "${bindir}" 260 ;; 261 --datadir) 262 echo "${datadir}" 263 ;; 264 --includedir) 265 INCS= 266 if [ "x@WITH_OVERWRITE@" = xno ]; then 267 INCS="${includesubdir}" 268 elif [ "${includedir}" != /usr/local/includez ]; then 269 INCS="${includedir}" 270 fi 271 echo $INCS 272 ;; 273 --libdir) 274 echo "${libdir}" 275 ;; 276 --mandir) 277 echo "${mandir}" 278 ;; 279 --terminfo) 280 echo "@TERMINFO@" 281 ;; 282 --terminfo-dirs) 283 echo "@TERMINFO_DIRS@" 284 ;; 285 --termpath) 286 echo "@TERMPATH@" 287 ;; 288 # general info 289 --help) 290 cat <<ENDHELP 291Usage: `basename $0` [options] 292 293Options: 294 --prefix echos the package-prefix of ${THIS} 295 --exec-prefix echos the executable-prefix of ${THIS} 296 297 --cflags echos the C compiler flags needed to compile with ${THIS} 298 --libs echos the libraries needed to link with ${THIS} 299 300 --libs-only-L echos -L linker options (search path) for ${THIS} 301 --libs-only-l echos -l linker options (libraries) for ${THIS} 302 --libs-only-other echos linker options other than -L/-l 303 304 --version echos the release+patchdate version of ${THIS} 305 --abi-version echos the ABI version of ${THIS} 306 --mouse-version echos the mouse-interface version of ${THIS} 307 308 --bindir echos the directory containing ${THIS} programs 309 --datadir echos the directory containing ${THIS} data 310 --includedir echos the directory containing ${THIS} header files 311 --libdir echos the directory containing ${THIS} libraries 312 --mandir echos the directory containing ${THIS} manpages 313 --terminfo echos the \$TERMINFO terminfo database path 314 --terminfo-dirs echos the \$TERMINFO_DIRS directory list 315 --termpath echos the \$TERMPATH termcap list 316 317 --help prints this message 318ENDHELP 319 ;; 320 --error|*) 321 @SHELL@ $0 --help 1>&2 322 exit 1 323 ;; 324 esac 325 shift 326done 327# vi:ts=4 sw=4 328# vile:shmode 329