diff options
authorSam Thursfield <>2015-03-06 10:24:58 +0000
committerSam Thursfield <>2015-03-06 10:29:47 +0000
commitfddd00f3df34de164ca86de4c60866dbf801638f (patch)
parentc85678db412a710a4ee339cebd3664028eee8429 (diff)
Fix the dog's dinner I made of the e2fsprogs morphologybaserock/sam/e2fsprogs-cleanup
I had assumed that --disable-fsck was disabling all 'fsck' programs, but in fact it was the removal of `make install` that caused that. This chunk should now provide the fsck.ext2/3/4 programs but not the generic 'fsck' program, as it did before commit 57ce68fea.
1 files changed, 16 insertions, 9 deletions
diff --git a/strata/foundation/e2fsprogs.morph b/strata/foundation/e2fsprogs.morph
index 55ac486c..4207eb78 100644
--- a/strata/foundation/e2fsprogs.morph
+++ b/strata/foundation/e2fsprogs.morph
@@ -2,21 +2,28 @@ name: e2fsprogs
kind: chunk
build-system: autotools
-# Configure with the usual paths for binaries and config
-# but also disable whatever we can that is already provided by util-linux
-# Disabling e2fsprofs' libblkid does not work, but we don't have to
-# install it.
+# We disable some components which are duplicated in util-linux, because
+# the util-linux versions are newer.
+# Note that --disable-fsck only disables the 'fsck' wrapper program, not
+# the fsck.ext2/3/4 programs which we do need from this chunk.
- |
./configure --prefix="$PREFIX" --sysconfdir=/etc \
- --disable-libuuid --disable-uuidd --disable-libblkid
+ --disable-libuuid --disable-uuidd --disable-libblkid --disable-fsck
-# e2fsprogs also includes tools that are provided by util-linux, so we
-# need to selectively exclude them. Removing them directly from DESTDIR
-# causes problems, so we need to remove them beforehand.
- |
+ # Newer versions of some programs are provided by util-linux. We can't
+ # disable these being built at configure-time, so instead we filter them
+ # out at install-time.
+ #
+ # Removing files from DESTDIR directly causes problems (during a
+ # cross-bootstrap the DESTDIR could be '/') so we use an additional staging
+ # directory.
td="$(mktemp -d)"
make DESTDIR="$td" install
make DESTDIR="$td" install-libs
- find "$td" \( -name blkid -o -name findfs -o \) -delete
+ find "$td" \( -name blkid -o -name findfs \) -delete
find "$td" \( -name blkid.8 -o -name findfs.8 \) -delete
mv "$td"/* "$DESTDIR"