URL: <https://savannah.gnu.org/support/?111140>
Summary: autoscan gets confused by Makefile rules that start with '-' to ignore errors Group: Autoconf Submitter: egallager Submitted: Sun 20 Oct 2024 12:51:01 AM UTC Priority: 5 - Unprioritized Severity: 3 - Normal Status: None Privacy: Public Assigned to: None Originator Email: Open/Closed: Open Discussion Lock: Any Operating System: None _______________________________________________________ Follow-up Comments: ------------------------------------------------------- Date: Sun 20 Oct 2024 12:51:01 AM UTC By: Eric Gallager <egallager> Make has a feature where starting a line with a tab and a minus sign will ignore errors on that line: https://www.gnu.org/software/make/manual/html_node/Errors.html However, if the command whose errors are meant to be ignored starts with an "l", `autoscan` will think it's a library that the user is trying to link with, and thus needs to be checked. Say I have the following Makefile in a directory: $ cat Makefile symlinks: -ln -s foo bar $ If I then run `autoscan`, it will produce a `configure.scan` file that looks like this: $ cat configure.scan # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. AC_PREREQ([2.72]) AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS]) # Checks for programs. # Checks for libraries. # FIXME: Replace 'main' with a function in '-ln': AC_CHECK_LIB([n], [main]) # Checks for header files. # Checks for typedefs, structures, and compiler characteristics. # Checks for library functions. AC_CONFIG_FILES([Makefile]) AC_OUTPUT However, there is no actual "libn" that needs to be linked with, so `autoscan` shouldn't suggest checking for it. I think a decent heuristic to tell these apart would be that if a "-l" sequence in a Makefile is preceded by a tab immediately following the start of a line, it's probably a command rather than a library. _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/support/?111140> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/
signature.asc
Description: PGP signature