{"name":"ninja","portdir":"devel/ninja","version":"1.13.2","license":"Apache-2","platforms":"darwin","epoch":1,"replaced_by":null,"homepage":"https://ninja-build.org","description":"Small build system with a focus on speed.","long_description":"Ninja is yet another build system. It takes as input the interdependencies of files (typically source code and output executables) and orchestrates building them, quickly. Ninja joins a sea of other build systems. Its distinguishing goal is to be fast. It is born from my work on the Chromium browser project, which has over 30,000 source files and whose other build systems (including one built from custom non-recursive Makefiles) can take ten seconds to start building after changing one file. Ninja is under a second.","active":true,"categories":["devel"],"maintainers":[{"name":"ryandesign","github":"ryandesign","ports_count":2085}],"variants":["universal"],"dependencies":[{"type":"build","ports":["re2c","clang-20"]},{"type":"lib","ports":["python314"]}],"depends_on":[{"type":"lib","ports":["apache-arrow","py37-pyarrow","py38-pyarrow","xcbuild","luamake","py39-scikit-build-core","py310-scikit-build-core","py311-scikit-build-core","py312-scikit-build-core","py313-scikit-build-core","py314-scikit-build-core"]},{"type":"build","ports":["qt5-qtwebengine","qt5-qtwebengine-docs","qt511-qtwebengine","qt511-qtwebengine-docs","qt513-qtwebengine","qt513-qtwebengine-docs","qt59-qtwebengine","qt59-qtwebengine-docs","audacity-devel","faac","libmpdclient","mpc","mpd","ncmpc","pavucontrol","pulseaudio","rubberband","apache-arrow","py37-pyarrow","py38-pyarrow","py39-pyarrow","appstream-glib","atk","fbthrift","folly","girara","glade","glib2","glib2-devel","glibmm","gn-devel","iso-codes","json-glib","libdvdcss","libgnt","libhandy","libnotify","libraqm","libsigcxx2","libsigcxx3","libxkbcommon","libxkbcommon-x11","mono","orc","qbs","qbs-docs","rizin","shared-mime-info","spice-protocol","usbredir","wangle","xcbuild","poedit","textmate2","wordgrinder","xwordgrinder","qemu","virt-viewer","sshfs","amtk","at-spi2-atk","at-spi2-core","atkmm","desktop-file-utils","devhelp","eog","epiphany","file-roller","folks","frogr","gcab","gcr","gedit","gedit-plugins","geocode-glib","gexiv2","gitg","gjs","glib-networking","gnome-backgrounds","gnome-calculator","gnome-desktop","gnome-dictionary","gnome-maps","gnome-settings-daemon","gobject-introspection","grilo","grilo-plugins","gsettings-desktop-schemas","gstreamer1","gstreamer1-gst-libav","gstreamer1-gst-plugins-bad","gstreamer1-gst-plugins-base","gstreamer1-gst-plugins-good","gstreamer1-gst-plugins-ugly","gtk-vnc","gtk3","gtksourceview4","gucharmap","hicolor-icon-theme","libchamplain","libdazzle","libgdata","libgit2-glib","libpeas","libsecret","libsoup","mm-common","planner","spice-gtk","tepl","totem","totem-pl-parser","tracker","virt-manager","vte","yelp-tools","zenity","Aseprite","babl","babl-devel","cairo","cairo-devel","cairomm","gdk-pixbuf2","geeqie","gegl","gegl-devel","gimp3-devel","graphene","harfbuzz","harfbuzz-icu","inkscape","inkscape-devel","libepoxy","libmediaart","libpano13","libpixman","libpixman-devel","openslide","unpaper","vips","hexchat","llvm-devel","clang-devel","lldb-devel","neko","rust","swi-prolog","swi-prolog-devel","libesmtp","mu","minpack","z3","z3-fstar","py-z3","py27-z3","py37-z3","py38-z3","z3-java","audacious-core","audacious-plugins","dav1d","mpv","scrcpy","gssdp","gupnp","gupnp-av","gupnp-dlna","gupnp-igd","gupnp-tools","libgweather","libnice","libproxy","libslirp","megatools","netatalk","zathura","zathura-docs","zathura-plugin-cb","zathura-plugin-djvu","zathura-plugin-pdf-mupdf","zathura-plugin-pdf-poppler","zathura-plugin-ps","py38-blosc","py35-gobject3","py38-iminuit","py39-levenshtein","py39-matplotlib","py39-pybind11","py38-pytorch","py39-pytorch","py37-torchaudio","py38-torchaudio","py39-torchaudio","py37-torchtext","py38-torchtext","py39-torchtext","py27-gobject3","bali-phy","root6","rtl_433","policykit","ksh","ksh-devel","fsearch","libosinfo","libvirt","libvirt-glib","osinfo-db-tools","watchman","libxmlxx2","libxmlxx3","libhttpseverywhere","mod_gnutls","webkit2-gtk","webkit2-gtk-devel","glxinfo","gtkmm3","libGLU","mesa","pango","pango-devel","pangomm","foundationdb","simde","vampire","fizz","lite-xl","glibmm-devel","lean","libxmlxx5","py39-z3","harfbuzz-devel","harfbuzz-icu-devel","py38-fabio","py39-fabio","lua-language-server","py38-spglib","py39-spglib","gtk3-devel","lite-xl-luajit","py310-pybind11","audacity-legacy","py310-matplotlib","qt6-qtbase","qt6-qtdeclarative","qt6-qtsensors","qt6-qtserialport","qt6-qtwebchannel","qt6-qtimageformats","qt6-qtsvg","qt6-qt5compat","qt6-qtlocation","qt6-qtserialbus","qt6-qtnetworkauth","qt6-qtremoteobjects","qt6-qt3d","qt6-qtconnectivity","qt6-qttools","qt6-qtwebsockets","qt6-qttranslations","qt6-mysql-plugin","qt6-psql-plugin","qt6-sqlite-plugin","gdk-pixbuf2-devel","py310-z3","mlir-devel","flang-devel","py310-levenshtein","libhandy-0.0","ashuffle","gobject-introspection-devel","qt5-qtwebengine-gn","mrustc-rust","gjs-devel","libdazzle-devel","rust-bootstrap","rust-bootstrap-10.6","rust-bootstrap-10.5","rust-bootstrap-transition","libsoup-devel","py310-spglib","py310-fabio","libvmaf","gom","py310-pytorch","tio","inih","py310-pyarrow","libavif","libfmt8","libfmt9","libyuv","gtk4","py310-torchaudio","py310-torchtext","gtksourceview5","py39-iminuit","py310-iminuit","py311-pybind11","polymake","py311-levenshtein","py37-rapidfuzz","py38-rapidfuzz","py39-rapidfuzz","py310-rapidfuzz","py311-rapidfuzz","qt6-qtpositioning","qt6-qtcharts","qt6-qtshadertools","qt6-qtmultimedia","dosbox-staging","coeurl","py311-matplotlib","libfmt4","dbcsr","fson","zofu","edencommon","mutest","py311-z3","fortran-stdlib","nng","bali-phy-devel","pangomm-1.4","libsoup-2.4","qt6-qtquick3d","qt6-qtquicktimeline","qt6-qtwebengine","qt6-qtdoc","qt6-qthttpserver","qt6-qtvirtualkeyboard","qt6-qtlottie","qt6-qtlanguageserver","qt6-qtdatavis3d","qt6-qtquick3dphysics","qt6-qtscxml","qt6-qtspeech","qt6-qtwebview","qt6-qtbase-docs","qt6-qtpositioning-docs","qt6-qtquick3d-docs","qt6-qtquicktimeline-docs","qt6-qtwebengine-docs","qt6-qtdeclarative-docs","qt6-qtcharts-docs","qt6-qtserialport-docs","qt6-qtsensors-docs","qt6-qtdoc-docs","qt6-qthttpserver-docs","qt6-qtwebchannel-docs","qt6-qtimageformats-docs","qt6-qtshadertools-docs","qt6-qtvirtualkeyboard-docs","qt6-qtsvg-docs","qt6-qt5compat-docs","qt6-qtlottie-docs","qt6-qtserialbus-docs","qt6-qtlanguageserver-docs","qt6-qtdatavis3d-docs","qt6-qtmultimedia-docs","qt6-qtnetworkauth-docs","qt6-qtremoteobjects-docs","qt6-qtquick3dphysics-docs","qt6-qtscxml-docs","qt6-qtconnectivity-docs","qt6-qt3d-docs","qt6-qtspeech-docs","qt6-qtwebview-docs","qt6-qttools-docs","qt6-qtwebsockets-docs","py38-blosc2","py39-blosc2","py310-blosc2","py311-blosc2","py37-pdal","py38-pdal","py39-pdal","py310-pdal","py311-pdal","edid-decode","taisei","libfmt10","py311-pyarrow","DMFTtools","libarchive-qt","gtk4-devel","llvm-17","mlir-17","clang-17","lldb-17","flang-17","libdicom","atomvm","font-manager","gn","py312-pybind11","py312-rapidfuzz","libplacebo","py311-pyFAI","py312-matplotlib","QMPlay2","knot-resolver","py312-pdal","mvfst","py312-levenshtein","pcraster","py312-pyarrow","rust-bootstrap-10.7","py312-z3","py311-iminuit","py312-iminuit","llvm-18","mlir-18","clang-18","lldb-18","flang-18","tenacity","py39-blosc","py310-blosc","py311-blosc","py312-blosc","py312-blosc2","gl-headers","xdispatch2","pangomm-devel","libxmlb","pkcs11-provider","nvi2","notekit","MicroTeX","zix","gtkmm4","py39-pdal-plugins","py310-pdal-plugins","py311-pdal-plugins","py312-pdal-plugins","liboqs","appstream","libadwaita","tracker3","fortran-stdlib-devel","libshumate","dino","py311-pytorch","py312-pytorch","py311-spglib","py312-spglib","py311-fabio","py312-fabio","fbzmq","py38-pyFAI","py39-pyFAI","py310-pyFAI","py312-pyFAI","catgirl-downloader","libfmt11","qt6-qtgraphs","qt6-qtquickeffectmaker","qt6-qtgraphs-docs","qt6-qtlocation-docs","qt6-qtquickeffectmaker-docs","qt64-qtbase","qt64-qtpositioning","qt64-qtquick3d","qt64-qtquicktimeline","qt64-qtwebengine","qt64-qtdeclarative","qt64-qtcharts","qt64-qtserialport","qt64-qtsensors","qt64-qtdoc","qt64-qthttpserver","qt64-qtwebchannel","qt64-qtimageformats","qt64-qtshadertools","qt64-qtvirtualkeyboard","qt64-qtsvg","qt64-qt5compat","qt64-qtlottie","qt64-qtserialbus","qt64-qtlanguageserver","qt64-qtdatavis3d","qt64-qtmultimedia","qt64-qtremoteobjects","qt64-qtnetworkauth","qt64-qtquick3dphysics","qt64-qtscxml","qt64-qt3d","qt64-qtconnectivity","qt64-qtspeech","qt64-qtwebview","qt64-qttools","qt64-qtwebsockets","qt64-qttranslations","qt64-qtbase-docs","qt64-qtpositioning-docs","qt64-qtquick3d-docs","qt64-qtwebengine-docs","qt64-qtquicktimeline-docs","qt64-qtdeclarative-docs","qt64-qtcharts-docs","qt64-qtserialport-docs","qt64-qtsensors-docs","qt64-qtdoc-docs","qt64-qthttpserver-docs","qt64-qtwebchannel-docs","qt64-qtimageformats-docs","qt64-qtshadertools-docs","qt64-qtvirtualkeyboard-docs","qt64-qtsvg-docs","qt64-qt5compat-docs","qt64-qtlottie-docs","qt64-qtserialbus-docs","qt64-qtdatavis3d-docs","qt64-qtmultimedia-docs","qt64-qtnetworkauth-docs","qt64-qtremoteobjects-docs","qt64-qtquick3dphysics-docs","qt64-qtscxml-docs","qt64-qtconnectivity-docs","qt64-qt3d-docs","qt64-qtspeech-docs","qt64-qtwebview-docs","qt64-qttools-docs","qt64-psql-plugin","qt64-qtwebsockets-docs","qt64-mysql-plugin","qt64-sqlite-plugin","llvm-19","clang-19","mlir-19","lldb-19","flang-19","py313-rapidfuzz","py313-levenshtein","py313-pybind11","libmm-glib","libcmatrix","Chatty","gnome-desktop-gtk4","libfeedback","py313-matplotlib","openh264","py313-blosc","vipsdisp","blueprint-compiler","secrets","wayland","koio","libproxy-vapi","pangomm-1.4-devel","qt67-qtpositioning","qt67-qtquick3d","qt67-qtquicktimeline","qt67-qtwebengine","qt67-qtdeclarative","qt67-qtbase","qt67-qtcharts","qt67-qtgraphs","qt67-qtserialport","qt67-qtsensors","qt67-qthttpserver","qt67-qtwebchannel","qt67-qtimageformats","qt67-qtdoc","qt67-qtshadertools","qt67-qtvirtualkeyboard","qt67-qtsvg","qt67-qt5compat","qt67-qtlottie","qt67-qtlocation","qt67-qtserialbus","qt67-qtquickeffectmaker","qt67-qtlanguageserver","qt67-qtdatavis3d","qt67-qtmultimedia","qt67-qtremoteobjects","qt67-qtquick3dphysics","qt67-qtnetworkauth","qt67-qtconnectivity","qt67-qtscxml","qt67-qt3d","qt67-qtspeech","qt67-qtwebview","qt67-qttools","qt67-qtwebsockets","qt67-qttranslations","qt67-qtbase-docs","qt67-qtpositioning-docs","qt67-qtquick3d-docs","qt67-qtwebengine-docs","qt67-qtquicktimeline-docs","qt67-qtdeclarative-docs","qt67-qtgraphs-docs","qt67-qtcharts-docs","qt67-qtserialport-docs","qt67-qtdoc-docs","qt67-qthttpserver-docs","qt67-qtsensors-docs","qt67-qtwebchannel-docs","qt67-qtimageformats-docs","qt67-qtshadertools-docs","qt67-qtvirtualkeyboard-docs","qt67-qtsvg-docs","qt67-qt5compat-docs","qt67-qtlottie-docs","qt67-qtquickeffectmaker-docs","qt67-qtserialbus-docs","qt67-qtlocation-docs","qt67-qtdatavis3d-docs","qt67-qtmultimedia-docs","qt67-qtremoteobjects-docs","qt67-qtquick3dphysics-docs","qt67-qtnetworkauth-docs","qt67-qtconnectivity-docs","qt67-qtscxml-docs","qt67-qt3d-docs","qt67-qtspeech-docs","qt67-qttools-docs","qt67-qtwebsockets-docs","qt67-qtwebview-docs","qt67-mysql-plugin","qt67-psql-plugin","qt67-sqlite-plugin","py313-pdal","py313-pdal-plugins","virglrenderer","z3-fstar-legacy","llvm-20","clang-20","mlir-20","lldb-20","flang-20","netatalk4","qt68-qtpositioning","qt68-qtbase","qt68-qtquick3d","qt68-qtquicktimeline","qt68-qtwebengine","qt68-qtdeclarative","qt68-qtgraphs","qt68-qtcharts","qt68-qtserialport","qt68-qtsensors","qt68-qtdoc","qt68-qthttpserver","qt68-qtwebchannel","qt68-qtimageformats","qt68-qtshadertools","qt68-qtvirtualkeyboard","qt68-qtsvg","qt68-qt5compat","qt68-qtlottie","qt68-qtlocation","qt68-qtquickeffectmaker","qt68-qtserialbus","qt68-qtlanguageserver","qt68-qtdatavis3d","qt68-qtmultimedia","qt68-qtnetworkauth","qt68-qtremoteobjects","qt68-qtquick3dphysics","qt68-qtscxml","qt68-qtconnectivity","qt68-qt3d","qt68-qtspeech","qt68-qtwebview","qt68-qttools","qt68-qtwebsockets","qt68-qttranslations","qt68-qtbase-docs","qt68-qtpositioning-docs","qt68-qtquick3d-docs","qt68-qtquicktimeline-docs","qt68-qtwebengine-docs","qt68-qtdeclarative-docs","qt68-qtgraphs-docs","qt68-qtcharts-docs","qt68-qtserialport-docs","qt68-qtsensors-docs","qt68-qtdoc-docs","qt68-qthttpserver-docs","qt68-qtwebchannel-docs","qt68-qtimageformats-docs","qt68-qtvirtualkeyboard-docs","qt68-qtshadertools-docs","qt68-qtsvg-docs","qt68-qt5compat-docs","qt68-qtlocation-docs","qt68-qtlottie-docs","qt68-qtquickeffectmaker-docs","qt68-qtserialbus-docs","qt68-qtdatavis3d-docs","qt68-qtmultimedia-docs","qt68-qtnetworkauth-docs","qt68-qtremoteobjects-docs","qt68-qtquick3dphysics-docs","qt68-qtscxml-docs","qt68-qtconnectivity-docs","qt68-qt3d-docs","qt68-qtspeech-docs","qt68-qtwebview-docs","qt68-qttools-docs","qt68-qtwebsockets-docs","qt68-psql-plugin","qt68-mysql-plugin","qt68-sqlite-plugin","py39-pyside6","py310-pyside6","py311-pyside6","py312-pyside6","py313-pyarrow","libpeas1","py313-blosc2","py313-gemmi","py313-nanobind","paps","py39-nanobind","py310-nanobind","py311-nanobind","py312-nanobind","webp-pixbuf-loader","qt6-qtgrpc","qt6-qtgrpc-docs","llvm-21","mlir-21","clang-21","lldb-21","flang-21","py313-fabio","py313-pyFAI","py313-spglib","py313-pyside6","py314-pybind11","qt69-qtbase","qt69-qtpositioning","qt69-qtgrpc","qt69-qtquick3d","qt69-qtquicktimeline","qt69-qtwebengine","qt69-qtdeclarative","qt69-qtgraphs","qt69-qtcharts","qt69-qtserialport","qt69-qtsensors","qt69-qtdoc","qt69-qthttpserver","qt69-qtwebchannel","qt69-qtimageformats","qt69-qtshadertools","qt69-qtvirtualkeyboard","qt69-qtsvg","qt69-qt5compat","qt69-qtlottie","qt69-qtlocation","qt69-qtquickeffectmaker","qt69-qtserialbus","qt69-qtlanguageserver","qt69-qtdatavis3d","qt69-qtmultimedia","qt69-qtnetworkauth","qt69-qtremoteobjects","qt69-qtquick3dphysics","qt69-qtscxml","qt69-qtconnectivity","qt69-qt3d","qt69-qtspeech","qt69-qtwebview","qt69-qttools","qt69-qtwebsockets","qt69-qttranslations","qt69-qtbase-docs","qt69-qtpositioning-docs","qt69-qtgrpc-docs","qt69-qtquick3d-docs","qt69-qtquicktimeline-docs","qt69-qtwebengine-docs","qt69-qtdeclarative-docs","qt69-qtgraphs-docs","qt69-qtcharts-docs","qt69-qtserialport-docs","qt69-qtsensors-docs","qt69-qtdoc-docs","qt69-qthttpserver-docs","qt69-qtwebchannel-docs","qt69-qtimageformats-docs","qt69-qtshadertools-docs","qt69-qtvirtualkeyboard-docs","qt69-qtsvg-docs","qt69-qt5compat-docs","qt69-qtlottie-docs","qt69-qtlocation-docs","qt69-qtquickeffectmaker-docs","qt69-qtserialbus-docs","qt69-qtdatavis3d-docs","qt69-qtmultimedia-docs","qt69-qtnetworkauth-docs","qt69-qtremoteobjects-docs","qt69-qtquick3dphysics-docs","qt69-qtscxml-docs","qt69-qtconnectivity-docs","qt69-qt3d-docs","qt69-qtspeech-docs","qt69-qtwebview-docs","qt69-qttools-docs","qt69-qtwebsockets-docs","qt69-psql-plugin","qt69-mysql-plugin","qt69-sqlite-plugin","py314-matplotlib","py314-pyside6","angle","py314-rapidfuzz","py313-pytorch","py314-levenshtein","py314-gemmi","py314-nanobind","py313-z3","py314-z3","py314-pyarrow","py314-blosc2","py314-pytorch","llvm-22","mlir-22","clang-22","flang-22","lldb-22","libfmt12","py311-torchaudio","py312-torchaudio","py313-torchaudio","py314-torchaudio","maxflow","arm-toolchain-embedded","qt6-qttasktree","qt6-qtcanvaspainter","qt6-qttasktree-docs","qt6-qtcanvaspainter-docs","qt610-qtbase","qt610-qtpositioning","qt610-qtgrpc","qt610-qtquick3d","qt610-qtquicktimeline","qt610-qtwebengine","qt610-qtgraphs","qt610-qtdeclarative","qt610-qtcharts","qt610-qtserialport","qt610-qtsensors","qt610-qtdoc","qt610-qthttpserver","qt610-qtimageformats","qt610-qtwebchannel","qt610-qtshadertools","qt610-qtsvg","qt610-qtvirtualkeyboard","qt610-qt5compat","qt610-qtlottie","qt610-qtlocation","qt610-qtquickeffectmaker","qt610-qtserialbus","qt610-qtlanguageserver","qt610-qtdatavis3d","qt610-qtmultimedia","qt610-qtremoteobjects","qt610-qtnetworkauth","qt610-qtquick3dphysics","qt610-qtscxml","qt610-qtconnectivity","qt610-qt3d","qt610-qtspeech","qt610-qtwebview","qt610-qttools","qt610-qtwebsockets","qt610-qttranslations","qt610-qtbase-docs","qt610-qtpositioning-docs","qt610-qtgrpc-docs","qt610-qtquick3d-docs","qt610-qtquicktimeline-docs","qt610-qtwebengine-docs","qt610-qtdeclarative-docs","qt610-qtgraphs-docs","qt610-qtserialport-docs","qt610-qtcharts-docs","qt610-qtsensors-docs","qt610-qtdoc-docs","qt610-qthttpserver-docs","qt610-qtwebchannel-docs","qt610-qtimageformats-docs","qt610-qtshadertools-docs","qt610-qtvirtualkeyboard-docs","qt610-qtsvg-docs","qt610-qt5compat-docs","qt610-qtlottie-docs","qt610-qtlocation-docs","qt610-qtquickeffectmaker-docs","qt610-qtserialbus-docs","qt610-qtdatavis3d-docs","qt610-qtnetworkauth-docs","qt610-qtmultimedia-docs","qt610-qtremoteobjects-docs","qt610-qtquick3dphysics-docs","qt610-qtscxml-docs","qt610-qtconnectivity-docs","qt610-qt3d-docs","qt610-qtspeech-docs","qt610-qtwebview-docs","qt610-qttools-docs","qt610-qtwebsockets-docs","qt610-psql-plugin","qt610-mysql-plugin","qt610-sqlite-plugin","spirv-llvm-translator-22","libclc-22","glib2-bootstrap-devel","gobject-introspection-bootstrap-devel"]},{"type":"test","ports":["fson","zofu"]},{"type":"run","ports":["meson","py38-meson","py39-meson","py310-meson","py311-meson","py312-meson","py313-meson","py314-meson"]}]}