From efe65615d053f29d25fdf5fe787b267e4609d9cf Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Fri, 28 Sep 2018 11:43:45 -0700 Subject: Fix up timestamps after patching ... so that autotools-based packages do not re-run autoconf/autoheader/automake. Signed-off-by: Alexey Neyman diff --git a/scripts/build/libc/glibc.sh b/scripts/build/libc/glibc.sh index f8af7fc..bc48cee 100644 --- a/scripts/build/libc/glibc.sh +++ b/scripts/build/libc/glibc.sh @@ -26,7 +26,6 @@ do_libc_extract() { CT_DoExecLog ALL ln -sf "${CT_GLIBC_PORTS_SRC_DIR}/${CT_GLIBC_PORTS_BASENAME}" \ "${CT_GLIBC_SRC_DIR}/${CT_GLIBC_BASENAME}/ports" fi - # TBD make the configure timestamp fix in all patched packages (e.g. part of CT_ExtractPatch) } # Build and install headers and start files diff --git a/scripts/functions b/scripts/functions index 2267a95..2e875f7 100644 --- a/scripts/functions +++ b/scripts/functions @@ -2165,6 +2165,20 @@ CT_DoExtractPatch() CT_DoExecLog ALL "${CT_CONFIG_SHELL}" -c "${devel_bootstrap}" fi + # Fix up the timestamps on the file we may be patching: otherwise, we may + # have a circular dependency. For example, we need make to build autoconf + # and automake companion tools, but we need autoconf and automake to regenerate + # aclocal.m4 or config.h.in after the patch touches configure.ac. Instead, + # assume the patch fixes all the files it needs. + find . -type f -name "aclocal.m4" \ + -exec touch {} \; -exec echo touch {} \; | CT_DoLog ALL + find . -type f -name "config.h.in" \ + -exec touch {} \; -exec echo touch {} \; | CT_DoLog ALL + find . -type f -name "Makefile.in" \ + -exec touch {} \; -exec echo touch {} \; | CT_DoLog ALL + find . -type f -name "configure" \ + -exec touch {} \; -exec echo touch {} \; | CT_DoLog ALL + if [ -n "${patchfunc}" ]; then ${patchfunc} fi -- cgit v0.10.2-6-g49f6