diff options
Diffstat (limited to 'meta/recipes-devtools/e2fsprogs')
10 files changed, 216 insertions, 235 deletions
diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc b/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc index 81d90a134c..0cb3f0e6a6 100644 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc @@ -3,13 +3,13 @@ DESCRIPTION = "The Ext2 Filesystem Utilities (e2fsprogs) contain all of the stan fixing, configuring , and debugging ext2 filesystems." HOMEPAGE = "http://e2fsprogs.sourceforge.net/" -LICENSE = "GPLv2 & LGPLv2 & BSD & MIT" -LICENSE_e2fsprogs-e2fsck = "GPLv2" -LICENSE_e2fsprogs-mke2fs = "GPLv2" -LICENSE_e2fsprogs-fsck = "GPLv2" -LICENSE_e2fsprogs-tune2fs = "GPLv2" -LICENSE_e2fsprogs-badblocks = "GPLv2" -LIC_FILES_CHKSUM = "file://NOTICE;md5=b48f21d765b875bd10400975d12c1ca2 \ +LICENSE = "GPL-2.0-only & LGPL-2.0-only & BSD-3-Clause & MIT" +LICENSE:e2fsprogs-dumpe2fs = "GPL-2.0-only" +LICENSE:e2fsprogs-e2fsck = "GPL-2.0-only" +LICENSE:e2fsprogs-mke2fs = "GPL-2.0-only" +LICENSE:e2fsprogs-tune2fs = "GPL-2.0-only" +LICENSE:e2fsprogs-badblocks = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://NOTICE;md5=d50be0580c0b0a7fbc7a4830bbe6c12b \ file://lib/ext2fs/ext2fs.h;beginline=1;endline=9;md5=596a8dedcb4e731c6b21c7a46fba6bef \ file://lib/e2p/e2p.h;beginline=1;endline=7;md5=8a74ade8f9d65095d70ef2d4bf48e36a \ file://lib/uuid/uuid.h.in;beginline=1;endline=32;md5=dbb8079e114a5f841934b99e59c8820a \ @@ -17,9 +17,9 @@ LIC_FILES_CHKSUM = "file://NOTICE;md5=b48f21d765b875bd10400975d12c1ca2 \ file://lib/et/et_name.c;beginline=1;endline=11;md5=ead236447dac7b980dbc5b4804d8c836 \ file://lib/ss/ss.h;beginline=1;endline=20;md5=6e89ad47da6e75fecd2b5e0e81e1d4a6" SECTION = "base" -DEPENDS = "util-linux attr" +DEPENDS = "util-linux attr autoconf-archive-native" -SRC_URI = "git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git" +SRC_URI = "git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git;branch=master;protocol=https" S = "${WORKDIR}/git" inherit autotools gettext texinfo pkgconfig multilib_header update-alternatives ptest diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-misc-create_inode.c-set-dir-s-mode-correctly.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-misc-create_inode.c-set-dir-s-mode-correctly.patch deleted file mode 100644 index fc4a540986..0000000000 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-misc-create_inode.c-set-dir-s-mode-correctly.patch +++ /dev/null @@ -1,41 +0,0 @@ -From f6d188580c2c9599319076fee22f2424652c711c Mon Sep 17 00:00:00 2001 -From: Robert Yang <liezhi.yang@windriver.com> -Date: Wed, 13 Sep 2017 19:55:35 -0700 -Subject: [PATCH] misc/create_inode.c: set dir's mode correctly - -The dir's mode has been set by ext2fs_mkdir() with umask, so -reset it to the source's mode in set_inode_extra(). - -Fixed when source dir's mode is 521, but tarball would be 721, this was -incorrect. - -Upstream-Status: Submitted - -Signed-off-by: Robert Yang <liezhi.yang@windriver.com> ---- - misc/create_inode.c | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/misc/create_inode.c b/misc/create_inode.c -index 8ce3faf..50fbaa8 100644 ---- a/misc/create_inode.c -+++ b/misc/create_inode.c -@@ -116,7 +116,14 @@ static errcode_t set_inode_extra(ext2_filsys fs, ext2_ino_t ino, - - inode.i_uid = st->st_uid; - inode.i_gid = st->st_gid; -- inode.i_mode |= st->st_mode; -+ /* -+ * The dir's mode has been set by ext2fs_mkdir() with umask, so -+ * reset it to the source's mode -+ */ -+ if S_ISDIR(st->st_mode) -+ inode.i_mode = LINUX_S_IFDIR | st->st_mode; -+ else -+ inode.i_mode |= st->st_mode; - inode.i_atime = st->st_atime; - inode.i_mtime = st->st_mtime; - inode.i_ctime = st->st_ctime; --- -2.10.2 - diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch deleted file mode 100644 index 38fb07e6e6..0000000000 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 0a392baf1874964651115d9f77b0daa6851d1daa Mon Sep 17 00:00:00 2001 -From: Jonathan Liu <net147@gmail.com> -Date: Tue, 1 Mar 2016 14:28:01 +1100 -Subject: [PATCH] Revert "mke2fs: enable the metadata_csum and 64bit features - by default" - -This reverts commit cd27af3ecb83e8fd1e3eaa14994284a1818c7c15 as we -don't want to enable features by default that are not supported by -the latest stable e2fsprogs release. - -Upstream-Status: Inappropriate [configuration] -Signed-off-by: Jonathan Liu <net147@gmail.com> - -Rebase to 1.43: -The upstream has disabled metadata_csum by default -this rebase just revert 64bit feature. -Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> ---- - misc/mke2fs.conf.in | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/misc/mke2fs.conf.in b/misc/mke2fs.conf.in -index 812f7c7..0280398 100644 ---- a/misc/mke2fs.conf.in -+++ b/misc/mke2fs.conf.in -@@ -11,8 +11,9 @@ - features = has_journal - } - ext4 = { -- features = has_journal,extent,huge_file,flex_bg,uninit_bg,64bit,dir_nlink,extra_isize -+ features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize - inode_size = 256 -+ auto_64-bit_support = 1 - } - ext4dev = { - features = has_journal,extent,huge_file,flex_bg,uninit_bg,inline_data,64bit,dir_nlink,extra_isize diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch index 33054c61fa..b038e61eb7 100644 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch @@ -1,3 +1,6 @@ +From 5bc75654690a2d916190168b865770a7c93e65dd Mon Sep 17 00:00:00 2001 +From: Jackie Huang <jackie.huang@windriver.com> +Date: Wed, 10 Aug 2016 11:19:44 +0800 Subject: [PATCH] Fix missing check for permission denied. If the path to "ROOT_SYSCONFDIR/mke2fs.conf" has a permission denied problem, @@ -10,15 +13,16 @@ Upstream-Status: Pending Written-by: Henrik Wallin <henrik.b.wallin@ericsson.com> Signed-off-by: Jackie Huang <jackie.huang@windriver.com> + --- lib/support/profile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/support/profile.c b/lib/support/profile.c -index 51a3314..1c1039f 100644 +index bdb14b17..1bd62406 100644 --- a/lib/support/profile.c +++ b/lib/support/profile.c -@@ -335,7 +335,7 @@ profile_init(const char **files, profile_t *ret_profile) +@@ -335,7 +335,7 @@ profile_init(const char * const *files, profile_t *ret_profile) *last = new_file; last = &new_file->next; } @@ -27,6 +31,3 @@ index 51a3314..1c1039f 100644 strcmp(*fs, default_filename)) goto errout; --- -2.7.4 - diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/mkdir_p.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs/mkdir_p.patch index b0fa4b8cc5..f6916a1112 100644 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs/mkdir_p.patch +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs/mkdir_p.patch @@ -1,18 +1,27 @@ -e2fsprogs: expand @mkdir_p@ +From e3a30baa5c1e2f0ac7e246539db1c7db5a2fe302 Mon Sep 17 00:00:00 2001 +From: Joe Slater <jslater@windriver.com> +Date: Tue, 7 Mar 2017 14:53:19 -0800 +Subject: [PATCH] e2fsprogs: expand @mkdir_p@ Add AC_SUBST to configure.ac. @mkdir_p@ is currently -not expanded so no locale data is written into usr/share/locale. +not expanded so no locale data is written into usr/share/locale. Upstream-Status: Pending Signed-off-by: Joe Slater <jslater@windriver.com> +--- + configure.ac | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 4c4b5523..3475c707 100644 --- a/configure.ac +++ b/configure.ac -@@ -811,6 +811,8 @@ AC_SUBST(PACKAGE) +@@ -919,6 +919,8 @@ AC_SUBST(PACKAGE) AC_SUBST(VERSION) - AM_GNU_GETTEXT + AM_GNU_GETTEXT([external]) +dnl @MKDIR_P@ is expanded in AM_GNU_GETTEXT +AC_SUBST([mkdir_p],['$(MKDIR_P)']) dnl diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch index 7df0967637..20839b7286 100644 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch @@ -1,32 +1,45 @@ +From b8842065ad621a03a971dfd50db862c5bffdeb49 Mon Sep 17 00:00:00 2001 +From: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com> +Date: Sat, 18 Apr 2015 17:58:17 +0300 +Subject: [PATCH] e2fsprogs: add ptest + Upstream-Status: Inappropriate +Rebase for e2fsprogs 1.45.3. + +Signed-off-by: Kai Kang <kai.kang@windriver.com> +--- + tests/Makefile.in | 4 ++-- + tests/test_config | 32 ++++++++++++++++---------------- + 2 files changed, 18 insertions(+), 18 deletions(-) + diff --git a/tests/Makefile.in b/tests/Makefile.in -index c130f4a..d2ade03 100644 +index 8c4d2048..e021af32 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in -@@ -18,7 +18,7 @@ test_one: $(srcdir)/test_one.in Makefile mke2fs.conf +@@ -19,7 +19,7 @@ test_one: $(srcdir)/test_one.in Makefile mke2fs.conf @echo "#!/bin/sh" > test_one @echo "HTREE=y" >> test_one @echo "QUOTA=y" >> test_one - @echo "SRCDIR=@srcdir@" >> test_one -+ @echo "SRCDIR=${prefix}${libdir}/e2fsprogs/ptest/test" >> test_one ++ @echo "SRCDIR=@PTEST_PATH@/test" >> test_one @echo "DIFF_OPTS=@UNI_DIFF_OPTS@" >> test_one @echo "SIZEOF_TIME_T=@SIZEOF_TIME_T@" >> test_one - @cat $(srcdir)/test_one.in >> test_one -@@ -27,7 +27,7 @@ test_one: $(srcdir)/test_one.in Makefile mke2fs.conf - test_script: test_one test_script.in Makefile mke2fs.conf + @echo "DD=@DD@" >>test_one +@@ -30,7 +30,7 @@ test_script: test_one test_script.in Makefile mke2fs.conf @echo "Creating test_script..." + @[ -f test_script ] && chmod u+w test_script || true @echo "#!/bin/sh" > test_script - @echo "SRCDIR=@srcdir@" >> test_script -+ @echo "SRCDIR=${prefix}${libdir}/e2fsprogs/ptest/test" >> test_script ++ @echo "SRCDIR=@PTEST_PATH@/test" >> test_script @cat $(srcdir)/test_script.in >> test_script - @chmod +x test_script + @chmod +x-w test_script diff --git a/tests/test_config b/tests/test_config -index 547ef4c..e11e6f4 100644 +index 9dc762ce..a5fbdef6 100644 --- a/tests/test_config +++ b/tests/test_config -@@ -3,24 +3,24 @@ +@@ -3,25 +3,25 @@ # unset LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE LC_TIME PAGER @@ -40,8 +53,6 @@ index 547ef4c..e11e6f4 100644 -E2IMAGE_EXE="../misc/e2image" -DEBUGFS="$USE_VALGRIND ../debugfs/debugfs" -DEBUGFS_EXE="../debugfs/debugfs" --TEST_BITS="../debugfs/debugfs" --RESIZE2FS_EXE="../resize/resize2fs" +FSCK="$USE_VALGRIND e2fsck" +MKE2FS="$USE_VALGRIND mke2fs" +DUMPE2FS="$USE_VALGRIND dumpe2fs" @@ -52,31 +63,21 @@ index 547ef4c..e11e6f4 100644 +E2IMAGE_EXE="/sbin/e2image" +DEBUGFS="$USE_VALGRIND debugfs" +DEBUGFS_EXE="/sbin/debugfs" -+TEST_BITS="/sbin/debugfs" + TEST_BITS="test_data.tmp" +-RESIZE2FS_EXE="../resize/resize2fs" +RESIZE2FS_EXE="/sbin/resize2fs" RESIZE2FS="$USE_VALGRIND $RESIZE2FS_EXE" -E2UNDO_EXE="../misc/e2undo" +E2UNDO_EXE="/sbin/e2undo" E2UNDO="$USE_VALGRIND $E2UNDO_EXE" +-E2MMPSTATUS="$USE_VALGRIND ../misc/dumpe2fs -m" -TEST_REL=../tests/progs/test_rel -TEST_ICOUNT=../tests/progs/test_icount -CRCSUM=../tests/progs/crcsum ++E2MMPSTATUS="$USE_VALGRIND dumpe2fs -m" +TEST_REL=./progs/test_rel +TEST_ICOUNT=./progs/test_icount +CRCSUM=./progs/crcsum CLEAN_OUTPUT="sed -f $cmd_dir/filter.sed" LD_LIBRARY_PATH=../lib:../lib/ext2fs:../lib/e2p:../lib/et:../lib/ss:${LD_LIBRARY_PATH} DYLD_LIBRARY_PATH=../lib:../lib/ext2fs:../lib/e2p:../lib/et:../lib/ss:${DYLD_LIBRARY_PATH} -diff --git a/tests/test_script.in b/tests/test_script.in -index 9959e30..442999d 100644 ---- a/tests/test_script.in -+++ b/tests/test_script.in -@@ -39,7 +39,7 @@ for i; do - done - - if test "$TESTS"x = x ; then -- if test -n "DO_FAILED"; then -+ if test -n "$DO_FAILED"; then - exit 0 - fi - TESTS=`ls -d $SRCDIR/[a-zA-Z]_*` diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch index 830e9d57a5..0a6904208d 100644 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs/quiet-debugfs.patch @@ -1,14 +1,23 @@ +From 580ef6cae2d353f3aa5d5c52d6614bdc1df50f08 Mon Sep 17 00:00:00 2001 +From: Ross Burton <ross.burton@intel.com> +Date: Mon, 23 Dec 2013 13:38:34 +0000 +Subject: [PATCH] e2fsprogs: silence debugfs + When executing a script don't echo every command, as we do this for entire filesystems at rootfs time. Upstream-Status: Inappropriate Signed-off-by: Ross Burton <ross.burton@intel.com> +--- + debugfs/debugfs.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + diff --git a/debugfs/debugfs.c b/debugfs/debugfs.c -index 5590295..ac57292 100644 +index 9b6321dc..8ebf3ddb 100644 --- a/debugfs/debugfs.c +++ b/debugfs/debugfs.c -@@ -2378,7 +2378,7 @@ static int source_file(const char *cmd_file, int ss_idx) +@@ -2516,7 +2516,7 @@ static int source_file(const char *cmd_file, int ss_idx) cp = strchr(buf, '\r'); if (cp) *cp = 0; diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest b/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest index ef10b08bc8..279923db8e 100644 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest @@ -1,10 +1,11 @@ #!/bin/sh cd ./test -./test_script | sed -u -e '/:[[:space:]]ok/s/^/PASS: /' -e '/:[[:space:]]failed/s/^/FAIL: /' -e '/:[[:space:]]skipped/s/^/SKIP: /' +SKIP_SLOW_TESTS=yes ./test_script | sed -u -e '/:[[:space:]]ok/s/^/PASS: /' -e '/:[[:space:]]failed/s/^/FAIL: /' -e '/:[[:space:]]skipped/s/^/SKIP: /' rm -rf /var/volatile/tmp/*e2fsprogs* rm -f tmp-* rm -f *.tmp rm -f *.ok rm -f *.failed rm -f *.log +cp ../data/test_data.tmp ./ diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.7.bb b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.7.bb deleted file mode 100644 index 168eecfe8e..0000000000 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.7.bb +++ /dev/null @@ -1,111 +0,0 @@ -require e2fsprogs.inc - -SRC_URI += "file://remove.ldconfig.call.patch \ - file://quiet-debugfs.patch \ - file://run-ptest \ - file://ptest.patch \ - file://Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch \ - file://mkdir_p.patch \ - file://0001-misc-create_inode.c-set-dir-s-mode-correctly.patch \ -" - -SRC_URI_append_class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch" - -SRCREV = "4c5e6cd6defb83f1b35a5ef6fccd68c86874ee06" -UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+\.\d+(\.\d+)*)$" - -EXTRA_OECONF += "--libdir=${base_libdir} --sbindir=${base_sbindir} \ - --enable-elf-shlibs --disable-libuuid --disable-uuidd \ - --disable-libblkid --enable-verbose-makecmds" - -EXTRA_OECONF_darwin = "--libdir=${base_libdir} --sbindir=${base_sbindir} --enable-bsd-shlibs" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[fuse] = '--enable-fuse2fs,--disable-fuse2fs,fuse' - - -do_install () { - oe_runmake 'DESTDIR=${D}' install - oe_runmake 'DESTDIR=${D}' install-libs - # We use blkid from util-linux now so remove from here - rm -f ${D}${base_libdir}/libblkid* - rm -rf ${D}${includedir}/blkid - rm -f ${D}${base_libdir}/pkgconfig/blkid.pc - rm -f ${D}${base_sbindir}/blkid - rm -f ${D}${base_sbindir}/fsck - rm -f ${D}${base_sbindir}/findfs - - # e2initrd_helper and the pkgconfig files belong in libdir - if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then - install -d ${D}${libdir} - mv ${D}${base_libdir}/e2initrd_helper ${D}${libdir} - mv ${D}${base_libdir}/pkgconfig ${D}${libdir} - fi - - oe_multilib_header ext2fs/ext2_types.h - install -d ${D}${base_bindir} - mv ${D}${bindir}/chattr ${D}${base_bindir}/chattr.e2fsprogs - - install -v -m 755 ${S}/contrib/populate-extfs.sh ${D}${base_sbindir}/ - - # Clean host path (build directory) in compile_et, mk_cmds - sed -i -e "s,\(ET_DIR=.*\)${S}/lib/et\(.*\),\1${datadir}/et\2,g" ${D}${bindir}/compile_et - sed -i -e "s,\(SS_DIR=.*\)${S}/lib/ss\(.*\),\1${datadir}/ss\2,g" ${D}${bindir}/mk_cmds -} - -# Need to find the right mke2fs.conf file -e2fsprogs_conf_fixup () { - for i in mke2fs mkfs.ext2 mkfs.ext3 mkfs.ext4; do - create_wrapper ${D}${base_sbindir}/$i MKE2FS_CONFIG=${sysconfdir}/mke2fs.conf - done -} - -do_install_append_class-native() { - e2fsprogs_conf_fixup -} - -do_install_append_class-nativesdk() { - e2fsprogs_conf_fixup -} - -RDEPENDS_e2fsprogs = "e2fsprogs-badblocks" -RRECOMMENDS_e2fsprogs = "e2fsprogs-mke2fs e2fsprogs-e2fsck" - -PACKAGES =+ "e2fsprogs-e2fsck e2fsprogs-mke2fs e2fsprogs-tune2fs e2fsprogs-badblocks e2fsprogs-resize2fs" -PACKAGES =+ "libcomerr libss libe2p libext2fs" - -FILES_e2fsprogs-resize2fs = "${base_sbindir}/resize2fs*" -FILES_e2fsprogs-e2fsck = "${base_sbindir}/e2fsck ${base_sbindir}/fsck.ext*" -FILES_e2fsprogs-mke2fs = "${base_sbindir}/mke2fs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf" -FILES_e2fsprogs-tune2fs = "${base_sbindir}/tune2fs ${base_sbindir}/e2label" -FILES_e2fsprogs-badblocks = "${base_sbindir}/badblocks" -FILES_libcomerr = "${base_libdir}/libcom_err.so.*" -FILES_libss = "${base_libdir}/libss.so.*" -FILES_libe2p = "${base_libdir}/libe2p.so.*" -FILES_libext2fs = "${libdir}/e2initrd_helper ${base_libdir}/libext2fs.so.*" -FILES_${PN}-dev += "${datadir}/*/*.awk ${datadir}/*/*.sed ${base_libdir}/*.so ${bindir}/compile_et ${bindir}/mk_cmds" - -ALTERNATIVE_${PN} = "chattr" -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_LINK_NAME[chattr] = "${base_bindir}/chattr" -ALTERNATIVE_TARGET[chattr] = "${base_bindir}/chattr.e2fsprogs" - -ALTERNATIVE_${PN}-doc = "fsck.8" -ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8" - -RDEPENDS_${PN}-ptest += "${PN} ${PN}-tune2fs coreutils procps bash" - -do_compile_ptest() { - oe_runmake -C ${B}/tests -} - -do_install_ptest() { - cp -R --no-dereference --preserve=mode,links -v ${B}/tests ${D}${PTEST_PATH}/test - cp -R --no-dereference --preserve=mode,links -v ${S}/tests/* ${D}${PTEST_PATH}/test - sed -e 's!../e2fsck/e2fsck!e2fsck!g' -i ${D}${PTEST_PATH}/test/*/expect* - - # Remove various files - find "${D}${PTEST_PATH}" -type f \ - \( -name 'Makefile' -o -name 'Makefile.in' -o -name '*.o' -o -name '*.c' -o -name '*.h' \)\ - -exec rm -f {} + -} diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.47.0.bb b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.47.0.bb new file mode 100644 index 0000000000..940b47c155 --- /dev/null +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.47.0.bb @@ -0,0 +1,148 @@ +require e2fsprogs.inc + +SRC_URI += "file://remove.ldconfig.call.patch \ + file://run-ptest \ + file://ptest.patch \ + file://mkdir_p.patch \ + " +SRC_URI:append:class-native = " \ + file://e2fsprogs-fix-missing-check-for-permission-denied.patch \ + file://quiet-debugfs.patch \ + " + +SRCREV = "f4c9cc4bedacde8408edda3520a32d3842290112" +UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+\.\d+(\.\d+)*)$" + +EXTRA_OECONF += "--libdir=${base_libdir} --sbindir=${base_sbindir} \ + --enable-elf-shlibs --disable-libuuid --disable-uuidd \ + --disable-libblkid --enable-verbose-makecmds \ + --enable-largefile --with-crond-dir=no" + +EXTRA_OECONF:darwin = "--libdir=${base_libdir} --sbindir=${base_sbindir} --enable-bsd-shlibs" + +CFLAGS:append:riscv32 = " -D_FILE_OFFSET_BITS=64" +PACKAGECONFIG ??= "" +PACKAGECONFIG[fuse] = '--enable-fuse2fs,--disable-fuse2fs,fuse' + +# make locale rules sometimes fire, sometimes don't as git doesn't preserve +# file mktime. Touch the files introducing non-determinism to the build +do_compile:prepend (){ + find ${S}/po -type f -name "*.po" -exec touch {} + +} + +do_install () { + oe_runmake 'DESTDIR=${D}' install + oe_runmake 'DESTDIR=${D}' install-libs + # We use blkid from util-linux now so remove from here + rm -f ${D}${base_libdir}/libblkid* + rm -rf ${D}${includedir}/blkid + rm -f ${D}${base_libdir}/pkgconfig/blkid.pc + rm -f ${D}${base_sbindir}/blkid + rm -f ${D}${base_sbindir}/fsck + rm -f ${D}${base_sbindir}/findfs + + # e2initrd_helper and the pkgconfig files belong in libdir + if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then + install -d ${D}${libdir} + mv ${D}${base_libdir}/e2initrd_helper ${D}${libdir} + mv ${D}${base_libdir}/pkgconfig ${D}${libdir} + fi + + oe_multilib_header ext2fs/ext2_types.h + install -d ${D}${base_bindir} + mv ${D}${bindir}/chattr ${D}${base_bindir}/chattr.e2fsprogs + mv ${D}${bindir}/lsattr ${D}${base_bindir}/lsattr.e2fsprogs + + install -v -m 755 ${S}/contrib/populate-extfs.sh ${D}${base_sbindir}/ + + # Clean host path (build directory) in compile_et, mk_cmds + sed -i -e "s,\(ET_DIR=.*\)${S}/lib/et\(.*\),\1${datadir}/et\2,g" ${D}${bindir}/compile_et + sed -i -e "s,\(SS_DIR=.*\)${S}/lib/ss\(.*\),\1${datadir}/ss\2,g" ${D}${bindir}/mk_cmds +} + +# Need to find the right mke2fs.conf file +e2fsprogs_conf_fixup () { + for i in mke2fs mkfs.ext2 mkfs.ext3 mkfs.ext4; do + create_wrapper ${D}${base_sbindir}/$i MKE2FS_CONFIG=${sysconfdir}/mke2fs.conf + done +} + +do_install:append:class-native() { + e2fsprogs_conf_fixup +} + +do_install:append:class-nativesdk() { + e2fsprogs_conf_fixup +} + +do_install:append:class-target() { + mv ${D}${base_sbindir}/mke2fs ${D}${base_sbindir}/mke2fs.e2fsprogs + mv ${D}${base_sbindir}/mkfs.ext2 ${D}${base_sbindir}/mkfs.ext2.e2fsprogs + mv ${D}${base_sbindir}/tune2fs ${D}${base_sbindir}/tune2fs.e2fsprogs +} + +RDEPENDS:e2fsprogs = "e2fsprogs-badblocks e2fsprogs-dumpe2fs" +RRECOMMENDS:e2fsprogs = "e2fsprogs-mke2fs e2fsprogs-e2fsck" + +PACKAGES =+ "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-e2scrub e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs" +PACKAGES =+ "libcomerr libss libe2p libext2fs" + +FILES:e2fsprogs-dumpe2fs = "${base_sbindir}/dumpe2fs" +FILES:e2fsprogs-resize2fs = "${base_sbindir}/resize2fs*" +FILES:e2fsprogs-e2fsck = "${base_sbindir}/e2fsck ${base_sbindir}/fsck.ext*" +FILES:e2fsprogs-e2scrub = "${base_sbindir}/e2scrub*" +FILES:e2fsprogs-mke2fs = "${base_sbindir}/mke2fs.e2fsprogs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf" +FILES:e2fsprogs-tune2fs = "${base_sbindir}/tune2fs.e2fsprogs ${base_sbindir}/e2label" +FILES:e2fsprogs-badblocks = "${base_sbindir}/badblocks" +FILES:libcomerr = "${base_libdir}/libcom_err.so.*" +FILES:libss = "${base_libdir}/libss.so.*" +FILES:libe2p = "${base_libdir}/libe2p.so.*" +FILES:libext2fs = "${libdir}/e2initrd_helper ${base_libdir}/libext2fs.so.*" +FILES:${PN}-dev += "${datadir}/*/*.awk ${datadir}/*/*.sed ${base_libdir}/*.so ${bindir}/compile_et ${bindir}/mk_cmds" + +ALTERNATIVE:${PN} = "chattr lsattr" +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_LINK_NAME[chattr] = "${base_bindir}/chattr" +ALTERNATIVE_TARGET[chattr] = "${base_bindir}/chattr.e2fsprogs" +ALTERNATIVE_LINK_NAME[lsattr] = "${base_bindir}/lsattr" +ALTERNATIVE_TARGET[lsattr] = "${base_bindir}/lsattr.e2fsprogs" + +ALTERNATIVE:${PN}-doc = "fsck.8" +ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8" + +ALTERNATIVE:${PN}-mke2fs = "mke2fs mkfs.ext2" +ALTERNATIVE_LINK_NAME[mke2fs] = "${base_sbindir}/mke2fs" +ALTERNATIVE_LINK_NAME[mkfs.ext2] = "${base_sbindir}/mkfs.ext2" + +ALTERNATIVE:${PN}-tune2fs = "tune2fs" +ALTERNATIVE_LINK_NAME[tune2fs] = "${base_sbindir}/tune2fs" + +RDEPENDS:e2fsprogs-e2scrub = "bash" +RDEPENDS:${PN}-ptest += "coreutils procps bash bzip2 diffutils perl sed" +RDEPENDS:${PN}-ptest += "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs" + +do_compile_ptest() { + oe_runmake -C ${B}/tests +} + +do_install_ptest() { + # This file's permissions depends on the host umask so be deterministic + chmod 0644 ${B}/tests/test_data.tmp + cp -R --no-dereference --preserve=mode,links -v ${B}/tests ${D}${PTEST_PATH}/test + cp -R --no-dereference --preserve=mode,links -v ${S}/tests/* ${D}${PTEST_PATH}/test + sed -e 's!../e2fsck/e2fsck!e2fsck!g' \ + -e 's!../misc/tune2fs!tune2fs!g' -i ${D}${PTEST_PATH}/test/*/expect* + sed -e 's!../e2fsck/e2fsck!${base_sbindir}/e2fsck!g' -i ${D}${PTEST_PATH}/test/*/script + sed -i "s#@PTEST_PATH@#${PTEST_PATH}#g" ${D}${PTEST_PATH}/test/test_script ${D}${PTEST_PATH}/test/test_one + + # Remove various files + find "${D}${PTEST_PATH}" -type f \ + \( -name 'Makefile' -o -name 'Makefile.in' -o -name '*.o' -o -name '*.c' -o -name '*.h' \)\ + -exec rm -f {} + + + install -d ${D}${PTEST_PATH}/lib + install -m 0644 ${B}/lib/config.h ${D}${PTEST_PATH}/lib/ + + install -d ${D}${PTEST_PATH}/data + install -m 0644 ${B}/tests/test_data.tmp ${D}${PTEST_PATH}/data/ +} |