head	1.29;
access;
symbols
	pkgsrc-2026Q1:1.29.0.2
	pkgsrc-2026Q1-base:1.29
	pkgsrc-2025Q4:1.27.0.2
	pkgsrc-2025Q4-base:1.27
	pkgsrc-2025Q3:1.26.0.2
	pkgsrc-2025Q3-base:1.26
	pkgsrc-2025Q2:1.23.0.4
	pkgsrc-2025Q2-base:1.23
	pkgsrc-2025Q1:1.23.0.2
	pkgsrc-2025Q1-base:1.23
	pkgsrc-2024Q4:1.22.0.6
	pkgsrc-2024Q4-base:1.22
	pkgsrc-2024Q3:1.22.0.4
	pkgsrc-2024Q3-base:1.22
	pkgsrc-2024Q2:1.22.0.2
	pkgsrc-2024Q2-base:1.22
	pkgsrc-2024Q1:1.20.0.6
	pkgsrc-2024Q1-base:1.20
	pkgsrc-2023Q4:1.20.0.4
	pkgsrc-2023Q4-base:1.20
	pkgsrc-2023Q3:1.20.0.2
	pkgsrc-2023Q3-base:1.20
	pkgsrc-2023Q2:1.19.0.2
	pkgsrc-2023Q2-base:1.19
	pkgsrc-2023Q1:1.18.0.6
	pkgsrc-2023Q1-base:1.18
	pkgsrc-2022Q4:1.18.0.4
	pkgsrc-2022Q4-base:1.18
	pkgsrc-2022Q3:1.18.0.2
	pkgsrc-2022Q3-base:1.18
	pkgsrc-2022Q2:1.17.0.2
	pkgsrc-2022Q2-base:1.17
	pkgsrc-2022Q1:1.16.0.12
	pkgsrc-2022Q1-base:1.16
	pkgsrc-2021Q4:1.16.0.10
	pkgsrc-2021Q4-base:1.16
	pkgsrc-2021Q3:1.16.0.8
	pkgsrc-2021Q3-base:1.16
	pkgsrc-2021Q2:1.16.0.6
	pkgsrc-2021Q2-base:1.16
	pkgsrc-2021Q1:1.16.0.4
	pkgsrc-2021Q1-base:1.16
	pkgsrc-2020Q4:1.16.0.2
	pkgsrc-2020Q4-base:1.16
	pkgsrc-2020Q3:1.15.0.2
	pkgsrc-2020Q3-base:1.15
	pkgsrc-2020Q2:1.13.0.2
	pkgsrc-2020Q2-base:1.13
	pkgsrc-2020Q1:1.12.0.2
	pkgsrc-2020Q1-base:1.12
	pkgsrc-2019Q4:1.10.0.8
	pkgsrc-2019Q4-base:1.10
	pkgsrc-2019Q3:1.10.0.4
	pkgsrc-2019Q3-base:1.10
	pkgsrc-2019Q2:1.10.0.2
	pkgsrc-2019Q2-base:1.10
	pkgsrc-2019Q1:1.9.0.2
	pkgsrc-2019Q1-base:1.9
	pkgsrc-2018Q4:1.8.0.14
	pkgsrc-2018Q4-base:1.8
	pkgsrc-2018Q3:1.8.0.12
	pkgsrc-2018Q3-base:1.8
	pkgsrc-2018Q2:1.8.0.10
	pkgsrc-2018Q2-base:1.8
	pkgsrc-2018Q1:1.8.0.8
	pkgsrc-2018Q1-base:1.8
	pkgsrc-2017Q4:1.8.0.6
	pkgsrc-2017Q4-base:1.8
	pkgsrc-2017Q3:1.8.0.4
	pkgsrc-2017Q3-base:1.8
	pkgsrc-2017Q2:1.7.0.6
	pkgsrc-2017Q2-base:1.7
	pkgsrc-2017Q1:1.7.0.4
	pkgsrc-2017Q1-base:1.7
	pkgsrc-2016Q4:1.7.0.2
	pkgsrc-2016Q4-base:1.7
	pkgsrc-2016Q3:1.6.0.4
	pkgsrc-2016Q3-base:1.6
	pkgsrc-2016Q2:1.6.0.2
	pkgsrc-2016Q2-base:1.6
	pkgsrc-2016Q1:1.5.0.6
	pkgsrc-2016Q1-base:1.5
	pkgsrc-2015Q4:1.5.0.4
	pkgsrc-2015Q4-base:1.5
	pkgsrc-2015Q3:1.5.0.2
	pkgsrc-2015Q3-base:1.5
	pkgsrc-2015Q2:1.3.0.6
	pkgsrc-2015Q2-base:1.3
	pkgsrc-2015Q1:1.3.0.4
	pkgsrc-2015Q1-base:1.3
	pkgsrc-2014Q4:1.3.0.2
	pkgsrc-2014Q4-base:1.3
	pkgsrc-2014Q3:1.2.0.2
	pkgsrc-2014Q3-base:1.2;
locks; strict;
comment	@# @;


1.29
date	2026.02.16.04.16.46;	author jnemeth;	state Exp;
branches;
next	1.28;
commitid	QG63ekstgoWDtyuG;

1.28
date	2026.01.27.12.59.15;	author mef;	state Exp;
branches;
next	1.27;
commitid	8LhmtM47zrPJ02sG;

1.27
date	2025.11.21.09.23.00;	author adam;	state Exp;
branches;
next	1.26;
commitid	FLY7qMOGXzU1YojG;

1.26
date	2025.07.29.17.27.15;	author wiz;	state Exp;
branches;
next	1.25;
commitid	plkE3E43xxkllF4G;

1.25
date	2025.07.13.08.56.40;	author wiz;	state Exp;
branches;
next	1.24;
commitid	u0CPDhRncgr62z2G;

1.24
date	2025.06.30.20.40.07;	author adam;	state Exp;
branches;
next	1.23;
commitid	OgT1kDeRvN9glX0G;

1.23
date	2025.02.07.16.00.27;	author tsutsui;	state Exp;
branches;
next	1.22;
commitid	S7eHmteLoIYnoyIF;

1.22
date	2024.05.11.18.58.09;	author adam;	state Exp;
branches;
next	1.21;
commitid	UK49sR6fdJGj7C9F;

1.21
date	2024.04.14.16.18.22;	author adam;	state Exp;
branches;
next	1.20;
commitid	TPefVlJxxgMj686F;

1.20
date	2023.08.14.05.24.13;	author wiz;	state Exp;
branches;
next	1.19;
commitid	LOSB79OLVxvXjIAE;

1.19
date	2023.06.06.12.40.41;	author riastradh;	state Exp;
branches;
next	1.18;
commitid	xhspr6Z8JLQOWSrE;

1.18
date	2022.08.31.08.07.19;	author adam;	state Exp;
branches;
next	1.17;
commitid	qsc6wsRJgUjtp0SD;

1.17
date	2022.05.27.12.22.35;	author adam;	state Exp;
branches;
next	1.16;
commitid	Y56MEL0jR4ujUGFD;

1.16
date	2020.11.29.18.06.56;	author wiz;	state Exp;
branches;
next	1.15;
commitid	5Zaw7JAYvvfTiOxC;

1.15
date	2020.08.19.08.52.44;	author adam;	state Exp;
branches;
next	1.14;
commitid	bbYTG7fcZ7Z0wEkC;

1.14
date	2020.07.06.10.48.34;	author jperkin;	state Exp;
branches;
next	1.13;
commitid	HzOAEsZea5yrz0fC;

1.13
date	2020.04.21.07.48.55;	author dsainty;	state Exp;
branches;
next	1.12;
commitid	mqSalCovvUTw0e5C;

1.12
date	2020.03.18.00.05.18;	author rillig;	state Exp;
branches;
next	1.11;
commitid	TS0FLZTF0QsSxO0C;

1.11
date	2020.02.10.13.13.04;	author ryoon;	state Exp;
branches;
next	1.10;
commitid	1tAhA25sqXVY58WB;

1.10
date	2019.04.25.07.32.48;	author maya;	state Exp;
branches;
next	1.9;
commitid	1FEMQBEPb9uTxHkB;

1.9
date	2019.02.17.11.58.50;	author wiz;	state Exp;
branches;
next	1.8;
commitid	EcnIE5hogzGYb7cB;

1.8
date	2017.09.14.08.23.53;	author adam;	state Exp;
branches;
next	1.7;
commitid	fLVI2wjW1lm4K87A;

1.7
date	2016.11.14.14.38.32;	author wiz;	state Exp;
branches;
next	1.6;
commitid	ZARXwAzmY8YTA6uz;

1.6
date	2016.05.16.11.56.11;	author ryoon;	state Exp;
branches;
next	1.5;
commitid	ZszW1yjQ4xFTxH6z;

1.5
date	2015.08.29.06.32.02;	author wiz;	state Exp;
branches;
next	1.4;
commitid	5bBVw3d77lsN88zy;

1.4
date	2015.07.09.14.09.44;	author wiz;	state Exp;
branches;
next	1.3;
commitid	b8KyAoiZOPovjCsy;

1.3
date	2014.11.27.13.38.15;	author joerg;	state Exp;
branches;
next	1.2;
commitid	wgrjMdn6dhH7lPZx;

1.2
date	2014.09.08.09.41.08;	author obache;	state Exp;
branches;
next	1.1;
commitid	HC8cL7Hrrk4cBwPx;

1.1
date	2014.09.05.14.51.39;	author joerg;	state Exp;
branches;
next	;
commitid	RzVmlJsETRFCpaPx;


desc
@@


1.29
log
@add a conflict with chat/ninja which also installs bin/ninja
@
text
@# $NetBSD: Makefile,v 1.28 2026/01/27 12:59:15 mef Exp $

DISTNAME=	ninja-1.13.2
PKGNAME=	${DISTNAME:S/ninja/ninja-build/}
CATEGORIES=	devel
MASTER_SITES=	${MASTER_SITE_GITHUB:=ninja-build/}
GITHUB_PROJECT=	ninja
GITHUB_TAG=	v${PKGVERSION_NOREV}

MAINTAINER=	ryoon@@NetBSD.org
HOMEPAGE=	https://ninja-build.org/
COMMENT=	Small build system with a focus on speed
LICENSE=	apache-2.0

# avoid conflict with devel/py-ninja
DIST_SUBDIR=	ninja-build

TOOL_DEPENDS+=	re2c>=0.11.3:../../devel/re2c

CONFLICTS+=     ninja-[0-9]*

.include "../../mk/bsd.prefs.mk"

.if ${OPSYS} == "Darwin"
#
# Under MacOS X the LD_LIBRARY_PATH variable is unset by the build system
# running executables under /bin (namely /bin/sh).  This is part of MacOS X
# System Integrity Protection.
#
# Because many (most?) users of ninja/meson seem to need hacks involving
# LD_LIBRARY_PATH, use a non-SIP-triggering shell under MacOS X.
#
# macOS bootstraps are transitioning to mksh as the system shell, once that
# has been in place for a while we can remove the pdksh support, and ideally
# just replace this whole section with -DNINJA_SHELL=${TOOLS_PLATFORM.sh}
#
.  if ${TOOLS_PLATFORM.sh:M?*/bin/mksh}
DEPENDS+=	mksh-[0-9]*:../../shells/mksh
CFLAGS+=	-DNINJA_SHELL=${PREFIX}/bin/mksh
.  else
DEPENDS+=	pdksh-[0-9]*:../../shells/pdksh
CFLAGS+=	-DNINJA_SHELL=${PREFIX}/bin/pdksh
.  endif
.else
CFLAGS+=	-DNINJA_SHELL=/bin/sh
.endif

USE_LANGUAGES=	c c++

INSTALLATION_DIRS=	bin
INSTALLATION_DIRS+=	share/doc/ninja
INSTALLATION_DIRS+=	share/ninja
INSTALLATION_DIRS+=	share/bash-completion/completions
INSTALLATION_DIRS+=	share/zsh/site-functions

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.vim \
		${DESTDIR}${PREFIX}/share/ninja
	${INSTALL_DATA} ${WRKSRC}/misc/bash-completion \
		${DESTDIR}${PREFIX}/share/bash-completion/completions/ninja
	${INSTALL_DATA} ${WRKSRC}/misc/zsh-completion \
		${DESTDIR}${PREFIX}/share/zsh/site-functions/_ninja

.include "../../lang/python/tool.mk"
.include "../../mk/bsd.pkg.mk"
@


1.28
log
@(devel/py-ninja devel/ninja-build) +DIST_SUBDIR to avoid conflict
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.27 2025/11/21 09:23:00 adam Exp $
d20 2
@


1.27
log
@ninja-build: updated to 1.13.2

1.13.2

Fix Ninja exit code when interrupted
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.26 2025/07/29 17:27:15 wiz Exp $
d15 3
@


1.26
log
@ninja-build: install zsh and bash completions in the proper places

Bump PKGREVISION.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.25 2025/07/13 08:56:40 wiz Exp $
d3 1
a3 1
DISTNAME=	ninja-1.13.1
a4 1
PKGREVISION=	1
@


1.25
log
@ninja-build: update to 1.13.1.

Bugfixes:

    Fix LINK : fatal error LNK1104: cannot open file on Windows in some cases #2616
    Compatibility with older distros for Linux ARM version #2619
    Restore "multiple rules generate" error with dyndep #2621
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.24 2025/06/30 20:40:07 adam Exp $
d5 1
d46 5
a50 1
INSTALLATION_DIRS=	bin share/doc/ninja share/ninja
d63 1
a63 1
		${DESTDIR}${PREFIX}/share/ninja
d65 1
a65 1
		${DESTDIR}${PREFIX}/share/ninja
@


1.24
log
@ninja-build: updated to 1.13.0

1.13.0

Ninja now automatically joins a GNU Make jobserver as a client (version 4.4 on non-Windows systems required for "fifo" style)
Print exit code of failed subcommands
ninja -t compdb accepts a target
Support for ANSI (color) escape codes in NINJA_STATUS
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.23 2025/02/07 16:00:27 tsutsui Exp $
d3 1
a3 1
DISTNAME=	ninja-1.13.0
@


1.23
log
@ninja-build: avoid allocating 512KB on stack.

Patch from isaki@@.  Tested on NetBSD/amd64, NetBSD/i386, and
NetBSD/virt68k (with 512KB DFLSSIZ and MAXSSIZ) by me.

Bump PKGREVISION.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.22 2024/05/11 18:58:09 adam Exp $
d3 1
a3 1
DISTNAME=	ninja-1.12.1
a4 1
PKGREVISION=	1
a54 2
	${INSTALL_DATA} ${WRKSRC}/misc/ninja-mode.el \
		${DESTDIR}${PREFIX}/share/ninja
@


1.22
log
@ninja-build: updated to 1.12.1

v1.12.1

Bugfixes:

Screen updates extremely slow on Windows
Dry run error if the build directory does not exist
New critical path scheduler performance improvements
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.21 2024/04/14 16:18:22 adam Exp $
d5 1
@


1.21
log
@ninja-build: updated to 1.12.0

v1.12.0
I've wrote a summary as an announcement to the ninja-build mailing list, but it seems to be stuck in the moderation queue - thank you Google Groups 😔. I'll update this if the mail ever sees the light of day.

https://github.com/ninja-build/ninja/milestone/6?closed=1
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.20 2023/08/14 05:24:13 wiz Exp $
d3 1
a3 1
DISTNAME=	ninja-1.12.0
@


1.20
log
@*: recursive bump for Python 3.11 as new default
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.19 2023/06/06 12:40:41 riastradh Exp $
d3 1
a3 1
DISTNAME=	ninja-1.11.1
a4 1
PKGREVISION=	1
@


1.19
log
@Mass-change BUILD_DEPENDS to TOOL_DEPENDS outside mk/.

Almost all uses, if not all of them, are wrong, according to the
semantics of BUILD_DEPENDS (packages built for target available for
use _by_ tools at build-time) and TOOL_DEPEPNDS (packages built for
host available for use _as_ tools at build-time).

No change to BUILD_DEPENDS as used correctly inside buildlink3.

As proposed on tech-pkg:
https://mail-index.netbsd.org/tech-pkg/2023/06/03/msg027632.html
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.18 2022/08/31 08:07:19 adam Exp $
d5 1
@


1.18
log
@ninja-build: updated to 1.11.1

v1.11.1
This is a hotfix release for a SIGFPE on Linux
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.17 2022/05/27 12:22:35 adam Exp $
d15 1
a15 1
BUILD_DEPENDS+=	re2c>=0.11.3:../../devel/re2c
@


1.17
log
@ninja-build: updated to 1.11.0

release 1.11

This release adds Validation Nodes which are a new way to add jobs like linters or static analyzers to the build graph. They are added using |@@ and don't produce any outputs. You can read more about the motivation and the syntax here: https://github.com/ninja-build/ninja/pull/1800

Another big change is that Ninja now uses UTF-8 on Windows. This means that while previous versions of Ninja used the local ANSI encoding it will now always use UTF-8 allowing filenames and output with special characters. For this to work you'll need Windows 10 Version 1903 or newer. And for the console output to show Unicode characters you'll need to set the codepage to 65001. More information at: https://github.com/ninja-build/ninja/pull/1915

Note that this is a breaking change if you relied on non-ASCII characters of the local codepage! If you want to query Ninja what codepage it uses in your generator, call `ninja -t wincodepage` and act accordingly.

There are also two new tools:
missingdeps: https://github.com/ninja-build/ninja/pull/1331
inputs: https://github.com/ninja-build/ninja/pull/1730

And as it was often requested, ninja now has a --quiet flag :)

For a complete list of changes see https://github.com/ninja-build/ninja/milestone/3?closed=1
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.16 2020/11/29 18:06:56 wiz Exp $
d3 1
a3 1
DISTNAME=	ninja-1.11.0
@


1.16
log
@ninja-build: update to 1.10.2.

There have been two small changes in this release: The browse tool
is now enabled when building with CMake (so it's part of the official
binaries again) and it should now work in all circumstances to run
the restat tool by the generator on Windows. See
https://github.com/ninja-build/ninja/issues/1724#issuecomment-677730694
for why the fix in 1.10.1 wasn't enough.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.15 2020/08/19 08:52:44 adam Exp $
d3 1
a3 1
DISTNAME=	ninja-1.10.2
@


1.15
log
@ninja-build: updated to 1.10.1

v1.10.1
See https://groups.google.com/g/ninja-build/c/QQM54eAhrjU/m/q5zn_zTlAQAJ for the v1.10.1 release notes.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2020/07/06 10:48:34 jperkin Exp $
d3 1
a3 1
DISTNAME=	ninja-1.10.1
@


1.14
log
@ninja-build: Support mksh-enabled macOS installs.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.13 2020/04/21 07:48:55 dsainty Exp $
d3 1
a3 1
DISTNAME=	ninja-1.10.0
a4 1
PKGREVISION=	1
d7 1
a8 1
GITHUB_PROJECT=	ninja
@


1.13
log
@Support a shell other than /bin/sh as a workaround for MacOS X.

Under MacOS X the LD_LIBRARY_PATH variable is unset by the build system
running executables under /bin (namely /bin/sh).  This is part of MacOS X
System Integrity Protection.

Because many (most?) users of ninja/meson seem to need hacks involving
LD_LIBRARY_PATH, use a non-SIP-triggering shell under MacOS X.

Fixes MacOS X builds of glib2, gobject-introspection and others.

Bump PKGREVISION for the new behaviour under MacOS X.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2020/03/18 00:05:18 rillig Exp $
d29 8
d39 1
@


1.12
log
@devel/ninja-build: remove obsolete SUBST block

The ninja code does not contain the word PREFIX anymore.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2020/02/10 13:13:04 ryoon Exp $
d5 1
d18 17
@


1.11
log
@ninja-build: Update to 1.10.0

Changelog:
we'd like to release 1.10 from current master.

The big new feature will be the new dyndep binding to support
Fortran and C++20 modules: https://github.com/ninja-build/ninja/pull/1521

Also there are three new tools:

cleandead: https://github.com/ninja-build/ninja/pull/1432
restat: https://github.com/ninja-build/ninja/pull/1685
rules: https://github.com/ninja-build/ninja/pull/1025 (this one
actually existed in older versions of Ninja and is now back)

Ninja itself can now also be built with CMake. For the release this
will be done automatically by GitHub Actions, uploading the binary
archives automatically and thus making the whole process a lot
easier. If you want to test those binaries, check out:
https://github.com/ninja-build/ninja/runs/396697164
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2019/04/25 07:32:48 maya Exp $
a18 6
SUBST_CLASSES+=		prefix
SUBST_STAGE.prefix=	pre-configure
SUBST_MESSAGE.prefix=	Fix PREFIX
SUBST_FILES.prefix=	configure.py
SUBST_VARS.prefix=	PREFIX

@


1.10
log
@PKGREVISION bump for anything using python without a PYPKGPREFIX.

This is a semi-manual PKGREVISION bump.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2019/02/17 11:58:50 wiz Exp $
d3 1
a3 1
DISTNAME=	ninja-1.9.0
a4 1
PKGREVISION=	1
@


1.9
log
@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.
https://github.com/ninja-build/ninja/issues/371

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/compare/v1.8.2...v1.9.0
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2017/09/14 08:23:53 adam Exp $
d5 1
@


1.8
log
@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
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2016/11/14 14:38:32 wiz Exp $
d3 1
a3 1
DISTNAME=	ninja-1.8.2
d12 1
a12 1
COMMENT=	Ninja is a small build system with a focus on speed
@


1.7
log
@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()
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2016/05/16 11:56:11 ryoon Exp $
d3 1
a3 1
DISTNAME=	ninja-1.7.2
@


1.6
log
@Update to 1.7.1

* Update MASTER_SITES and HOMEPAGE

Changelog:
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 nothing
    (#1076)
  + 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
    (#973)

* 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
    (#1113)
  + 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
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2015/08/29 06:32:02 wiz Exp $
d3 1
a3 1
DISTNAME=	ninja-1.7.1
@


1.5
log
@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
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2015/07/09 14:09:44 wiz Exp $
d3 1
a3 1
DISTNAME=	ninja-1.6.0
d6 1
a6 1
MASTER_SITES=	${MASTER_SITE_GITHUB:=martine/}
d11 1
a11 1
HOMEPAGE=	http://martine.github.io/ninja/
@


1.4
log
@Convert to github.mk.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2014/11/27 13:38:15 joerg Exp $
d3 1
a3 1
DISTNAME=	ninja-1.5.1
d15 2
d22 1
a22 1
SUBST_FILES.prefix=	bootstrap.py
d28 1
a28 1
	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${PYTHONBIN} ./bootstrap.py --verbose
@


1.3
log
@Correctly sanitize environment.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2014/09/08 09:41:08 obache Exp $
d3 2
a4 3
NINJAVER=	1.5.1
DISTNAME=	ninja-${NINJAVER}
PKGNAME=	ninja-build-${NINJAVER}
d6 3
a8 1
MASTER_SITES=	-https://github.com/martine/ninja/archive/v${NINJAVER}.tar.gz
@


1.2
log
@Upstream DISTNAME must not be renamed.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2014/09/05 14:51:39 joerg Exp $
d25 1
a25 1
	cd ${WRKSRC} && ${PYTHONBIN} ./bootstrap.py --verbose
@


1.1
log
@Rename devel/ninja to devel/ninja-build to avoid conflict with
chat/ninja.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2014/07/19 09:01:23 ryoon Exp $
d4 2
a5 1
DISTNAME=	ninja-build-${NINJAVER}
@

