]])
AT_SETUP([libdiscid probes])
-AT_KEYWORDS([libdiscid])
+AT_KEYWORDS([lib libdiscid])
mkdir discid
AT_DATA([discid/discid.h],
AT_CHECK_UNQUOTED([cat test], [0], [no
+])
+
+AT_CLEANUP
+
+AT_SETUP([curses probes])
+AT_KEYWORDS([lib curses ncurses])
+
+AT_DATA([curses.h],
+[[void initscr(void) { }
+void endwin(void) { }
+void curs_set(int);
+]])
+
+AT_DATA([test.in],
+[[@HAVE_CURSES@
+@CURSES_CFLAGS@
+@CURSES_LIBS@
+]])
+
+TEST_CONFIGURE_AC([[DX_LIB_CURSES([HAVE_CURSES=yes], [HAVE_CURSES=no])
+AC_SUBST([HAVE_CURSES])
+AC_CONFIG_FILES([test])
+]])
+TEST_AUTORECONF
+
+# Check the search via explicit flags
+TEST_CONFIGURE([CURSES_CFLAGS=-I. CURSES_LIBS="$builddir/t/libdummy.a"])
+AT_CHECK_UNQUOTED([cat test], [0], [yes
+-I.
+$builddir/t/libdummy.a
+])
+
+# Check the search via pkg-config
+TEST_DUMMY_PKGCONFIG([-I.], [$builddir/t/libdummy.a])
+TEST_CONFIGURE([PKG_CONFIG=$PWD/pkg-config])
+AT_CHECK_UNQUOTED([cat test], [0], [yes
+-I.
+$builddir/t/libdummy.a
+])
+
+# Check the default -lcurses search
+cp "$builddir/t/libdummy.a" libcurses.a
+TEST_CONFIGURE([PKG_CONFIG=false CFLAGS=-I. LDFLAGS=-L.])
+AT_CHECK_UNQUOTED([cat test], [0], [yes
+
+-lcurses
+])
+
+# Check the failure case
+cp "$builddir/t/libempty.a" libcurses.a
+TEST_CONFIGURE([PKG_CONFIG=false CFLAGS=-I. LDFLAGS=-L.])
+AT_CHECK_UNQUOTED([cat test], [0], [no
+
+
])
AT_CLEANUP