diff options
author | Housam Alamour <[email protected]> | 2024-02-05 19:18:05 -0500 |
---|---|---|
committer | Aaron Merey <[email protected]> | 2024-02-05 19:20:03 -0500 |
commit | 75fb8c0152892873fc0a905d228f50d6dfd3dc0d (patch) | |
tree | 11351a47792b3d9d78972215e8e0539615fb2190 /configure.ac | |
parent | cc44ac6740797a23cd0af0cb22bd828d569224b8 (diff) |
PR 30991: srcfiles tarball feature
* srcfiles.cxx: Introduce new --zip option that places all the
source files associated with a specified dwarf/elf file
into a zip file and sends it to stdout. Files may be
fetched from debuginfod (if applicable) or locally as
a backup.
Added -b option to disable the backup of checking
for files locally in -z mode.
* run-srcfiles-self.sh: Added test-case for the new zip
feature that archives the source files of the srcfiles
tool and checks archive integrity. An additional test
ensures that if debuginfod is enabled, the files are
fetched and archived properly while maintaing integrity.
* debuginfod-subr.sh: On very slow/remote storage, it can
take O(minute) to finish indexing the entire elfutils
build tree, so a wait_ready4 shell function is one
way to let a longer debuginfod wait operation work.
* srcfiles.1, NEWS: Added documentation for the new zip feature.
* configure.ac: Simplify check for libarchive for srcfiles.cxx
by integrating it into the same check for debuginfod.
* Makefile.am: build with local copy of debuginfod-client.
Example:
% ./src/srcfiles -z -e /bin/ls > output.zip
https://sourceware.org/bugzilla/show_bug.cgi?id=30991
Signed-off-by: Housam Alamour <[email protected]>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac index af5b6bf7..ddb79b83 100644 --- a/configure.ac +++ b/configure.ac @@ -841,7 +841,7 @@ AM_CONDITIONAL([LIBDEBUGINFOD],[test "x$enable_libdebuginfod" = "xyes" || test " AM_CONDITIONAL([DUMMY_LIBDEBUGINFOD],[test "x$enable_libdebuginfod" = "xdummy"]) AC_CHECK_HEADERS([execinfo.h]) -# Look for libmicrohttpd, libarchive, sqlite for debuginfo server +# Look for libmicrohttpd, libarchive, sqlite for debuginfo server and srcfiles tool # minimum versions as per rhel7. AC_ARG_ENABLE([debuginfod],AS_HELP_STRING([--enable-debuginfod], [Build debuginfod server])) AS_IF([test "x$enable_debuginfod" != "xno"], [ @@ -853,11 +853,12 @@ AS_IF([test "x$enable_debuginfod" != "xno"], [ AC_MSG_ERROR([need libdebuginfod (or dummy), use --disable-debuginfod to disable.]) fi enable_debuginfod=yes # presume success + AC_DEFINE([HAVE_LIBARCHIVE], [1], [Define to 1 if libarchive is available]) # presume success PKG_PROG_PKG_CONFIG PKG_CHECK_MODULES([libmicrohttpd],[libmicrohttpd >= 0.9.33],[],[enable_debuginfod=no]) PKG_CHECK_MODULES([oldlibmicrohttpd],[libmicrohttpd < 0.9.51],[old_libmicrohttpd=yes],[old_libmicrohttpd=no]) PKG_CHECK_MODULES([sqlite3],[sqlite3 >= 3.7.17],[],[enable_debuginfod=no]) - PKG_CHECK_MODULES([libarchive],[libarchive >= 3.1.2],[],[enable_debuginfod=no]) + PKG_CHECK_MODULES([libarchive],[libarchive >= 3.1.2],[],[enable_debuginfod=no], AC_DEFINE([HAVE_LIBARCHIVE], [0], [Define to 0 if libarchive is not available])) if test "x$enable_debuginfod" = "xno"; then AC_MSG_ERROR([dependencies not found, use --disable-debuginfod to disable.]) fi |