1Do not use the JD_TERMCAP macro since we cannot get the terminfo from 2ncurses pkg-config, but fix the macro to not reference host directories. 3Also add src/test/Makefile.in so that we can use -ltermcap if we want to. 4 5Upstream isn't going to take this, as it forces blank values and 6removes functionality without replacing it. 7Upstream-Status: Inappropriate [see above] 8 9Signed-off-by: Joe Slater <joe.slater@windriver.com> 10 11 12--- a/autoconf/aclocal.m4 13+++ b/autoconf/aclocal.m4 14@@ -506,14 +506,10 @@ then 15 else 16 MISC_TERMINFO_DIRS="" 17 fi 18-JD_Terminfo_Dirs="$MISC_TERMINFO_DIRS \ 19- /usr/lib/terminfo \ 20- /usr/share/terminfo \ 21- /usr/share/lib/terminfo \ 22- /usr/local/lib/terminfo" 23+ 24 TERMCAP=-ltermcap 25 26-for terminfo_dir in $JD_Terminfo_Dirs 27+for terminfo_dir in $MISC_TERMINFO_DIRS 28 do 29 if test -d $terminfo_dir 30 then 31--- a/autoconf/configure.ac 32+++ b/autoconf/configure.ac 33@@ -249,7 +249,14 @@ AC_CHECK_SIZEOF(size_t) 34 JD_CHECK_LONG_LONG 35 JD_LARGE_FILE_SUPPORT 36 37-JD_TERMCAP 38+dnl Do not use JD_TERMCAP, since we cannot get terminfo from ncurses*-config anymore. 39+dnl Set TERMCAP=-ltermcap and AC_DEFINE(USE_TERMCAP,1,[Define to use termcap]) 40+dnl to use libtermcap. 41+TERMCAP="" 42+MISC_TERMINFO_DIRS="" 43+AC_SUBST(TERMCAP)dnl 44+AC_SUBST(MISC_TERMINFO_DIRS)dnl 45+ 46 JD_GCC_WARNINGS 47 48 JD_SET_OBJ_SRC_DIR(src) 49@@ -364,7 +371,7 @@ AC_CONFIG_HEADER(src/sysconf.h:src/confi 50 dnl AC_CONFIG_SUBDIRS(demo) 51 52 AC_OUTPUT(Makefile:autoconf/Makefile.in \ 53- src/Makefile slsh/Makefile modules/Makefile demo/Makefile \ 54+ src/Makefile src/test/Makefile slsh/Makefile modules/Makefile demo/Makefile \ 55 slang.pc:autoconf/slangpc.in \ 56 ) 57 58--- /dev/null 59+++ b/src/test/Makefile.in 60@@ -0,0 +1,90 @@ 61+# -*- make -*- 62+TEST_SCRIPTS_SLC = argv syntax scircuit eqs sscanf loops arith array strops \ 63+ bstring pack stdio assoc selfload struct nspace path ifeval anytype arrmult \ 64+ time utf8 except bugs list regexp method deref naninf overflow sort \ 65+ longlong signal dollar req docfun debug qualif compare break multline \ 66+ stack misc posixio posdir proc math 67+ 68+TEST_SCRIPTS_NO_SLC = autoload nspace2 prep 69+ 70+TEST_SCRIPTS = $(TEST_SCRIPTS_SLC) $(TEST_SCRIPTS_NO_SLC) 71+ 72+TEST_PGM = sltest 73+MEMCHECK = valgrind --tool=memcheck --leak-check=yes --leak-resolution=med --num-callers=20 74+RUN_TEST_PGM = ./$(TEST_PGM) 75+SLANGINC = .. 76+SLANGLIB = ../$(ARCH)objs 77+OTHER_LIBS = -lm @TERMCAP@ 78+OTHER_CFLAGS = 79+ 80+runtests: $(TEST_PGM) cleantmp 81+ @tests=""; \ 82+ for test in $(TEST_SCRIPTS); \ 83+ do \ 84+ tests="$$tests $$test.sl"; \ 85+ done; \ 86+ for test in $(TEST_SCRIPTS_SLC); \ 87+ do \ 88+ tests="$$tests $$test.slc"; \ 89+ done; \ 90+ MAKERUNNING=1 ./runtests.sh $$tests 91+# @touch $(TEST_PGM).c 92+ 93+update: $(TEST_PGM) cleantmp 94+ @tests=""; \ 95+ for X in $(TEST_SCRIPTS); \ 96+ do \ 97+ if [ ! -e lastrun/$$X.sl ] || [ $$X.sl -nt lastrun/$$X.sl ] ; \ 98+ then \ 99+ tests="$$tests $$X.sl"; \ 100+ fi \ 101+ done; \ 102+ for X in $(TEST_SCRIPTS_SLC); \ 103+ do \ 104+ if [ ! -e lastrun/$$X.slc ] || [ $$X.sl -nt lastrun/$$X.slc ] ; \ 105+ then \ 106+ tests="$$tests $$X.slc"; \ 107+ fi \ 108+ done; \ 109+ if test -n "$$tests"; \ 110+ then \ 111+ MAKERUNNING=1 ./runtests.sh $$tests; \ 112+ fi 113+# @touch $(TEST_PGM).c 114+ 115+memcheck_runtests: $(TEST_PGM) cleantmp 116+ @echo "" 117+ @echo "Running tests:" 118+ @echo "" 119+ -@for X in $(TEST_SCRIPTS); \ 120+ do \ 121+ $(MEMCHECK) --log-file=log.$${X} $(RUN_TEST_PGM) $$X.sl; \ 122+ grep ERROR log.$${X}; grep 'lost: [^0]' log.$${X}; \ 123+ $(MEMCHECK) --log-file=log.$${X}_u $(RUN_TEST_PGM) -utf8 $$X.sl; \ 124+ grep ERROR log.$${X}_u; grep 'lost: [^0]' log.$${X}_u; \ 125+ done 126+# touch $(TEST_PGM).c 127+ 128+memcheck_runtests_slc: $(TEST_PGM) cleantmp 129+ @echo "" 130+ @echo "Running tests:" 131+ @echo "" 132+ -@for X in $(TEST_SCRIPTS_SLC); \ 133+ do \ 134+ $(MEMCHECK) --log-file=log.$${X}_c $(RUN_TEST_PGM) $$X.slc; \ 135+ $(MEMCHECK) --log-file=log.$${X}_uc $(RUN_TEST_PGM) -utf8 $$X.slc; \ 136+ done 137+# touch $(TEST_PGM).c 138+ 139+memcheck: memcheck_runtests memcheck_runtests_slc 140+ 141+$(TEST_PGM): $(TEST_PGM).c assoc.c list.c $(SLANGLIB)/libslang.a 142+ $(CC) $(CFLAGS) $(OTHER_CFLAGS) $(LDFLAGS) $(TEST_PGM).c -o $(TEST_PGM) -I$(SLANGINC) -L$(SLANGLIB) -lslang $(OTHER_LIBS) 143+cleantmp: 144+ -/bin/rm -rf tmpfile*.* tmpdir*.* 145+clean: cleantmp 146+ -/bin/rm -f *~ *.o *.log log.pid* *.slc log.* *.log-* 147+distclean: clean 148+ /bin/rm -f $(TEST_PGM) $(TEST_PGM).gcda $(TEST_PGM).gcno 149+.PHONY: clean memcheck runtests memcheck_runtests_slc memcheck_runtests cleantmp 150+ 151