| #!/bin/sh | |
| # SPDX-License-Identifier: GPL-2.0 | |
| set -eu | |
| cflags=$1 | |
| libs=$2 | |
| PKG="ncursesw" | |
| PKG2="ncurses" | |
| if [ -n "$(command -v ${HOSTPKG_CONFIG})" ]; then | |
| if ${HOSTPKG_CONFIG} --exists $PKG; then | |
| ${HOSTPKG_CONFIG} --cflags ${PKG} > ${cflags} | |
| ${HOSTPKG_CONFIG} --libs ${PKG} > ${libs} | |
| exit 0 | |
| fi | |
| if ${HOSTPKG_CONFIG} --exists ${PKG2}; then | |
| ${HOSTPKG_CONFIG} --cflags ${PKG2} > ${cflags} | |
| ${HOSTPKG_CONFIG} --libs ${PKG2} > ${libs} | |
| exit 0 | |
| fi | |
| fi | |
| # Check the default paths in case pkg-config is not installed. | |
| # (Even if it is installed, some distributions such as openSUSE cannot | |
| # find ncurses by pkg-config.) | |
| if [ -f /usr/include/ncursesw/ncurses.h ]; then | |
| echo -D_GNU_SOURCE -I/usr/include/ncursesw > ${cflags} | |
| echo -lncursesw > ${libs} | |
| exit 0 | |
| fi | |
| if [ -f /usr/include/ncurses/ncurses.h ]; then | |
| echo -D_GNU_SOURCE -I/usr/include/ncurses > ${cflags} | |
| echo -lncurses > ${libs} | |
| exit 0 | |
| fi | |
| # As a final fallback before giving up, check if $HOSTCC knows of a default | |
| # ncurses installation (e.g. from a vendor-specific sysroot). | |
| if echo '#include <ncurses.h>' | ${HOSTCC} -E - >/dev/null 2>&1; then | |
| echo -D_GNU_SOURCE > ${cflags} | |
| echo -lncurses > ${libs} | |
| exit 0 | |
| fi | |
| echo >&2 "*" | |
| echo >&2 "* Unable to find the ncurses package." | |
| echo >&2 "* Install ncurses (ncurses-devel or libncurses-dev" | |
| echo >&2 "* depending on your distribution)." | |
| echo >&2 "*" | |
| echo >&2 "* You may also need to install ${HOSTPKG_CONFIG} to find the" | |
| echo >&2 "* ncurses installed in a non-default location." | |
| echo >&2 "*" | |
| exit 1 |