← Back to issue list

make plugin fails to include a Makefile via a relative path from another Makefile

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1636238
Type
issue
State
open
Author
~ivan-lezhnjov-iv
Labels
plugin
Created
Updated
Closed
—

Current evaluation

make plugin runs make in the part's scoped source dir, so Makefile includes pointing outside it (e.g. ../src/Makefile.global for PostgreSQL contrib) fail. Reported 2018, no maintainer response; plugin now lives in craft-parts.

Suggested action: needs triage

Reason: The issue has zero comments, no assignee, no maintainer response, and only the generic 'plugin' label, so it has never been triaged. Root cause is verifiable in craft_parts/plugins/make_plugin.py, which emits a plain `make` executed in the part source dir; because the reporter scoped `source: parts/postgresql/src/contrib/`, `../src/Makefile.global` is not copied into the part build dir — a part-scoping limitation with a workaround (widen `source` and pass `make -C src/contrib`, or use override-build) rather than a plugin defect. Confidence is held down because the reporter's desired outcome is unstated and the code has since moved from snapcraft to craft-parts, so the fix would need to be re-scoped there.

Evaluated by: mr-cal-bot

Impact: 32 Quick Win: 10 Complexity: 50 Confidence: 68 Actionability: 62

Issue body

Here's another issue I ran into when I tried to build contrib modules shipped with PostgreSQL project: ... Building contrib make -f Makefile -j1 Makefile:5: ../src/Makefile.global: No such file or directory make: *** No rule to make target '../src/Makefile.global'. Stop. Command '['/bin/sh', '/tmp/tmpxgmn5skk', 'make', '-f', 'Makefile', '-j1']' returned non-zero exit status 2 It seems like make plugin fails to include a Makefile that is referenced as a relative path from the main Makefile. Corresponding snapcraft.yaml section looks like this: contrib: plugin: make source: parts/postgresql/src/contrib/ after: - postgresql

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 32
Quick Win: 10
Complexity: 50
Confidence: 68
Actionability: 62
needs triage make plugin runs make in the part's scoped source dir, so Makefile includes pointing outside it (e.g. ../src/Makefile.global for PostgreSQL contrib) fail. Reported 2018, no maintainer response; plugin now lives in craft-parts.
qwen/qwen3.6-35b-a3b
Impact: 30
Quick Win: 14
Complexity: 40
Confidence: 50
Actionability: 80
needs triage Make plugin fails to resolve relative paths in Makefile includes, causing build failures for projects like PostgreSQL contrib modules
qwen/qwen3.8-27b
Impact: 15
Quick Win: 10
Staleness: 95
Complexity: 30
Confidence: 55
Support Request: 70
close not a bug make plugin fails to build PostgreSQL contrib because its Makefile includes ../src/Makefile.global, which lies outside the declared source directory. 10 years old, zero comments, no maintainer response. Failure stems from user source config, not a plugin defect.
qwen/qwen3.6-35b-a3b
Staleness: 98
Complexity: 45
Confidence: 90
Support Request: 10
close stale Make plugin fails to resolve relative Makefile includes during build. Issue is over 9 years old with no maintainer response or comments.
qwen/qwen3.6-35b-a3b
Staleness: 98
Complexity: 40
Confidence: 90
Support Request: 10
close stale Snapcraft make plugin fails to resolve relative paths in included Makefiles when building PostgreSQL contrib modules. Unaddressed for ~9.7 years with no maintainer interaction.
qwen3.6-35b-a3b-mtp-q6
Staleness: 95
Complexity: 25
Confidence: 85
Support Request: 10
close stale Snapcraft make plugin fails to resolve relative paths in Makefile include directives. No maintainer response or activity for over 9 years.

Update history

Date Change
created

Related issues

No related issues found above the similarity threshold.