]> git.draconx.ca Git - dxcommon.git/blobdiff - tests/libs.at
Add library test for curses.
[dxcommon.git] / tests / libs.at
index c57f68076cb60aec3d1680daad7042026fd74df4..89ecf67eb2f563a8f83eb1a3c24a2479350dafbc 100644 (file)
@@ -30,7 +30,7 @@ chmod +x pkg-config
 ]])
 
 AT_SETUP([libdiscid probes])
-AT_KEYWORDS([libdiscid])
+AT_KEYWORDS([lib libdiscid])
 
 mkdir discid
 AT_DATA([discid/discid.h],
@@ -83,6 +83,60 @@ TEST_CONFIGURE([PKG_CONFIG=false CFLAGS='-I. -DDISCID_VERSION_MAJOR=0'])
 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