diff options
author | Lucas De Marchi <lucas.de.marchi@gmail.com> | 2023-02-09 11:19:46 -0800 |
---|---|---|
committer | Lucas De Marchi <lucas.de.marchi@gmail.com> | 2023-02-10 14:29:28 -0800 |
commit | 3d38e322f9353693dd6eb6c085f55447c0e46bb3 (patch) | |
tree | 7bfe5b87e73a4d3328bdf8eed7482c227da56e47 | |
parent | 184a070733c0055a9cad15fcad57a264910a64ff (diff) | |
download | kmod-3d38e322f9353693dd6eb6c085f55447c0e46bb3.tar.gz kmod-3d38e322f9353693dd6eb6c085f55447c0e46bb3.tar.bz2 kmod-3d38e322f9353693dd6eb6c085f55447c0e46bb3.zip |
testsuite: Handle different sysconfdir
Instead of skipping tests if sysconfdir isn't /etc, just handle it
during the rootfs setup logic.
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
-rw-r--r-- | Makefile.am | 6 | ||||
-rw-r--r-- | configure.ac | 3 | ||||
-rwxr-xr-x | testsuite/setup-rootfs.sh | 8 | ||||
-rw-r--r-- | testsuite/test-blacklist.c | 3 | ||||
-rw-r--r-- | testsuite/test-depmod.c | 15 | ||||
-rw-r--r-- | testsuite/test-modprobe.c | 6 |
6 files changed, 9 insertions, 32 deletions
diff --git a/Makefile.am b/Makefile.am index 021b315..61dbdf0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -244,7 +244,7 @@ EXTRA_DIST += testsuite/setup-rootfs.sh MODULE_PLAYGROUND = testsuite/module-playground ROOTFS = testsuite/rootfs ROOTFS_PRISTINE = $(top_srcdir)/testsuite/rootfs-pristine -CREATE_ROOTFS = $(AM_V_GEN) $(top_srcdir)/testsuite/setup-rootfs.sh $(ROOTFS_PRISTINE) $(ROOTFS) $(MODULE_PLAYGROUND) $(top_builddir)/config.h +CREATE_ROOTFS = $(AM_V_GEN) $(top_srcdir)/testsuite/setup-rootfs.sh $(ROOTFS_PRISTINE) $(ROOTFS) $(MODULE_PLAYGROUND) $(top_builddir)/config.h $(sysconfdir) build-module-playground: $(AM_V_GEN)if test "$(top_srcdir)" != "$(top_builddir)"; then \ @@ -330,10 +330,6 @@ TESTSUITE_LDADD = \ testsuite/libtestsuite.la libkmod/libkmod-internal.la \ shared/libshared.la -if KMOD_SYSCONFDIR_NOT_ETC -TESTSUITE_CPPFLAGS += -DKMOD_SYSCONFDIR_NOT_ETC -endif - check_LTLIBRARIES += testsuite/libtestsuite.la testsuite_libtestsuite_la_SOURCES = \ testsuite/testsuite.c testsuite/testsuite.h diff --git a/configure.ac b/configure.ac index 12e0518..892f5d9 100644 --- a/configure.ac +++ b/configure.ac @@ -225,9 +225,6 @@ GTK_DOC_CHECK([1.14],[--flavour no-tmpl-flat]) ], [ AM_CONDITIONAL([ENABLE_GTK_DOC], false)]) -# Some tests are skipped when sysconfdir != /etc. -AM_CONDITIONAL([KMOD_SYSCONFDIR_NOT_ETC], [test "x$sysconfdir" != "x/etc"]) - ##################################################################### # Default CFLAGS and LDFLAGS ##################################################################### diff --git a/testsuite/setup-rootfs.sh b/testsuite/setup-rootfs.sh index d155a30..4440ddc 100755 --- a/testsuite/setup-rootfs.sh +++ b/testsuite/setup-rootfs.sh @@ -6,6 +6,7 @@ ROOTFS_PRISTINE=$1 ROOTFS=$2 MODULE_PLAYGROUND=$3 CONFIG_H=$4 +SYSCONFDIR=$5 # create rootfs from rootfs-pristine @@ -15,6 +16,13 @@ create_rootfs() { cp -r "$ROOTFS_PRISTINE" "$ROOTFS" find "$ROOTFS" -type d -exec chmod +w {} \; find "$ROOTFS" -type f -name .gitignore -exec rm -f {} \; + + if [ "$SYSCONFDIR" != "/etc" ]; then + find "$ROOTFS" -type d -name etc -printf "%h\n" | while read -r e; do + mkdir -p "$(dirname $e/$SYSCONFDIR)" + mv $e/{etc,$SYSCONFDIR} + done + fi } feature_enabled() { diff --git a/testsuite/test-blacklist.c b/testsuite/test-blacklist.c index d03eedb..969567d 100644 --- a/testsuite/test-blacklist.c +++ b/testsuite/test-blacklist.c @@ -95,9 +95,6 @@ fail_lookup: } DEFINE_TEST(blacklist_1, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if modules are correctly blacklisted", .config = { [TC_ROOTFS] = TESTSUITE_ROOTFS "test-blacklist/", diff --git a/testsuite/test-depmod.c b/testsuite/test-depmod.c index d910459..9360694 100644 --- a/testsuite/test-depmod.c +++ b/testsuite/test-depmod.c @@ -41,9 +41,6 @@ static noreturn int depmod_modules_order_for_compressed(const struct test *t) } DEFINE_TEST(depmod_modules_order_for_compressed, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if depmod let aliases in right order when using compressed modules", .config = { [TC_UNAME_R] = MODULES_UNAME, @@ -74,9 +71,6 @@ static noreturn int depmod_modules_outdir(const struct test *t) } DEFINE_TEST(depmod_modules_outdir, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if depmod honours the outdir option", .config = { [TC_UNAME_R] = MODULES_UNAME, @@ -159,9 +153,6 @@ static noreturn int depmod_detect_loop(const struct test *t) exit(EXIT_FAILURE); } DEFINE_TEST(depmod_detect_loop, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if depmod detects module loops correctly", .config = { [TC_UNAME_R] = MODULES_UNAME, @@ -186,9 +177,6 @@ static noreturn int depmod_search_order_external_first(const struct test *t) exit(EXIT_FAILURE); } DEFINE_TEST(depmod_search_order_external_first, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if depmod honor external keyword with higher priority", .config = { [TC_UNAME_R] = MODULES_UNAME, @@ -243,9 +231,6 @@ static noreturn int depmod_search_order_override(const struct test *t) exit(EXIT_FAILURE); } DEFINE_TEST(depmod_search_order_override, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if depmod honor override keyword", .config = { [TC_UNAME_R] = MODULES_UNAME, diff --git a/testsuite/test-modprobe.c b/testsuite/test-modprobe.c index 3ddb976..309f3e3 100644 --- a/testsuite/test-modprobe.c +++ b/testsuite/test-modprobe.c @@ -83,9 +83,6 @@ static noreturn int modprobe_show_alias_to_none(const struct test *t) exit(EXIT_FAILURE); } DEFINE_TEST(modprobe_show_alias_to_none, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if modprobe --show-depends doesn't explode with an alias to nothing", .config = { [TC_UNAME_R] = "4.4.4", @@ -175,9 +172,6 @@ static noreturn int modprobe_softdep_loop(const struct test *t) exit(EXIT_FAILURE); } DEFINE_TEST(modprobe_softdep_loop, -#if defined(KMOD_SYSCONFDIR_NOT_ETC) - .skip = true, -#endif .description = "check if modprobe breaks softdep loop", .config = { [TC_UNAME_R] = "4.4.4", |