diff mbox series

[meta-filesystems,1/8] e2tools: Fix build with automake 1.17

Message ID 20240830035827.406391-1-raj.khem@gmail.com
State New
Headers show
Series [meta-filesystems,1/8] e2tools: Fix build with automake 1.17 | expand

Commit Message

Khem Raj Aug. 30, 2024, 3:58 a.m. UTC
Replace the do_configure hack with aid to configure
detection logic via commandline

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-utils/e2tools/e2tools_git.bb      | 44 ++++---------------
 ...Disable-portability-warning-as-error.patch | 34 ++++++++++++++
 2 files changed, 43 insertions(+), 35 deletions(-)
 create mode 100644 meta-filesystems/recipes-utils/e2tools/files/0001-Disable-portability-warning-as-error.patch
diff mbox series

Patch

diff --git a/meta-filesystems/recipes-utils/e2tools/e2tools_git.bb b/meta-filesystems/recipes-utils/e2tools/e2tools_git.bb
index a0d194cae0..459c7058e1 100644
--- a/meta-filesystems/recipes-utils/e2tools/e2tools_git.bb
+++ b/meta-filesystems/recipes-utils/e2tools/e2tools_git.bb
@@ -15,6 +15,7 @@  PV = "0.1.0+git"
 
 SRC_URI = " \
            git://github.com/e2tools/e2tools;protocol=https;branch=master \
+           file://0001-Disable-portability-warning-as-error.patch \
            file://run-ptest \
 "
 
@@ -24,41 +25,14 @@  S = "${WORKDIR}/git"
 
 inherit autotools pkgconfig ptest
 
-do_configure:prepend() {
-    git -C "${WORKDIR}/git" reset --hard HEAD
-
-    # To install ptest for this package, special configuration needs to be
-    # done before do_configure(). So, do_configure_ptest() which is scheduled
-    # after do_configure() cannot be used.
-
-    # We only do special configuration if we are installing ptest for this
-    # package.
-    if [ "${@d.getVar('PTEST_ENABLED')}" -eq "1" ]; then
-        # Since we guarantee run-time dependency when installing the ptest for
-        # this package, we do not need the check macros under section "checks
-        # for programs" in "configure.ac". Plus, these check macros set the
-        # ouput variables to incorrect values as these checks are performed on
-        # the host environment. Still, we need these variables outputted from
-        # these check macros. So, we insert the following lines to manually
-        # set these output variables to the correct value in "configure.ac".
-
-        # Note that HAVE_DD_COMMAND and HAVE_MKE2FS_COMMAND are only ever used
-        # in tests/Makefile-files which determines whether to include the test
-        # cases. As for output variables CHMOD, DD, and MKE2FS, they only
-        # point to the programs which test cases need to run. Since these
-        # commands are guaranteed to be present due to RDEPENDS and are
-        # guaranteed to be accessible under PATH environment variable on the
-        # target, we only need to specify the name of these programs.
-
-        perl -i -0777 -pe 's/(^dnl\s*=+\s*^dnl\s*Checks for compiler flags\s*^dnl\s*=+)/
-AC_SUBST([CHMOD], 'chmod')
-AC_SUBST([DD], 'dd')
-AC_SUBST([MKE2FS], 'mke2fs')
-AM_CONDITIONAL([HAVE_DD_COMMAND], [true])
-AM_CONDITIONAL([HAVE_MKE2FS_COMMAND], [true])
-\1/ms' "${WORKDIR}/git/configure.ac"
-    fi
-}
+# Otherwise these tools will be detected from build host and
+# assumptions will go wrong, Fun of cross compiling
+EXTRA_OECONF += "\
+                ac_cv_path_MKE2FS=${base_sbindir}/mke2fs \
+                ac_cv_path_CHMOD=${base_bindir}/chmod \
+                ac_cv_path_DD=${base_bindir}/dd \
+                ac_cv_path_GREP=${base_bindir}/grep \
+                "
 
 do_install_ptest() {
     rm -rf "${D}${PTEST_PATH}/*"
diff --git a/meta-filesystems/recipes-utils/e2tools/files/0001-Disable-portability-warning-as-error.patch b/meta-filesystems/recipes-utils/e2tools/files/0001-Disable-portability-warning-as-error.patch
new file mode 100644
index 0000000000..dec793f373
--- /dev/null
+++ b/meta-filesystems/recipes-utils/e2tools/files/0001-Disable-portability-warning-as-error.patch
@@ -0,0 +1,34 @@ 
+From e0aaedea30483bf5b9bb085e12fff79144fa1174 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 29 Aug 2024 11:12:57 -0700
+Subject: [PATCH] Disable portability warning as error
+
+With latest automake 1.17 its warning about escape hash
+mark [1] and since configure.ac uses -werror to call automake
+this becomes an error and reconfigure fails.
+
+escape hash mark is non-portable as discussed here [2]
+
+Fow now let it be a warning, it should be fixed in a portable way
+
+[1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=7610
+[2] https://lists.gnu.org/archive/html/automake/2011-08/msg00023.html
+
+Upstream-Status: Submitted [https://github.com/e2tools/e2tools/pull/31]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index dd32c4d..9f37591 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -14,6 +14,7 @@ AC_CONFIG_MACRO_DIR([m4])
+ AM_INIT_AUTOMAKE([
+ -Wall
+ -Werror
++-Wno-portability
+ 1.9.6
+ foreign
+ subdir-objects