pkgsrc/devel/ninja-build/Makefile
wiz e9de78204a Update to 1.6.0. Build tested only, I don't know how to runtest this.
Changes:

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/ninja-build/q8esdaNErjo)
  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
2015-08-29 06:32:02 +00:00

45 lines
1.3 KiB
Makefile

# $NetBSD: Makefile,v 1.5 2015/08/29 06:32:02 wiz Exp $
DISTNAME= ninja-1.6.0
PKGNAME= ${DISTNAME:S/ninja/ninja-build/}
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GITHUB:=martine/}
GITHUB_TAG= v${PKGVERSION_NOREV}
GITHUB_PROJECT= ninja
MAINTAINER= ryoon@NetBSD.org
HOMEPAGE= http://martine.github.io/ninja/
COMMENT= Ninja is a small build system with a focus on speed
LICENSE= apache-2.0
BUILD_DEPENDS+= re2c>=0.11.3:../../devel/re2c
USE_LANGUAGES= c c++
SUBST_CLASSES+= prefix
SUBST_STAGE.prefix= pre-configure
SUBST_MESSAGE.prefix= Fix PREFIX
SUBST_FILES.prefix= configure.py
SUBST_VARS.prefix= PREFIX
INSTALLATION_DIRS= bin share/doc/ninja share/ninja
do-build:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${PYTHONBIN} ./configure.py --bootstrap
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/ninja \
${DESTDIR}${PREFIX}/bin
${INSTALL_DATA} ${WRKSRC}/doc/manual.asciidoc \
${DESTDIR}${PREFIX}/share/doc/ninja
${INSTALL_DATA} ${WRKSRC}/misc/ninja-mode.el \
${DESTDIR}${PREFIX}/share/ninja
${INSTALL_DATA} ${WRKSRC}/misc/ninja.vim \
${DESTDIR}${PREFIX}/share/ninja
${INSTALL_DATA} ${WRKSRC}/misc/bash-completion \
${DESTDIR}${PREFIX}/share/ninja
${INSTALL_DATA} ${WRKSRC}/misc/zsh-completion \
${DESTDIR}${PREFIX}/share/ninja
.include "../../lang/python/tool.mk"
.include "../../mk/bsd.pkg.mk"