Mirantis / Mirantis/cri-dockerd
Consolidate Makefiles
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 1.4k
- Forks
- 356
- Avg merge
- 4d 4h
- Merged PRs (30d)
- 3
Description
Expected Behavior
A Makefile exists in the root of the project that imports Makefile values and targets from other mk files.
We should try to move the project towards being organized using the standard go project layout. This would have us moving our imported mk files to the build/ directory along with the packaging directory.
Suggested project reorganization:
build/
packaging/*
common.mk -> Move high level Makefile vars here
packaging.mk -> Current packaging/Makefile
packaging/
Makefile -> Import the build/*.mk files
Since we are currently placing our build artifacts in the build directory, we should instead output them to the bin directory as is common practice with many projects. We should also eliminate any duplicate build artifacts.
Actual Behavior
We currently have Makefiles in multiple locations throughout the project with duplicated targets and variables. This is not the end of the world but it there are now multiple different ways to build different artifacts for the project.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inventorying the root Makefile, the Makefiles in other locations, the imported mk files, and packaging/Makefile. Compare their targets, variables, and artifact outputs before planning the move into build/, with artifacts redirected to bin/. Done means one root entry point, no duplicate build artifacts, and the proposed build/packaging organization is in place.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100