linux-test-project / ltp

Linux Test Project (mailing list: https://lists.linux.it/listinfo/ltp)
https://linux-test-project.readthedocs.io/
GNU General Public License v2.0
2.28k stars 999 forks source link

include/mk/env.mk:8: /usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite/include/mk/config.mk: No such file or directory #979

Closed vt-alt closed 1 year ago

vt-alt commented 1 year ago

README.md says:

Open Posix Testsuite has it's own build system which needs Makefiles to be generated first, then compilation should work in subdirectories as well.

$ cd testcases/open_posix_testsuite/
$ make generate-makefiles

This seems not completely correct as since 8071ba7102b803618210218e40a292adf574ef4c configure script needs to be run now.

pevik commented 1 year ago

@vt-alt Actually, if you run configure in the top level directory you don't need it.

We had some discussion about it on our ML (https://lists.linux.it/listinfo/ltp): https://lore.kernel.org/ltp/YxCR7+dkGxPvCQDn@pevik/ Could you please post your opinion there?

vt-alt commented 1 year ago

We run autoreconf and configure at the top level without --with-open-posix-testsuite, because we build and install it separately — it creates configure there (in testcases/open_posix_testsuite) but does not run it.

builder@x86_64:~/RPM/BUILD/ltp-20220930$ ls -la testcases/open_posix_testsuite/
total 72
drwxr-xr-x 10 builder builder   420 Oct  4 18:59 .
drwxr-xr-x 11 builder builder   240 Oct  4 18:59 ..
-rw-r--r--  1 builder builder   387 Oct  4 18:59 .gitignore
-rw-r--r--  1 builder builder   366 Oct  4 18:59 AUTHORS
-rw-r--r--  1 builder builder  5278 Oct  4 18:59 BUILD
-rw-r--r--  1 builder builder 19745 Oct  4 18:59 COPYING
-rw-r--r--  1 builder builder  6788 Oct  4 18:59 ChangeLog
drwxr-xr-x  2 builder builder   400 Oct  4 18:59 Documentation
-rw-r--r--  1 builder builder  3533 Oct  4 18:59 Makefile
-rw-r--r--  1 builder builder   530 Oct  4 18:59 Makefile.linux
-rw-r--r--  1 builder builder  3212 Oct  4 18:59 NEWS
-rw-r--r--  1 builder builder  2181 Oct  4 18:59 QUICK-START
-rw-r--r--  1 builder builder  4471 Oct  4 18:59 README
drwxr-xr-x  2 builder builder   120 Oct  4 18:59 bin
-rw-r--r--  1 builder builder   407 Oct  4 18:59 configure.ac
drwxr-xr-x  5 builder builder   120 Oct  4 18:59 conformance
drwxr-xr-x  6 builder builder   140 Oct  4 18:59 functional
drwxr-xr-x  3 builder builder   260 Oct  4 18:59 include
drwxr-xr-x  2 builder builder   120 Oct  4 18:59 scripts
drwxr-xr-x  7 builder builder   160 Oct  4 18:59 stress
drwxr-xr-x  2 builder builder    80 Oct  4 18:59 tools
builder@x86_64:~/RPM/BUILD/ltp-20220930$ ./configure
-bash: ./configure: No such file or directory
builder@x86_64:~/RPM/BUILD/ltp-20220930$ autoreconf -fisv
autoreconf-default: Entering directory `.'
autoreconf-default: configure.ac: not using Gettext
autoreconf-default: running: aclocal --force
autoreconf-default: configure.ac: tracing
autoreconf-default: configure.ac: adding subdirectory testcases/open_posix_testsuite to autoreconf
autoreconf-default: Entering directory `testcases/open_posix_testsuite'
autoreconf-default: configure.ac: not using Libtool
autoreconf-default: configure.ac: not using Intltool
autoreconf-default: configure.ac: not using gtk-doc
autoreconf-default: running: /usr/bin/autoconf-2.60 --force
autoreconf-default: configure.ac: not using Autoheader
autoreconf-default: configure.ac: not using Automake
autoreconf-default: Leaving directory `testcases/open_posix_testsuite'
autoreconf-default: configure.ac: adding subdirectory testcases/realtime to autoreconf
autoreconf-default: Entering directory `testcases/realtime'
autoreconf-default: running: /usr/bin/autoheader-2.60 --force
autoreconf-default: running: automake --add-missing --force-missing
configure.ac:9: installing './compile'
configure.ac:12: installing './config.guess'
configure.ac:12: installing './config.sub'
configure.ac:4: installing './install-sh'
configure.ac:4: installing './missing'
autoreconf-default: Leaving directory `testcases/realtime'
configure.ac:22: installing './compile'
configure.ac:20: installing './config.guess'
configure.ac:20: installing './config.sub'
configure.ac:4: installing './install-sh'
configure.ac:4: installing './missing'
autoreconf-default: Leaving directory `.'
builder@x86_64:~/RPM/BUILD/ltp-20220930$ ls -la testcases/open_posix_testsuite/
total 180
drwxr-xr-x 11 builder builder    460 Oct  4 18:59 .
drwxr-xr-x 11 builder builder    240 Oct  4 18:59 ..
-rw-r--r--  1 builder builder    387 Oct  4 18:59 .gitignore
-rw-r--r--  1 builder builder    366 Oct  4 18:59 AUTHORS
-rw-r--r--  1 builder builder   5278 Oct  4 18:59 BUILD
-rw-r--r--  1 builder builder  19745 Oct  4 18:59 COPYING
-rw-r--r--  1 builder builder   6788 Oct  4 18:59 ChangeLog
drwxr-xr-x  2 builder builder    400 Oct  4 18:59 Documentation
-rw-r--r--  1 builder builder   3533 Oct  4 18:59 Makefile
-rw-r--r--  1 builder builder    530 Oct  4 18:59 Makefile.linux
-rw-r--r--  1 builder builder   3212 Oct  4 18:59 NEWS
-rw-r--r--  1 builder builder   2181 Oct  4 18:59 QUICK-START
-rw-r--r--  1 builder builder   4471 Oct  4 18:59 README
drwxr-xr-x  2 builder builder    140 Oct  4 18:59 autom4te.cache
drwxr-xr-x  2 builder builder    120 Oct  4 18:59 bin
-rwxr-xr-x  1 builder builder 108277 Oct  4 18:59 configure
-rw-r--r--  1 builder builder    407 Oct  4 18:59 configure.ac
drwxr-xr-x  5 builder builder    120 Oct  4 18:59 conformance
drwxr-xr-x  6 builder builder    140 Oct  4 18:59 functional
drwxr-xr-x  3 builder builder    260 Oct  4 18:59 include
drwxr-xr-x  2 builder builder    120 Oct  4 18:59 scripts
drwxr-xr-x  7 builder builder    160 Oct  4 18:59 stress
drwxr-xr-x  2 builder builder     80 Oct  4 18:59 tools
builder@x86_64:~/RPM/BUILD/ltp-20220930$ make -C testcases/open_posix_testsuite/
make: Entering directory '/usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite'
include/mk/env.mk:8: /usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite/include/mk/config.mk: No such file or directory
make: *** No rule to make target '/usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite/include/mk/config.mk'.  Stop.
make: Leaving directory '/usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite'
builder@x86_64:~/RPM/BUILD/ltp-20220930$ ./configure
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... none
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking for bison... bison -y
checking whether IFLA_NET_NS_PID is declared... yes
checking whether MADV_MERGEABLE is declared... yes
checking whether PR_CAPBSET_DROP is declared... yes
checking whether PR_CAPBSET_READ is declared... yes
checking whether SEM_STAT_ANY is declared... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for asm/ldt.h... yes
checking for emmintrin.h... yes
checking for ifaddrs.h... yes
checking for keyutils.h... yes
checking for linux/can.h... yes
checking for linux/cgroupstats.h... yes
checking for linux/cryptouser.h... yes
checking for linux/close_range.h... yes
checking for linux/dccp.h... yes
checking for linux/fs.h... yes
checking for linux/futex.h... yes
checking for linux/genetlink.h... yes
checking for linux/if_alg.h... yes
checking for linux/if_ether.h... yes
checking for linux/if_packet.h... yes
checking for linux/io_uring.h... yes
checking for linux/keyctl.h... yes
checking for linux/mempolicy.h... yes
checking for linux/module.h... yes
checking for linux/mount.h... yes
checking for linux/netlink.h... yes
checking for linux/seccomp.h... yes
checking for linux/securebits.h... yes
checking for linux/tty.h... yes
checking for linux/types.h... yes
checking for linux/userfaultfd.h... yes
checking for netinet/sctp.h... no
checking for pthread.h... yes
checking for sys/epoll.h... yes
checking for sys/fanotify.h... yes
checking for sys/inotify.h... yes
checking for sys/pidfd.h... no
checking for sys/prctl.h... yes
checking for sys/shm.h... yes
checking for sys/timerfd.h... yes
checking for sys/ustat.h... no
checking for sys/utsname.h... yes
checking for sys/xattr.h... yes
checking for xfs/xqm.h... yes
checking fts.h usability... yes
checking fts.h presence... yes
checking for fts.h... yes
checking for linux/vm_sockets.h... yes
checking for clone3... no
checking for close_range... yes
checking for copy_file_range... yes
checking for epoll_pwait... yes
checking for epoll_pwait2... yes
checking for execveat... yes
checking for fallocate... yes
checking for fchownat... yes
checking for fsconfig... no
checking for fsmount... no
checking for fsopen... no
checking for fspick... no
checking for fstatat... yes
checking for getauxval... yes
checking for getcontext... yes
checking for getdents... no
checking for getdents64... yes
checking for io_pgetevents... no
checking for io_uring_setup... no
checking for io_uring_register... no
checking for io_uring_enter... no
checking for kcmp... no
checking for mallinfo... yes
checking for mallinfo2... yes
checking for mallopt... yes
checking for mkdirat... yes
checking for mknodat... yes
checking for modify_ldt... yes
checking for mount_setattr... no
checking for move_mount... no
checking for name_to_handle_at... yes
checking for open_tree... no
checking for openat... yes
checking for openat2... no
checking for pidfd_getfd... no
checking for pidfd_open... no
checking for pidfd_send_signal... no
checking for pkey_mprotect... yes
checking for preadv... yes
checking for preadv2... yes
checking for profil... yes
checking for pwritev... yes
checking for pwritev2... yes
checking for quotactl_fd... no
checking for rand_r... yes
checking for readlinkat... yes
checking for recvmmsg... yes
checking for renameat... yes
checking for renameat2... yes
checking for sched_getcpu... yes
checking for sendmmsg... yes
checking for sethostid... yes
checking for setns... yes
checking for sigpending... yes
checking for splice... yes
checking for statx... yes
checking for stime... no
checking for sync_file_range... yes
checking for syncfs... yes
checking for tee... yes
checking for timerfd_create... yes
checking for timerfd_gettime... yes
checking for timerfd_settime... yes
checking for unshare... yes
checking for ustat... no
checking for vmsplice... yes
checking for mkdtemp... yes
checking for struct fanotify_event_info_fid.fsid.__val... no
checking for struct perf_event_mmap_page.aux_head... yes
checking for struct sigaction.sa_sigaction... yes
checking for struct statx.stx_mnt_id... yes
checking for struct utsname.domainname... yes
checking for enum kcmp_type... yes
checking for struct acct_v3... yes
checking for struct af_alg_iv... yes
checking for struct sockaddr_alg... yes
checking for struct fanotify_event_info_fid... yes
checking for struct fanotify_event_info_error... yes
checking for struct fanotify_event_info_header... yes
checking for struct fanotify_event_info_pidfd... yes
checking for struct file_dedupe_range... yes
checking for struct file_handle... yes
checking for struct fs_quota_statv... yes
checking for struct if_nextdqblk... yes
checking for struct iovec... yes
checking for struct ipc64_perm... no
checking for struct loop_config... yes
checking for struct mmsghdr... yes
checking for struct msqid64_ds... no
checking for struct rlimit64... yes
checking for struct semid64_ds... no
checking for struct shmid64_ds... no
checking for struct statx... yes
checking for struct statx_timestamp... yes
checking for struct termio... yes
checking for struct tpacket_req3... yes
checking for struct user_desc... yes
checking for struct modify_ldt_ldt_s... no
checking for struct xt_entry_match... yes
checking for struct xt_entry_target... yes
checking for struct __kernel_old_timeval... no
checking for struct __kernel_old_timespec... no
checking for struct __kernel_timespec... no
checking for struct __kernel_old_itimerspec... no
checking for struct __kernel_itimerspec... no
checking for struct futex_waitv... yes
checking for struct mount_attr... yes
checking for perl... perl
checking for perl module Cwd... ok
checking for perl module File::Basename... ok
checking for perl module JSON... no
checking for perl module LWP::Simple... no
configure: WARNING: metadata generation skipped due missing required Perl modules
checking for acl_init in -lacl... yes
checking sys/acl.h usability... yes
checking sys/acl.h presence... yes
checking for sys/acl.h... yes
checking for __atomic_* compiler builtins... yes
checking for __builtin___clear_cache... yes
checking sys/capability.h usability... yes
checking sys/capability.h presence... yes
checking for sys/capability.h... yes
checking for cap_compare in -lcap... yes
checking if gcc supports -Wold-style-definition... yes
checking for SHA1_Init in -lcrypto... yes
checking openssl/sha.h usability... yes
checking openssl/sha.h presence... yes
checking for openssl/sha.h... yes
checking whether to define _FORTIFY_SOURCE=2... no
checking for kernel-devel... no
checking for add_key in -lkeyutils... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for libmnl... no
checking sys/ptrace.h usability... yes
checking sys/ptrace.h presence... yes
checking for sys/ptrace.h... yes
checking sys/reg.h usability... yes
checking sys/reg.h presence... yes
checking for sys/reg.h... yes
checking asm/ptrace.h usability... yes
checking asm/ptrace.h presence... yes
checking for asm/ptrace.h... yes
checking linux/ptrace.h usability... yes
checking linux/ptrace.h presence... yes
checking for linux/ptrace.h... yes
checking for struct user_regs_struct... no
checking for struct pt_regs... yes
checking whether PTRACE_GETSIGINFO is declared... yes
checking whether PTRACE_O_TRACEVFORKDONE is declared... yes
checking whether PTRACE_SETOPTIONS is declared... yes
checking for struct ptrace_peeksiginfo_args... no
checking for linux/random.h... yes
checking for fork... yes
checking for daemon... yes
checking for vfork... yes
checking selinux/selinux.h usability... yes
checking selinux/selinux.h presence... yes
checking for selinux/selinux.h... yes
checking for is_selinux_enabled in -lselinux... yes
checking for __sync_add_and_fetch... yes
checking libaio.h usability... yes
checking libaio.h presence... yes
checking for libaio.h... yes
checking for io_setup in -laio... yes
checking io_set_eventfd is defined in aio library or aio header... yes
checking for fcntl f_owner_ex... yes
checking linux/fsverity.h usability... yes
checking linux/fsverity.h presence... yes
checking for linux/fsverity.h... yes
checking for struct fsverity_enable_arg... yes
checking whether C compiler accepts -no-pie... yes
checking for numa_available in -lnuma... yes
checking numa.h usability... yes
checking numa.h presence... yes
checking for numa.h... yes
checking numaif.h usability... yes
checking numaif.h presence... yes
checking for numaif.h... yes
checking for signalfd... yes
checking sys/signalfd.h usability... yes
checking sys/signalfd.h presence... yes
checking for sys/signalfd.h... yes
checking linux/signalfd.h usability... yes
checking linux/signalfd.h presence... yes
checking for linux/signalfd.h... yes
checking for struct signalfd_siginfo.ssi_signo... yes
checking for utimensat... yes
checking for linux/taskstats.h... yes
checking for struct taskstats.freepages_count... yes
checking for struct taskstats.nvcsw... yes
checking for struct taskstats.read_bytes... yes
checking for libtirpc >= 0.2.4... no
checking for xdr_char... no
checking for clnttcp_create... no
checking whether linker can handle KVM payloads... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating include/mk/config.mk
config.status: creating include/mk/config-openposix.mk
config.status: creating include/mk/features.mk
config.status: creating lib/ltp.pc
config.status: creating m4/Makefile
config.status: creating execltp
config.status: creating include/config.h
config.status: executing depfiles commands
config.status: executing syscalls.h commands
Generating data for arch aarch64 ...
Generating data for arch arc ...
Generating data for arch arm ...
Generating data for arch hppa ...
Generating data for arch i386 ...
Generating data for arch ia64 ...
Generating data for arch mips_n32 ...
Generating data for arch mips_n64 ...
Generating data for arch mips_o32 ...
Generating data for arch powerpc64 ...
Generating data for arch powerpc ...
Generating data for arch s390x ...
Generating data for arch s390 ...
Generating data for arch sh ...
Generating data for arch sparc64 ...
Generating data for arch sparc ...
Generating stub list ...
Generating data for arch x86_64 ...
Combining them all ... OK!

TESTSUITES
open posix testsuite: no
realtime testsuite: no

LIBRARIES
keyutils: no
libacl: yes
libaio: yes (aio: yes)
libcap: -lcap (newer: yes)
libcrypto: yes (sha: yes)
libmnl: no
libnuma: yes (headers: no, v2 headers: yes)
libtirpc: no
glibc SUN-RPC: no

METADATA
metadata generator: detect
HTML metadata: no
PDF metadata: no
builder@x86_64:~/RPM/BUILD/ltp-20220930$ make -C testcases/open_posix_testsuite/
make: Entering directory '/usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite'
include/mk/env.mk:8: /usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite/include/mk/config.mk: No such file or directory
make: *** No rule to make target '/usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite/include/mk/config.mk'.  Stop.
make: Leaving directory '/usr/src/RPM/BUILD/ltp-20220930/testcases/open_posix_testsuite'
builder@x86_64:~/RPM/BUILD/ltp-20220930$
vt-alt commented 1 year ago

Could you please post your opinion there?

Well if this is intended behavior I will just update our RPM spec (actually already did it).

pevik commented 1 year ago

@vt-alt Actually, if you run configure in the top level directory you don't need it.

I correct myself: if you run configure --with-open-posix-testsuite in the top level directory you don't need it.