Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

configure*: remove ultimately unused INSTALL and RANLIB check macros #5133

Merged
merged 1 commit into from
May 8, 2022

Conversation

kmk3
Copy link
Collaborator

@kmk3 kmk3 commented May 7, 2022

From the manual of GNU Autoconf (version 2.69):

-- Macro: AC_PROG_INSTALL
Set output variable 'INSTALL' to the name of a BSD-compatible
'install' program, if one is found in the current 'PATH'.
Otherwise, set 'INSTALL' to 'DIR/install-sh -c', checking the
directories specified to 'AC_CONFIG_AUX_DIR' (or its default
directories) to determine DIR (*note Output::). Also set the
variables 'INSTALL_PROGRAM' and 'INSTALL_SCRIPT' to '${INSTALL}'
and 'INSTALL_DATA' to '${INSTALL} -m 644'.

-- Macro: AC_PROG_RANLIB
Set output variable 'RANLIB' to 'ranlib' if 'ranlib' is found,
and otherwise to ':' (do nothing).

None of the aforementioned variables are used:

$ git grep -F -e '${INSTALL}' -e INSTALL_PROGRAM -e INSTALL_SCRIPT \
  -e INSTALL_DATA -e RANLIB
$

So remove the macros that define them.

Misc: The macros in question have been present on configure.ac since it
was created, on commit 1379851 ("Baseline firejail 0.9.28",
2015-08-08). And while the install command is called multiple times,
ranlib is not used anywhere (and it seems that it was never used):

$ git grep -E '^[[:blank:]]+install ' -- '*Makefile*' '*.mk*' |
  wc -l
32
$ git grep -F ranlib | wc -l
0
$ git log --pretty= --name-only -G'RANLIB|ranlib' \
  137985136..master | sort -u
README.md

Kind of relates to #4695.

From the manual of GNU Autoconf (version 2.69):

>  -- Macro: AC_PROG_INSTALL
>      Set output variable 'INSTALL' to the name of a BSD-compatible
>      'install' program, if one is found in the current 'PATH'.
>      Otherwise, set 'INSTALL' to 'DIR/install-sh -c', checking the
>      directories specified to 'AC_CONFIG_AUX_DIR' (or its default
>      directories) to determine DIR (*note Output::).  Also set the
>      variables 'INSTALL_PROGRAM' and 'INSTALL_SCRIPT' to '${INSTALL}'
>      and 'INSTALL_DATA' to '${INSTALL} -m 644'.

>  -- Macro: AC_PROG_RANLIB
> 	 Set output variable 'RANLIB' to 'ranlib' if 'ranlib' is found,
> 	 and otherwise to ':' (do nothing).

None of the aforementioned variables are used:

    $ git grep -F -e '${INSTALL}' -e INSTALL_PROGRAM -e INSTALL_SCRIPT \
      -e INSTALL_DATA -e RANLIB
    $

So remove the macros that define them.

Misc: The macros in question have been present on configure.ac since it
was created, on commit 1379851 ("Baseline firejail 0.9.28",
2015-08-08).  And while the install command is called multiple times,
ranlib is not used anywhere (and it seems that it was never used):

    $ git grep -E '^[[:blank:]]+install ' -- '*Makefile*' '*.mk*' |
      wc -l
    32
    $ git grep -F ranlib | wc -l
    0
    $ git log --pretty= --name-only -G'RANLIB|ranlib' \
      1379851..master | sort -u
    README.md

Kind of relates to netblue30#4695.
@kmk3
Copy link
Collaborator Author

kmk3 commented May 7, 2022

By the way, I'm working on other build-related improvements (involving the
makefiles).

@reinerh reinerh merged commit 4421517 into netblue30:master May 8, 2022
@kmk3 kmk3 deleted the configure-rm-unused-macros branch May 8, 2022 23:20
@kmk3 kmk3 added this to In progress in Release 0.9.70 via automation May 8, 2022
kmk3 added a commit that referenced this pull request Jun 8, 2022
@kmk3 kmk3 moved this from In progress to Done (on RELNOTES) in Release 0.9.70 Jun 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Release 0.9.70
  
Done (on RELNOTES)
Development

Successfully merging this pull request may close these issues.

None yet

2 participants