./devel/ninja-build, Small build system with a focus on speed

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 1.9.0nb1, Package name: ninja-build-1.9.0nb1, Maintainer: ryoon

Ninja is a small build system with a focus on speed. It differs
from other build systems in two major respects: it is designed to
have its input files generated by a higher-level build system, and
it is designed to run builds as fast as possible.

Required to run:

Required to build:
[devel/re2c] [pkgtools/cwrappers]

Master sites:

SHA1: d130e8cb7ed883125af978ec165199065e830d6a
RMD160: b447564481288e8c972140b2c91978280fbbf846
Filesize: 186.387 KB

Version history: (Expand)

CVS history: (Expand)

   2019-04-25 09:33:32 by Maya Rashish | Files touched by this commit (620)
Log message:
PKGREVISION bump for anything using python without a PYPKGPREFIX.

This is a semi-manual PKGREVISION bump.
   2019-02-17 12:58:50 by Thomas Klausner | Files touched by this commit (4) | Package updated
Log message:
ninja-build: update to 1.9.0.

We've finally tagged a new release of Ninja, version v1.9.0!

The biggest feature of this release would be high-resolution
timestamps, so timestamps with a resolution under 1 second.

There are also several small quality-of-life improvements, for
example ninja now enables Windows 10's ANSI color escape code
support.  https://github.com/ninja-build/ninja/issues/1451

For a complete list of changes see:
https://github.com/ninja-build/ninja/co … 2...v1.9.0
   2017-09-14 10:23:53 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ninja-build: update to 1.8.2

Release 1.8.2:

Behavior changes related to build edges
* Detect build graph cycles as early as possible. Cycles containing single phony \ 
edges are now detected and warned about. The new flag `-w phonycycle=err` \ 
upgrades the warning to an error, while `-w phonycycle=warn` explicitly makes \ 
this a warning. Future versions of ninja will default to phonycycle=err. In a \ 
few years, we hope to make this an error unconditionally. CMake 2.8-3.0 produces \ 
ninja files that trigger this warning.,
* Always re-run edges that exit with non-zero exit code, even if they \ 
successfully write their output
* Support restat when rebuilding manifest
* Support mtime of 0 on input files
* Allow more path components

Windows-specific changes
* replace deprecated GetVersionEx with recommended replacement
* Add clparser_perftest
* Faster clparser, speeds up full builds by up to 20%
* Write subprocess output to stdout in binary mode
* Remove path component limit from input of CanonicalizePath in windows

POSIX-specific changes
* Use POSIX_SPAWN_USEVFORK with glibc, makes some full builds twice as fast
* Close original pipe fd in subprocesses

Changes to building ninja itself
* Fix build with uclibc
* Suppress warning 4244 to bootstrap on vs2017
* Add support for DragonFly BSD.

Changes to scripts
* Make zsh completion use explicitly specified ninja files

Bugfixes and minor changes
* Improve error message when a depfile contains a bad path
* fix a clang-cl -Wformat warning
* browse: Bind to localhost by default
* teach -t commands to optionally print only the final command
   2017-02-09 01:24:23 by Joerg Sonnenberger | Files touched by this commit (2)
Log message:
Include missing header.
   2016-11-14 15:38:32 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
Updated ninja-build to 1.7.2.

This is a minor release after v1.7.1, mostly bugfixes.

== Release notes.

* %e and %r work again in dumb terminals (#1146, #1148)
* `-t browse` now HTML-escapes rule names (#1157)
* an edge may now have 0 explicit outputs if it has implicit outputs (#1159)
* make misc/measure.py python 3-compatible
* misc/write_fake_manifest.py now optionally writes source files, use it to
  quickly produce large, buildable projects for testing (#1109, #1198)
* on newer FreeBSDs, use ppoll()
   2016-05-16 13:56:12 by Ryo ONODERA | Files touched by this commit (3) | Package updated
Log message:
Update to 1.7.1


I've tagged a new release of Ninja, version v1.7.1

(I've also tagged v1.7.0, but don't use that.)

This is the first release after moving the homepage to https://ninja-build.org
and the repo to github.com/ninja-build.

== Release notes
* New feature: Implicit outputs (#989)
  Documented in the manual at https://ninja-build.org/manual.html#ref_outputs
* Output formatting changes
  + in non-interactive mode, print commands when finished, not when started --
    build output is now always preceded by the command that produced it (#999)
  + as a consequence, the default NINJA_STATUS is now "[%f/%t] " and %p
    is percentage of finished edges instead of percentage of started (#1142)
  + for failing commands, print "FAILED: output name" followed by the
    faiilng command on a new line, instead of "FAILED: command" (#1033)

* Several documentation updates

* Minor changes and bugfixes
  + "./" in paths is no longer an error but instead canonicalizes to \ 
  + New debugging flag `-d keepdepfile` (#1098)
  + `-w dupbuild=err` now works in subninjas (#1095)
  + Don't loop forever in dry-run mode if the generator rule is dirty (#1069)
  + `msvc_deps_prefix` can now be set per-rule, not just globally (#1043)
  + allow non-ANSI characters in depfiles (#763)
  + `-k 0` now works better with pools (#1017, #1023, #1126)

* `-t browse` changes
  + new --port and --no-browser flags; default to 'all' target (#1112)
  + make tool work if main build file isn't called build.ninja (#1116)

* Windows-specific changes
  + don't crash with deps=msvc if the compiler prints very long include notes

* POSIX-specific changes
  + Clean up build on SIGHUP (#964)
  + subprocesses are now spawned via posix_spawn instead of fork/exec, which
    speeds up builds on some systems (e.g Mac OS X) (#1118)
  + child processes no longer detached from terminal, restoring 1.5.0 behavior
  + experimentally expose deps=msvc on non-Windows too (#1125)

* Changes to building ninja itself
  + allow bootstrapping ninja itself in an out-of-source build dir (#979)
  + make ninja build on AIX (#1007)
  + ninja's source compiles with MSVC2015 (#1003, #1110, #1130)
  + ninja's source now also compiles with MSVC2008 (!) (#1101)
  + ninja's source builds with libc++ on Linux (#1134)

* Changes to scripts
  + zsh target completion is faster (#1046)
  + bash target completion is faster (#1047)
  + ninja_syntax: don't wrap long words in comments (#1042)
  + ninja_syntax: support implicit outputs
   2015-11-03 04:29:40 by Alistair G. Crooks | Files touched by this commit (1995)
Log message:
Add SHA512 digests for distfiles for devel category

Issues found with existing distfiles:
No changes made to these distinfo files.

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2015-08-29 08:32:02 by Thomas Klausner | Files touched by this commit (6) | Package updated
Log message:
Update to 1.6.0. Build tested only, I don't know how to runtest this.


I've tagged a new release of Ninja, version v1.6.0

== Release notes

* rules are now scoped to the subninja they're in. See thread
  "RFC: allow scoping rules via subninja"
  (https://groups.google.com/forum/#!topic … 8esdaNErjo)
  for discussion. (#921)
* dupe edges with multiple outputs now uses first edge
  instead of last (#867)
  + can make this warning optionally an error (-w dupbuild=err),
    which will hopefully become the default one day
    (this release is step 1 of #931)
* pools actually work now (#959)
* no longer print "Recompacting..." when recompacting –
  it's very fast in practice anyway
* generators can now run more often than twice if needed (#908)
* unexpected output names now cause a rebuild instead of
   a hard error (#417)

* POSIX-specific changes
  + child processes get detached from terminal (#909)
  + check for SIGINT after ppoll/pselect -> faster Ctrl-C (#893)
  + add an explicit SIGTERM signal handler (#743)

* Windows-specific changes
  + `-t graph` now produces working dot files on Windows
    when files contain backslashes
  + ninja now uses the full width in cmd.exe
    (it was one column short previously)
  + Ctrl-s (or pause key) in cmd.exe now pauses ninja
  + ninja now builds with MSVS2015
  + run more than 34 child processes if there are
    more than 32 cores. (#958)

* Ran ninja under afl-fuzz and fixed all crashes and bugs it found
  (see new afl-fuzz section in HACKING)
  + fix crashes on cyclic graphs with multiple outputs (#875, #867)
  + failing stat() now aborts build (#830, #904)
  + cyclic rule bindings no longer crash (#902)
  + dependency cycles with multiple outputs no longer get
    ninja into a stuck state (#934)

* Tweaks to configure.py
  (only relevant if you compile ninja itself)
  + configure.py now works with Python 3
  + configure.py now has a --verbose mode
  + configure.py now passes -fdiagnostics-color, so ninja's build
    is now colored with both new enough clangs (3.3+)
    and gccs (4.9+)

* Improvements to zsh completion to work better on OS X

* Documentation updates
+ the target^ syntax is now documented
+ the rule scoping change mentioned above is documented