autotools plugin should still honour autogen.sh if present
Metadata
Current evaluation
Autotools v2 gained autogen.sh/bootstrap fallback support in canonical/snapcraft#3398, merged as 3fabd01b9 and released before the issue was closed.
Resolution: closed resolved
Reason: The requested fallback behavior was implemented and released by commit 3fabd01b9 through canonical/snapcraft#3398. A maintainer confirmed on 2021-07-30 that it had already shipped.
Evaluated by: mr-cal-bot
No scores available.
Issue body
The version 2 autotools plugin being released with snapcraft 4.0 changes behaviour. In the version 1 tool, the plugin would:
- run ./configure if present
- run autogen.sh or bootstrap if ./configure not present
- run autoreconf --install if ./configure, autogen.sh and bootstrap are all missing
The version 2 plugin will:
- run ./configure if present
- run autoreconf --install if ./configure is not present
The version 2 behaviour is reasonable for most cases, as the contents of "autogen.sh" is often only "autoreconf -i". However, some projects use more magic in "autogen.sh" (such as sed substitutions etc) which now require manual intervention from the snapcrafter. Shouldn't we honour the upstream build process unless there's a good reason to manually override?
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Autotools v2 gained autogen.sh/bootstrap fallback support in canonical/snapcraft#3398, merged as 3fabd01b9 and released before the issue was closed. | |
| stealth/space-bunny-alpha | — | closed resolved | Closed as already implemented: autotools v2 autogen.sh/bootstrap support landed in canonical/snapcraft#3398 (commit 3fabd01b9); maintainer sergiusens pointed to it on 2021-07-30. | |
| stealth/space-bunny-alpha | — | closed resolved | Closed as already done: autotools v2 support for autogen.sh/bootstrap had landed in PR #3398 (commit 3fabd01b9), released by @sergiusens on 2021-07-30. | |
| stealth/space-bunny-alpha | — | closed resolved | Autotools v2 gained support for autogen.sh and bootstrap, restoring project-specific generation steps before falling back to autoreconf. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned. The request to preserve autogen.sh execution in the autotools plugin v2 was closed without implementation due to lack of discussion. No fix or configuration alternative was provided. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned. The request for the autotools plugin v2 to preserve autogen.sh execution was closed without resolution, leaving the plugin to skip autogen.sh and run autoreconf directly. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The request to preserve autogen.sh execution in the autotools plugin v2 was abandoned, leaving the current behavior that skips autogen.sh in favor of autoreconf unchanged. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without implementation. The request to restore autogen.sh execution in the autotools plugin v2 received no discussion, resulting in an abandoned issue with no fix or merge. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
canonical/snapcraft#3398
(confidence 100%)
Merged PR adding autogen.sh and bootstrap support to the autotools v2 plugin in commit 3fabd01b9.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1507648 Autotools doesn't work without autogen.sh | snapcraft (launchpad) | closed | Added an autoreconf-based Autotools option in commit 9d9a357b7 and released it in Snapcraft 0.4; later #3398 added autogen.sh/bootstrap support to v2. | |
| #3398 autotools v2 plugin: support autogen.sh and bootstrap | snapcraft | merged | Merged into master in commit 3fabd01b9, adding autogen.sh and bootstrap script support to the autotools v2 plugin. | |
| #3694 autotools v1 plugin: fix fatal crash when running autogen.sh or bootstrap | snapcraft | closed | Closed unmerged as superseded by snapcraft#3739, which merged the broader legacy-plugin Path-to-string fix in commit e4725e466. | |
| #1695081 autotools plugin should support explicit autogen or autoreconf | snapcraft (launchpad) | closed | 2014 feature request for the autotools plugin to run autogen/autoreconf. Now implemented: craft-parts runs autogen.sh, bootstrap, then `autoreconf --install` when configure is missing (snapcraft#3398, commit 3fabd01b9). | |
| #1530995 Snapcraft requires autogen.sh to be executable | snapcraft (launchpad) | closed | Fixed by ubuntu-core/snapcraft PR #206 (merged as 209a587d7), which made the Autotools plugin set autogen.sh executable before running it. | |
| #1621700 autotools plugin failed with env: ‘./bootstrap’: Permission denied | snapcraft (launchpad) | closed | Autotools now ignores a bootstrap directory instead of executing it, fixing the permission-denied failure in canonical/snapcraft#803 via commit eee1b84dd. | |
| #11 Autotools doesn't work without autogen.sh | snapcraft | closed | Closed without implementation after a maintainer said it lacked a test; later Autotools v2 gained autoreconf fallback support in PR #3398 (commit 3fabd01b9). | |
| #206 Autotools plugin: Set autogen.sh executable. | snapcraft | merged | Merged PR #206 fixed LP #1530995 by making autogen.sh executable when needed and adding Autotools plugin tests (commit 85405240f). | |
| #3628 Autotools Plugin (v1): Fix fatal crash when running autogen.sh or bootstrap | snapcraft | merged | Merged in commit 8e2cf1a25, converting autogen.sh and bootstrap Path values to strings before shlex quoting. Follow-up #3739 generalized the legacy-plugin fix. | |
| #1611825 add multiple generator script options to autotools | snapcraft (launchpad) | closed | Implemented multiple Autotools generator-script options in snapcore/snapcraft#679, merged as ccbab09b7, enabling fallback from autogen.sh to VLC's bootstrap script. |