From 9f31696b511dcbeca538d18e851d8d364acfdf27 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Fri, 16 Jun 2023 07:20:44 -0400 Subject: [PATCH] Add examples/ folder, move non-core bits there The core of composefs today is the `mount.composefs` and `mkcomposefs` tools. Let's move the other stuff into a separate subdirectory to make this clearer. These tools are not installed with `make install` even before this. In the future I'd like to more strongly decouple these examples even more. Signed-off-by: Colin Walters --- .gitignore | 1 + Makefile.am | 2 +- configure.ac | 1 + examples/.gitignore | 1 + examples/Makefile.am | 28 ++++++++++++++++++ {tools => examples}/composefs-from-json.c | 0 {tools => examples}/ostree-convert-commit.py | 0 {tools => examples}/read-file.c | 0 {tools => examples}/read-file.h | 0 .../test-assets/config-with-hard-link.json.gz | Bin ...config-with-hard-link.json.gz.sha256_erofs | 0 .../test-assets/config.json.gz | Bin .../test-assets/config.json.gz.sha256_erofs | 0 .../test-assets/cs9-x86_64-developer.json.gz | Bin .../cs9-x86_64-developer.json.gz.sha256_erofs | 0 .../test-assets/cs9-x86_64-minimal.json.gz | Bin .../cs9-x86_64-minimal.json.gz.sha256_erofs | 0 .../test-assets/f36-x86_64-silverblue.json.gz | Bin ...f36-x86_64-silverblue.json.gz.sha256_erofs | 0 {tools => examples}/test-checksums.sh | 0 tools/.gitignore | 1 + tools/Makefile.am | 25 ---------------- 22 files changed, 33 insertions(+), 26 deletions(-) create mode 100644 examples/.gitignore create mode 100644 examples/Makefile.am rename {tools => examples}/composefs-from-json.c (100%) rename {tools => examples}/ostree-convert-commit.py (100%) rename {tools => examples}/read-file.c (100%) rename {tools => examples}/read-file.h (100%) rename {tools => examples}/test-assets/config-with-hard-link.json.gz (100%) rename {tools => examples}/test-assets/config-with-hard-link.json.gz.sha256_erofs (100%) rename {tools => examples}/test-assets/config.json.gz (100%) rename {tools => examples}/test-assets/config.json.gz.sha256_erofs (100%) rename {tools => examples}/test-assets/cs9-x86_64-developer.json.gz (100%) rename {tools => examples}/test-assets/cs9-x86_64-developer.json.gz.sha256_erofs (100%) rename {tools => examples}/test-assets/cs9-x86_64-minimal.json.gz (100%) rename {tools => examples}/test-assets/cs9-x86_64-minimal.json.gz.sha256_erofs (100%) rename {tools => examples}/test-assets/f36-x86_64-silverblue.json.gz (100%) rename {tools => examples}/test-assets/f36-x86_64-silverblue.json.gz.sha256_erofs (100%) rename {tools => examples}/test-checksums.sh (100%) diff --git a/.gitignore b/.gitignore index 97a7132d..2c62ff9e 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ /Makefile libcomposefs/Makefile tools/Makefile +examples/Makefile Makefile.in aclocal.m4 autom4te.cache diff --git a/Makefile.am b/Makefile.am index b338d898..c538bb4b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,4 +1,4 @@ -SUBDIRS=libcomposefs tools +SUBDIRS=libcomposefs tools examples EXTRA_DIST=\ composefs.pc.in \ diff --git a/configure.ac b/configure.ac index 9fcbfce8..dfd05275 100644 --- a/configure.ac +++ b/configure.ac @@ -206,6 +206,7 @@ AC_CONFIG_FILES([ Makefile libcomposefs/Makefile tools/Makefile +examples/Makefile composefs.spec composefs.pc ]) diff --git a/examples/.gitignore b/examples/.gitignore new file mode 100644 index 00000000..38d0afa3 --- /dev/null +++ b/examples/.gitignore @@ -0,0 +1 @@ +composefs-from-json diff --git a/examples/Makefile.am b/examples/Makefile.am new file mode 100644 index 00000000..ae24b401 --- /dev/null +++ b/examples/Makefile.am @@ -0,0 +1,28 @@ +noinst_PROGRAMS = + +if USE_YAJL +noinst_PROGRAMS += composefs-from-json +endif + +AM_CFLAGS = $(WARN_CFLAGS) -I$(top_srcdir)/ + +composefs_from_json_SOURCES = composefs-from-json.c read-file.c read-file.h +composefs_from_json_LDADD = ../libcomposefs/libcomposefs.la $(LIBS_YAJL) $(LIBCRYPTO_LIBS) $(LIBS_SECCOMP) + +TEST_ASSETS_SMALL = \ + config.json.gz config-with-hard-link.json.gz + +TEST_ASSETS = ${TEST_ASSETS_SMALL} \ + cs9-x86_64-developer.json.gz cs9-x86_64-minimal.json.gz \ + f36-x86_64-silverblue.json.gz + +if ENABLE_VALGRIND +WRITER_JSON_PREFIX=libtool --mode=execute ${VALGRIND} --quiet --leak-check=yes --error-exitcode=42 +endif + +EXTRA_DIST = test-checksums.sh $(patsubst %,test-assets/%,${TEST_ASSETS_SMALL}) $(patsubst %,test-assets/%.sha256_erofs,${TEST_ASSETS_SMALL}) + +check-checksums: + $(srcdir)/test-checksums.sh "${WRITER_JSON_PREFIX} $(builddir)/composefs-from-json" "$(srcdir)/test-assets" "${TEST_ASSETS}" + +check: check-checksums diff --git a/tools/composefs-from-json.c b/examples/composefs-from-json.c similarity index 100% rename from tools/composefs-from-json.c rename to examples/composefs-from-json.c diff --git a/tools/ostree-convert-commit.py b/examples/ostree-convert-commit.py similarity index 100% rename from tools/ostree-convert-commit.py rename to examples/ostree-convert-commit.py diff --git a/tools/read-file.c b/examples/read-file.c similarity index 100% rename from tools/read-file.c rename to examples/read-file.c diff --git a/tools/read-file.h b/examples/read-file.h similarity index 100% rename from tools/read-file.h rename to examples/read-file.h diff --git a/tools/test-assets/config-with-hard-link.json.gz b/examples/test-assets/config-with-hard-link.json.gz similarity index 100% rename from tools/test-assets/config-with-hard-link.json.gz rename to examples/test-assets/config-with-hard-link.json.gz diff --git a/tools/test-assets/config-with-hard-link.json.gz.sha256_erofs b/examples/test-assets/config-with-hard-link.json.gz.sha256_erofs similarity index 100% rename from tools/test-assets/config-with-hard-link.json.gz.sha256_erofs rename to examples/test-assets/config-with-hard-link.json.gz.sha256_erofs diff --git a/tools/test-assets/config.json.gz b/examples/test-assets/config.json.gz similarity index 100% rename from tools/test-assets/config.json.gz rename to examples/test-assets/config.json.gz diff --git a/tools/test-assets/config.json.gz.sha256_erofs b/examples/test-assets/config.json.gz.sha256_erofs similarity index 100% rename from tools/test-assets/config.json.gz.sha256_erofs rename to examples/test-assets/config.json.gz.sha256_erofs diff --git a/tools/test-assets/cs9-x86_64-developer.json.gz b/examples/test-assets/cs9-x86_64-developer.json.gz similarity index 100% rename from tools/test-assets/cs9-x86_64-developer.json.gz rename to examples/test-assets/cs9-x86_64-developer.json.gz diff --git a/tools/test-assets/cs9-x86_64-developer.json.gz.sha256_erofs b/examples/test-assets/cs9-x86_64-developer.json.gz.sha256_erofs similarity index 100% rename from tools/test-assets/cs9-x86_64-developer.json.gz.sha256_erofs rename to examples/test-assets/cs9-x86_64-developer.json.gz.sha256_erofs diff --git a/tools/test-assets/cs9-x86_64-minimal.json.gz b/examples/test-assets/cs9-x86_64-minimal.json.gz similarity index 100% rename from tools/test-assets/cs9-x86_64-minimal.json.gz rename to examples/test-assets/cs9-x86_64-minimal.json.gz diff --git a/tools/test-assets/cs9-x86_64-minimal.json.gz.sha256_erofs b/examples/test-assets/cs9-x86_64-minimal.json.gz.sha256_erofs similarity index 100% rename from tools/test-assets/cs9-x86_64-minimal.json.gz.sha256_erofs rename to examples/test-assets/cs9-x86_64-minimal.json.gz.sha256_erofs diff --git a/tools/test-assets/f36-x86_64-silverblue.json.gz b/examples/test-assets/f36-x86_64-silverblue.json.gz similarity index 100% rename from tools/test-assets/f36-x86_64-silverblue.json.gz rename to examples/test-assets/f36-x86_64-silverblue.json.gz diff --git a/tools/test-assets/f36-x86_64-silverblue.json.gz.sha256_erofs b/examples/test-assets/f36-x86_64-silverblue.json.gz.sha256_erofs similarity index 100% rename from tools/test-assets/f36-x86_64-silverblue.json.gz.sha256_erofs rename to examples/test-assets/f36-x86_64-silverblue.json.gz.sha256_erofs diff --git a/tools/test-checksums.sh b/examples/test-checksums.sh similarity index 100% rename from tools/test-checksums.sh rename to examples/test-checksums.sh diff --git a/tools/.gitignore b/tools/.gitignore index 6509c89f..18ad0c19 100644 --- a/tools/.gitignore +++ b/tools/.gitignore @@ -2,3 +2,4 @@ dump mkcomposefs writer-json mount.composefs +composefs-fuse diff --git a/tools/Makefile.am b/tools/Makefile.am index 4bd8cc0f..961a5d68 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -2,10 +2,6 @@ bin_PROGRAMS = mkcomposefs sbin_PROGRAMS = mount.composefs noinst_PROGRAMS = -if USE_YAJL -noinst_PROGRAMS += composefs-from-json -endif - if USE_FUSE3 noinst_PROGRAMS += composefs-fuse endif @@ -18,27 +14,6 @@ mkcomposefs_LDADD = ../libcomposefs/libcomposefs.la $(LIBCRYPTO_LIBS) mount_composefs_SOURCES = mountcomposefs.c mount_composefs_LDADD = ../libcomposefs/libcomposefs.la $(LIBCRYPTO_LIBS) -composefs_from_json_SOURCES = composefs-from-json.c read-file.c read-file.h -composefs_from_json_LDADD = ../libcomposefs/libcomposefs.la $(LIBS_YAJL) $(LIBCRYPTO_LIBS) $(LIBS_SECCOMP) - composefs_fuse_SOURCES = cfs-fuse.c composefs_fuse_LDADD = ../libcomposefs/libcomposefs.la $(FUSE3_LIBS) composefs_fuse_CFLAGS = $(FUSE3_CFLAGS) - -TEST_ASSETS_SMALL = \ - config.json.gz config-with-hard-link.json.gz - -TEST_ASSETS = ${TEST_ASSETS_SMALL} \ - cs9-x86_64-developer.json.gz cs9-x86_64-minimal.json.gz \ - f36-x86_64-silverblue.json.gz - -if ENABLE_VALGRIND -WRITER_JSON_PREFIX=libtool --mode=execute ${VALGRIND} --quiet --leak-check=yes --error-exitcode=42 -endif - -EXTRA_DIST = test-checksums.sh $(patsubst %,test-assets/%,${TEST_ASSETS_SMALL}) $(patsubst %,test-assets/%.sha256_erofs,${TEST_ASSETS_SMALL}) - -check-checksums: - $(srcdir)/test-checksums.sh "${WRITER_JSON_PREFIX} $(builddir)/composefs-from-json" "$(srcdir)/test-assets" "${TEST_ASSETS}" - -check: check-checksums