Skip to content
Browse files

Added jom 1.1.0 and ninja 1.7.1 build tools

  • Loading branch information...
AchimTuran authored and popcornmix committed Jun 18, 2016
1 parent 0fafe28 commit c1e36ee9c40d1e607d681134245aaed3f9ef7eb7
@@ -0,0 +1,3 @@
@echo off
BuildConsole /command="jom -j%IBJOM_NUMBEROFJOBS% %*"
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,163 @@
This is the changelog for jom 1.1.0, the parallel make tool.

Changes since jom 1.0.16
- Restrict the number of parallel jobs in recursively called instances
similar to GNU make's jobserver (QTCREATORBUG-10846).

Changes since jom 1.0.15
- Fix occasional hang on exit (QTCREATORBUG-14600).

Changes since jom 1.0.14
- Fix potential hang on error in a sub-jom.
- Yield error on missing !endif directives (QTCREATORBUG-14211).
- Fix ignoring exit codes greater than 255.
- Fix $? filename macro for nonexistent targets (QTCREATORBUG-14125).
- Fix quoting of dependencies with spaces (QTCREATORBUG-12296).

Changes since jom 1.0.13
- Fix exit code forwarding. (QTCREATORBUG-11556)
- Fix file name macro modifers for $** and $?. (QTCREATORBUG-6932)
- Fix equal signs in semicolon command syntax. (QTCREATORBUG-7942)
- Fix error line numbers for inline files. (QTCREATORBUG-8451)
- Ignore macro assignments in inline files. (QTCREATORBUG-8452)
- Yield error on unexpected !ENDIF directive.
- Support wildcards in dependency lines. (QTCREATORBUG-10439)
- Use IcrediBuild's BuildConsole instead of the XGE interface in ibjom.

Changes since jom 1.0.12
- Fix spurious "Can't start command" error.
- Fix passing of -j argument to subjoms.
- Sanity check the -j argument.
- Fix regression of non-functional set command in command blocks.
- Fix handling of environment variables that would cause a syntax errors in
- Fix handling of environment variables with lowercase names.

Changes since jom 1.0.11
- Performance improvements.
- Fixed whitespace in command line arguments. (QTCREATORBUG-7428)
- Enhanced responsiveness of subjom output.
- Separate output of stdout and stderr.
- Fix the output of silent commands in /n mode. (QTCREATORBUG-7170)
- Implemented the /U switch for dumping inline files.
- Fix expansion of environment variables.

Changes since jom 1.0.10
- Fix exit code for /k command line switch. (QTCREATORBUG-6987)
- Fix spurious 0x0d characters in process output. (QTCREATORBUG-6986)
- Fix process output ordering and printing of large amounts of output
in recursive jom scenarios.
- Improved performance by caching file time stamps.

Changes since jom 1.0.9
- Fix regression that caused jom to fail on Windows XP.

Changes since jom 1.0.8
- The GNU Make option -w is now supported to print the current working
directory before and after other processing.
- Fix crash when specifying a target for an empty makefile.
- Fix lookup for targets in the Makefile's directory. (QTCREATORBUG-6546)
- Fix handling of environment variables. (QTCREATORBUG-6578)
- Specifying an exit code with the '-' command modifier was fixed.
- Fix command modifiers in inference rules. (QTCREATORBUG-6742)
- Fix parsing of the "ignore exit code" command modifier.
- Fix (very rare) deadlock and zombie processes.
- The preprocessor directive !include <file> now looks up files in the
include directories correctly. (QTCREATORBUG-6869)

Changes since jom 1.0.7
- Fix spawning of child processes that expect a valid stdin handle.
E.g. xcopy couldn't be called anymore.
- CMakeList.txt was fixed (thanks to Ryan Pavlik).

Changes since jom 1.0.6
- Fix blank lines in output. (QTCREATORBUG-3974)
- Small performance improvement due to compilation with
- Ctrl-C handling has been revisited. Much simpler and more correct.
Before the compiler jobs didn't get a Ctrl-C but were terminated.
- Special .SYNC dependents implemented. See README for a small description.
- Handle quoted dollar signs in inline files correctly. (QTCREATORBUG-2875)
- Respect the MAKEFLAGS environment variable. (QTCREATORBUG-5028)
- Complete detection of cmd builtins. This fixes annoying warnings when building
with IncrediBuild.

Changes since jom 1.0.5
- Fix mean monster spawn issue.

Changes since jom 1.0.4
- Fix out of date check for pseudotargets. (QTCREATORBUG-3909)

Changes since jom 1.0.3
- Fix that -j1 wasn't passed to sub jom calls. (QTCREATORBUG-3729)
- /KEEPTEMPFILES was added for debugging purposes. (QTCREATORBUG-3852)
- Performance boost for incremental builds.
- Improved Ctrl-C handling for recursive make.

Changes since jom 1.0.2
- Support variable names with underscores. (QTCREATORBUG-3235)
- Keep order of dependencies on build. This is important for makefiles
lacking complete dependencies. These might fail in parallel builds
- Fix issues wrt environment variables. (QTCREATORBUG-3108)

Changes since jom 1.0.1
- Make target names case insensitive. (QTCREATORBUG-3037)
- Fix reading of include files without newline at the end.
- Repair the cmake project file for jom.

Changes since jom 1.0.0
- Cleaner and faster determination of targets that must be built.
- Fix incomplete up-to-date check for inference rule targets.
- Don't filter comments in inline files. (QTCREATORBUG-2874)

Changes since jom 0.9.4
- Inference rule batch mode implemented.
This improves performance for makefiles that make heavy use of the batch
mode, e.g. qmake generated makefiles.
- Improved command execution. No more batch file writing.
- Macro substitution implemented. Macro expansions like
$(TARGET:suffix=d) are now possible.
- .SUFFIXES content is handled properly.
- Fixed several bugs in file name macro expansion.
- Output of concurrent processes is explicitely separated.

Changes since jom 0.9.3
- Opening files from volume mounted to NTFS directory fixed.
- Output buffering issue fixed. (QTBUG-10798)

Changes since jom 0.9.2
- Support for multiple inline files per command line added.
- Its now possible to use "." as target name. (QTCREATORBUG-1131)
- Support file name macros in the file name part of inline file defitions.
- Multiple file name macros per command line are possible now.
- Single name macro invocation was added.
They can be invoked like this: $A instead of $(A).
- Several bugs related to file name macros have been fixed.
- Handle quoted arguments from command files correctly.

Changes since jom 0.9.1
- Fixed conditionals in preprocessor expressions. (QTCREATORBUG-1091)
- Improved parser error messages. Now we see the file, in which the
error occurred. (QTCREATORBUG-1114)

Changes since jom 0.9.0
- Having too many rules for a target is now a warning and not an error.
- Fixed several bugs in the preprocessor expression parser, e.g.

Changes since jom 0.8.9
- Reset the ERRORLEVEL to zero, if command's exit code should be ignored.
- Command files can be used to pass command line options to jom.
Usage: jom @commands.txt
- ANTLR isn't used anymore. We're using QLALR to generate the parser for
preprocessor expressions now. This makes building jom much easier.

Binary file not shown.
Binary file not shown.
@@ -0,0 +1,106 @@

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
and the repo to

== Release notes
* New feature: Implicit outputs (#989)
Documented in the manual at
* 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
+ 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 (#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

This release brought to you by:
$ git shortlog -s --no-merges v1.6.0..v1.7.1
1 Alex Vallee
2 Alex Vall�e
1 Ben Falconer
8 Brad King
5 Colin Cross
1 Dan Willemsen
1 David Emett
2 Demetri Obenour
1 Ed Baunton
10 Evan Martin
1 Frank Benkstein
3 Fredrik Medley
1 Hadi Moshayedi
1 James Johnston
3 Jason Haslam
1 Lindley French
7 Mike Seplowitz
18 Nico Weber
5 Nicolas Despres
1 Niklas Rosenstein
3 Peter Wu
12 Scott Graham
1 Shinichiro Hamaji
2 Tetsuo Kiso
1 Thiago Farina
1 g4m4
1 peter1000
1 ptzz
1 sphawk

== Getting this release

To build this release, clone the repository as follows:
git clone git://
cd ninja
git checkout v1.7.1
or grab a tarball from .

Once you have the code, run `./ --bootstrap` to build and then
./ninja --version will print the version number. also has precompiled
binaries for Linux (64bit), Mac OS X (10.6+, 64bit), and Windows (64bit).

0 comments on commit c1e36ee

Please sign in to comment.
You can’t perform that action at this time.