macOS
brew install omakelocal Homebrew formula metadata
sudo port install omakeMacPorts ports tree · devel/omake/Portfile · source: api.github.com
brew
Build system designed for scalability, portability, and concision. Version 0.10.7 via Homebrew; verified from local package data.
install
brew install omakelocal Homebrew formula metadata
sudo port install omakeMacPorts ports tree · devel/omake/Portfile · source: api.github.com
sudo apt install omakeDebian stable package indexes · omake · source: deb.debian.org
sudo dnf install ocaml-omakeFedora Rawhide package metadata · ocaml-omake · source: dl.fedoraproject.org
nix profile install nixpkgs#omakenixpkgs package indexes · pkgs/by-name/om/omake/package.nix · source: api.github.com
overview
Build system designed for scalability, portability, and concision
history
OMake is an OCaml-written build system with make-like syntax, global project analysis, automatic dependency tracking, and an emphasis on scalable multi-directory builds. It belongs to the generation of build tools that tried to keep Make's concise rule style while fixing dependency and portability pain in large source trees.
The public project page describes OMake as a build system designed for scalability and portability and notes its move from metaprl.org to camlcity.org. The opam package metadata credits Aleksey Nogin, Jason Hickey, and Gerd Stolpmann as authors, with Gerd Stolpmann listed as maintainer for the opam package.
The 2006 paper 'OMake: Designing a Scalable Build Process' framed OMake as a domain-specific programming problem. Its central goals were compositional project descriptions, concise small-project rules, and enough expressive power for larger builds.
OMake became part of the OCaml build-tool landscape before newer tools such as Jenga and Dune changed common practice. Jane Street's retrospective on Jenga says that around 2012 OMake was one of OCaml's standard build systems, which is a useful adoption marker from a large OCaml user rather than a package index alone.
The project later consolidated maintenance under the ocaml-omake GitHub organization, while package managers such as opam, Debian, Ubuntu, Homebrew, MacPorts, Nix, and Fedora-family repositories kept shipping it for legacy and active projects.
A typical OMake project has an OMakeroot at the repository root and OMakefile files in project directories. When omake runs, it walks the configuration tree, evaluates the OMakefiles, and builds with global knowledge of the project rather than invoking independent recursive make processes.
OMake users reach for it when they want automatic dependency analysis, digest-based incremental rebuilds, OCaml-oriented rules, cross-directory builds, and a programmable build language without writing raw Makefile plumbing for every subdirectory.
OMake is historically interesting because it captures an OCaml ecosystem moment before Dune became dominant. It is also a tidy example of a build tool whose design arguments were documented in an academic paper, then lived on as a real package carried by many operating-system distributions.
For package metadata, OMake is the kind of tool whose value is not measured only by repository activity: old build systems remain important because they are encoded into source releases, downstream package recipes, and long-lived project build instructions.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
omake | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/ocaml-omake/omake
install metadata
| Package key | brew:omake |
|---|---|
| Version | 0.10.7 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/omake |
| Homepage | http://projects.camlcity.org/projects/omake.html |
| Repository | https://github.com/ocaml-omake/omake |
| Upstream docs | https://projects.camlcity.org/projects/dl/omake-0.10.6/doc/html/omake-toc.html |
| License | GPL-2.0-only |
| Source archive | https://github.com/ocaml-omake/omake/archive/refs/tags/omake-0.10.7.tar.gz |
| Build dependencies | ocaml |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | omake |
| Aliases |
|
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Conflicts With |
|
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
omake 0.10.7-1
build system with automated dependency analysis
http://projects.camlcity.org/projects/omake.html
sudo apt install omakeomake-doc 0.10.7-1
documentation for OMake
http://projects.camlcity.org/projects/omake.html
sudo apt install omake-docomake
nix profile install nixpkgs#omakeomake 0.10.6-2
build system with automated dependency analysis
http://projects.camlcity.org/projects/omake.html
sudo apt install omakeomake-doc 0.10.6-2
documentation for OMake
http://projects.camlcity.org/projects/omake.html
sudo apt install omake-dococaml-omake 0.10.7-8.fc45
Build system with automated dependency analysis
http://projects.camlcity.org/projects/omake.html
sudo dnf install ocaml-omakeomake
sudo port install omakesource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.