Skip to content

Add Makefile to centralize build commands#71

Open
directcuteo wants to merge 1 commit intomainfrom
1844-create-a-makefile-to-centralize-commands
Open

Add Makefile to centralize build commands#71
directcuteo wants to merge 1 commit intomainfrom
1844-create-a-makefile-to-centralize-commands

Conversation

@directcuteo
Copy link
Contributor

Summary

  • Add Makefile with standardized targets for build, test, setup, and Docker operations
  • Update README.md to reference Makefile targets throughout
  • Update CLAUDE.md with quick reference to make commands

Makefile Targets

Target Description
help Show available commands
setup Install all development dependencies
setup-deps Install system dependencies (Ubuntu/Debian)
build / build-release Build in debug/release mode
build-kern Build BPF kernel module
test / test-release Run unit tests
docker-build Build Docker image
format / check-format Format/check code formatting
lint Run clippy linter

Benefits

  • Single source of truth for build commands
  • Portable between developer machines and CI
  • Consistent with openmina project conventions
  • Easier onboarding for new contributors

Move ebpf-tools into repository

Vendor ebpf-kern and ebpf-user crates from github.com/vlad9486/ebpf-tools
to reduce external dependencies and centralize the codebase.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Update Cargo.lock for local ebpf-tools dependencies

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Move radiation into repository

Vendor radiation crate from github.com/vlad9486/radiation
to reduce external dependencies and centralize the codebase.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Fix Token macro import in radiation and update Cargo.lock

Import syn::Token explicitly to fix build error with newer Rust versions
where the Token macro is no longer publicly accessible without import.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Centralize all dependencies in workspace Cargo.toml

Add [workspace.dependencies] section to root Cargo.toml with all shared
dependencies and update all 14 member crates to use { workspace = true }
inheritance syntax.

This ensures consistent dependency versions across the workspace and
simplifies version management.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Add Makefile to centralize build commands

- Add Makefile with targets: help, setup, build, build-release, test,
  test-release, docker-build, format, check-format, lint, and more
- Update README to reference Makefile targets throughout
- Update CLAUDE.md with quick reference to make commands
- Consolidate scattered build instructions from README and Dockerfile
  into a single portable Makefile for CI compatibility
@directcuteo
Copy link
Contributor Author

Should be merged after #70

@directcuteo directcuteo self-assigned this Feb 5, 2026
@directcuteo directcuteo added the enhancement New feature or request label Feb 5, 2026
@directcuteo
Copy link
Contributor Author

Related issue: o1-labs/mina-rust#1844

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant