diff options
author | Jon Turney <jon.turney@dronecode.org.uk> | 2022-08-24 18:01:52 +0300 |
---|---|---|
committer | Jon Turney <jon.turney@dronecode.org.uk> | 2023-01-13 20:03:52 +0300 |
commit | daeeaa97b35c0f143d6aa9d97d94e23e375337e8 (patch) | |
tree | 5b96508b5b4611270670dbfb51950e52e3ccb9fc /winsup/testsuite/Makefile.am | |
parent | 50a741e2f112fdf49a229818aa1242daed9558de (diff) |
Cygwin: testsuite: Build testcases using automake
Build all the testcase executables directly using automake, rather than
passing the compiler information into DejaGnu to have it build them.
(This means you get build avoidance for these executables, so they only
get built once, rather than every time you run the test, and makes it
much easier to run them in isolatation against the installed Cygwin,
which is really nice to have when trying to fix broken tests...)
Rename the 'cygrun' subdirectory to 'mingw', and build all the testsuite
MinGW executables there.
Drop sample-miscompile.c (testing that compile failure is detected is
perhaps useful, but not here...)
Diffstat (limited to 'winsup/testsuite/Makefile.am')
-rw-r--r-- | winsup/testsuite/Makefile.am | 307 |
1 files changed, 299 insertions, 8 deletions
diff --git a/winsup/testsuite/Makefile.am b/winsup/testsuite/Makefile.am index a2fa34811..7853d98e8 100644 --- a/winsup/testsuite/Makefile.am +++ b/winsup/testsuite/Makefile.am @@ -31,6 +31,300 @@ libltp_a_SOURCES = \ libltp/lib/tst_tmpdir.c \ libltp/lib/write_log.c +check_PROGRAMS = \ + winsup.api/checksignal \ + winsup.api/crlf \ + winsup.api/devdsp \ + winsup.api/devzero \ + winsup.api/iospeed \ + winsup.api/mmaptest01 \ + winsup.api/mmaptest02 \ + winsup.api/mmaptest03 \ + winsup.api/mmaptest04 \ + winsup.api/msgtest \ + winsup.api/nullgetcwd \ + winsup.api/resethand \ + winsup.api/semtest \ + winsup.api/shmtest \ + winsup.api/sigchld \ + winsup.api/signal-into-win32-api \ + winsup.api/systemcall \ + winsup.api/user_malloc \ + winsup.api/waitpid \ + winsup.api/ltp/access01 \ + winsup.api/ltp/access03 \ + winsup.api/ltp/access04 \ + winsup.api/ltp/access05 \ + winsup.api/ltp/alarm01 \ + winsup.api/ltp/alarm02 \ + winsup.api/ltp/alarm03 \ + winsup.api/ltp/alarm07 \ + winsup.api/ltp/asyncio02 \ + winsup.api/ltp/chdir02 \ + winsup.api/ltp/chdir04 \ + winsup.api/ltp/chmod01 \ + winsup.api/ltp/chmod02 \ + winsup.api/ltp/chown01 \ + winsup.api/ltp/close01 \ + winsup.api/ltp/close02 \ + winsup.api/ltp/close08 \ + winsup.api/ltp/creat01 \ + winsup.api/ltp/creat03 \ + winsup.api/ltp/creat09 \ + winsup.api/ltp/dup01 \ + winsup.api/ltp/dup02 \ + winsup.api/ltp/dup03 \ + winsup.api/ltp/dup04 \ + winsup.api/ltp/dup05 \ + winsup.api/ltp/execl01 \ + winsup.api/ltp/execle01 \ + winsup.api/ltp/execlp01 \ + winsup.api/ltp/execv01 \ + winsup.api/ltp/execve01 \ + winsup.api/ltp/execvp01 \ + winsup.api/ltp/exit01 \ + winsup.api/ltp/exit02 \ + winsup.api/ltp/fchdir01 \ + winsup.api/ltp/fchdir02 \ + winsup.api/ltp/fchmod01 \ + winsup.api/ltp/fchown01 \ + winsup.api/ltp/fcntl02 \ + winsup.api/ltp/fcntl03 \ + winsup.api/ltp/fcntl04 \ + winsup.api/ltp/fcntl05 \ + winsup.api/ltp/fcntl07 \ + winsup.api/ltp/fcntl07B \ + winsup.api/ltp/fcntl08 \ + winsup.api/ltp/fcntl09 \ + winsup.api/ltp/fcntl10 \ + winsup.api/ltp/fork01 \ + winsup.api/ltp/fork02 \ + winsup.api/ltp/fork03 \ + winsup.api/ltp/fork04 \ + winsup.api/ltp/fork06 \ + winsup.api/ltp/fork07 \ + winsup.api/ltp/fork09 \ + winsup.api/ltp/fork10 \ + winsup.api/ltp/fork11 \ + winsup.api/ltp/fpathconf01 \ + winsup.api/ltp/fstat01 \ + winsup.api/ltp/fstat02 \ + winsup.api/ltp/fstat03 \ + winsup.api/ltp/fstat04 \ + winsup.api/ltp/fsync01 \ + winsup.api/ltp/ftruncate01 \ + winsup.api/ltp/ftruncate02 \ + winsup.api/ltp/ftruncate03 \ + winsup.api/ltp/getegid01 \ + winsup.api/ltp/geteuid01 \ + winsup.api/ltp/getgid01 \ + winsup.api/ltp/getgid02 \ + winsup.api/ltp/getgid03 \ + winsup.api/ltp/getgroups01 \ + winsup.api/ltp/getgroups02 \ + winsup.api/ltp/gethostid01 \ + winsup.api/ltp/gethostname01 \ + winsup.api/ltp/getpgid01 \ + winsup.api/ltp/getpgid02 \ + winsup.api/ltp/getpgrp01 \ + winsup.api/ltp/getpid01 \ + winsup.api/ltp/getpid02 \ + winsup.api/ltp/getppid01 \ + winsup.api/ltp/getppid02 \ + winsup.api/ltp/getuid01 \ + winsup.api/ltp/getuid02 \ + winsup.api/ltp/getuid03 \ + winsup.api/ltp/kill01 \ + winsup.api/ltp/kill02 \ + winsup.api/ltp/kill03 \ + winsup.api/ltp/kill04 \ + winsup.api/ltp/kill09 \ + winsup.api/ltp/link02 \ + winsup.api/ltp/link03 \ + winsup.api/ltp/link04 \ + winsup.api/ltp/link05 \ + winsup.api/ltp/lseek01 \ + winsup.api/ltp/lseek02 \ + winsup.api/ltp/lseek03 \ + winsup.api/ltp/lseek04 \ + winsup.api/ltp/lseek05 \ + winsup.api/ltp/lseek06 \ + winsup.api/ltp/lseek07 \ + winsup.api/ltp/lseek08 \ + winsup.api/ltp/lseek09 \ + winsup.api/ltp/lseek10 \ + winsup.api/ltp/lstat02 \ + winsup.api/ltp/mkdir01 \ + winsup.api/ltp/mkdir08 \ + winsup.api/ltp/mknod01 \ + winsup.api/ltp/mmap001 \ + winsup.api/ltp/mmap02 \ + winsup.api/ltp/mmap03 \ + winsup.api/ltp/mmap04 \ + winsup.api/ltp/mmap05 \ + winsup.api/ltp/mmap06 \ + winsup.api/ltp/mmap07 \ + winsup.api/ltp/mmap08 \ + winsup.api/ltp/munmap01 \ + winsup.api/ltp/munmap02 \ + winsup.api/ltp/nice05 \ + winsup.api/ltp/open02 \ + winsup.api/ltp/open03 \ + winsup.api/ltp/pathconf01 \ + winsup.api/ltp/pause01 \ + winsup.api/ltp/pipe01 \ + winsup.api/ltp/pipe08 \ + winsup.api/ltp/pipe09 \ + winsup.api/ltp/pipe10 \ + winsup.api/ltp/pipe11 \ + winsup.api/ltp/poll01 \ + winsup.api/ltp/read01 \ + winsup.api/ltp/read04 \ + winsup.api/ltp/readdir01 \ + winsup.api/ltp/readlink01 \ + winsup.api/ltp/readlink02 \ + winsup.api/ltp/readlink03 \ + winsup.api/ltp/rename01 \ + winsup.api/ltp/rename02 \ + winsup.api/ltp/rename08 \ + winsup.api/ltp/rename10 \ + winsup.api/ltp/rmdir01 \ + winsup.api/ltp/rmdir04 \ + winsup.api/ltp/rmdir05 \ + winsup.api/ltp/sbrk01 \ + winsup.api/ltp/select01 \ + winsup.api/ltp/select02 \ + winsup.api/ltp/select03 \ + winsup.api/ltp/setgid01 \ + winsup.api/ltp/setgroups01 \ + winsup.api/ltp/setpgid01 \ + winsup.api/ltp/setregid01 \ + winsup.api/ltp/setreuid01 \ + winsup.api/ltp/setuid01 \ + winsup.api/ltp/setuid02 \ + winsup.api/ltp/signal03 \ + winsup.api/ltp/stat01 \ + winsup.api/ltp/stat02 \ + winsup.api/ltp/stat03 \ + winsup.api/ltp/stat05 \ + winsup.api/ltp/stat06 \ + winsup.api/ltp/symlink01 \ + winsup.api/ltp/symlink02 \ + winsup.api/ltp/symlink03 \ + winsup.api/ltp/symlink04 \ + winsup.api/ltp/symlink05 \ + winsup.api/ltp/sync01 \ + winsup.api/ltp/sync02 \ + winsup.api/ltp/time01 \ + winsup.api/ltp/time02 \ + winsup.api/ltp/times01 \ + winsup.api/ltp/times02 \ + winsup.api/ltp/times03 \ + winsup.api/ltp/truncate01 \ + winsup.api/ltp/truncate02 \ + winsup.api/ltp/umask01 \ + winsup.api/ltp/umask02 \ + winsup.api/ltp/umask03 \ + winsup.api/ltp/uname01 \ + winsup.api/ltp/unlink05 \ + winsup.api/ltp/unlink06 \ + winsup.api/ltp/unlink07 \ + winsup.api/ltp/unlink08 \ + winsup.api/ltp/vfork01 \ + winsup.api/ltp/wait02 \ + winsup.api/ltp/wait401 \ + winsup.api/ltp/wait402 \ + winsup.api/ltp/write01 \ + winsup.api/ltp/write02 \ + winsup.api/ltp/write03 \ + winsup.api/pthread/cancel1 \ + winsup.api/pthread/cancel10 \ + winsup.api/pthread/cancel11 \ + winsup.api/pthread/cancel12 \ + winsup.api/pthread/cancel2 \ + winsup.api/pthread/cancel3 \ + winsup.api/pthread/cancel4 \ + winsup.api/pthread/cancel5 \ + winsup.api/pthread/cancel6 \ + winsup.api/pthread/cancel7 \ + winsup.api/pthread/cancel8 \ + winsup.api/pthread/cancel9 \ + winsup.api/pthread/cleanup2 \ + winsup.api/pthread/cleanup3 \ + winsup.api/pthread/condvar1 \ + winsup.api/pthread/condvar2 \ + winsup.api/pthread/condvar2_1 \ + winsup.api/pthread/condvar3 \ + winsup.api/pthread/condvar3_1 \ + winsup.api/pthread/condvar3_2 \ + winsup.api/pthread/condvar3_3 \ + winsup.api/pthread/condvar4 \ + winsup.api/pthread/condvar5 \ + winsup.api/pthread/condvar6 \ + winsup.api/pthread/condvar7 \ + winsup.api/pthread/condvar8 \ + winsup.api/pthread/condvar9 \ + winsup.api/pthread/count1 \ + winsup.api/pthread/create1 \ + winsup.api/pthread/create2 \ + winsup.api/pthread/equal1 \ + winsup.api/pthread/exit1 \ + winsup.api/pthread/exit2 \ + winsup.api/pthread/exit3 \ + winsup.api/pthread/inherit1 \ + winsup.api/pthread/join0 \ + winsup.api/pthread/join1 \ + winsup.api/pthread/join2 \ + winsup.api/pthread/mainthreadexits \ + winsup.api/pthread/mutex1 \ + winsup.api/pthread/mutex1d \ + winsup.api/pthread/mutex1e \ + winsup.api/pthread/mutex1n \ + winsup.api/pthread/mutex1r \ + winsup.api/pthread/mutex2 \ + winsup.api/pthread/mutex3 \ + winsup.api/pthread/mutex4 \ + winsup.api/pthread/mutex5 \ + winsup.api/pthread/mutex6d \ + winsup.api/pthread/mutex6e \ + winsup.api/pthread/mutex6n \ + winsup.api/pthread/mutex6r \ + winsup.api/pthread/mutex7 \ + winsup.api/pthread/mutex7d \ + winsup.api/pthread/mutex7e \ + winsup.api/pthread/mutex7n \ + winsup.api/pthread/mutex7r \ + winsup.api/pthread/mutex8e \ + winsup.api/pthread/mutex8n \ + winsup.api/pthread/mutex8r \ + winsup.api/pthread/once1 \ + winsup.api/pthread/priority1 \ + winsup.api/pthread/priority2 \ + winsup.api/pthread/rwlock1 \ + winsup.api/pthread/rwlock2 \ + winsup.api/pthread/rwlock3 \ + winsup.api/pthread/rwlock4 \ + winsup.api/pthread/rwlock5 \ + winsup.api/pthread/rwlock6 \ + winsup.api/pthread/rwlock7 \ + winsup.api/pthread/self1 \ + winsup.api/pthread/self2 \ + winsup.api/pthread/threadidafterfork \ + winsup.api/pthread/tsd1 \ + winsup.api/samples/sample-fail \ + winsup.api/samples/sample-pass +# winsup.api/ltp/ulimit01 is omitted as we don't have <ulimit.h> + +# flags for linking against the just built implib +# TODO: use -nostdinc and to-be-installed headers as well? +LDFLAGS_FOR_TESTDLL = -nodefaultlibs +LDADD_FOR_TESTDLL = $(builddir)/../cygwin/libcygwin.a -lgcc -lkernel32 -luser32 + +# flags for test executables +AM_CPPFLAGS = -I$(srcdir)/libltp/include +AM_LDFLAGS = $(LDFLAGS_FOR_TESTDLL) +LDADD = $(builddir)/libltp.a $(builddir)/../cygwin/binmode.o $(LDADD_FOR_TESTDLL) + DEJATOOL = winsup # Add '-v' to RUNTESTFLAGS if V=1 @@ -46,22 +340,19 @@ testdll_tmpdir = $(shell cygpath -ma $(tmpdir) | sed -e 's#^\([A-Z]\):#/cygdrive site-extra.exp: ../config.status Makefile @rm -f ./tmp0 @echo "set runtime_root \"`pwd`/runtime\"" >> ./tmp0 - @echo "set libdir \"`pwd`/../cygwin\"" >> ./tmp0 - @echo "set CC \"$(CC)\"" >> ./tmp0 - @echo "set CFLAGS \"\"" >> ./tmp0 - @echo "set MINGW_CXX \"$(MINGW_CXX)\"" >> ./tmp0 @echo "set tmpdir $(tmpdir)" >> ./tmp0 @echo "set testdll_tmpdir $(testdll_tmpdir)" >> ./tmp0 - @echo "set ltp_includes \"$(srcdir)/libltp/include\"" >> ./tmp0 - @echo "set ltp_libs \"`pwd`/libltp.a\"" >> ./tmp0 - @echo "set cygrun \"`pwd`/cygrun/cygrun\"" >> ./tmp0 + @echo "set cygrun \"`pwd`/mingw/cygrun\"" >> ./tmp0 @mv ./tmp0 site-extra.exp EXTRA_DEJAGNU_SITE_CONFIG = site-extra.exp +# target to build all the programs needed by check, without running check +check_programs: $(check_PROGRAMS) + clean-local: rm -f *.log *.exe *.exp *.bak *.stackdump winsup.sum if CROSS_BOOTSTRAP -SUBDIRS = cygrun +SUBDIRS = mingw endif |