Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Mar 10, 2015
  1. @nico
  2. @nico

    Simplify. No behavior change.

    nico authored
Commits on Mar 9, 2015
  1. @nico

    Make diagnostics colored with new gccs (4.9+) too.

    nico authored
    Both clang and gcc understand -fdiagnostics-color, so use that flag name.
    (This will disable colored diagnostics for clangs older than LLVM 3.3,
    but that is several years old by now.)
  2. @kirbyfan64
Commits on Dec 31, 2014
  1. @berenm
Commits on Dec 11, 2014
  1. @mathstuf

    configure: add a verbose mode

    mathstuf authored
    Required for Fedora infrastructure so that the commands used to build
    ninja are logged.
Commits on Dec 3, 2014
  1. @nico
Commits on Nov 22, 2014
  1. @nico
  2. @nico

    Merge pull request #862 from nico/browse

    nico authored
    Make browse detection consistent with other platform checks.
  3. @nico
  4. @nico

    Stop linking pthread.

    nico authored
    It was only needed by gtest, which is no longer used.
    (Intesting note: I checked when the -lpthread flag was added, and it's
    been around since the first revision of, which used to be
    checked in before existed. Back then, it looks like '@' was
    used to dereference built-in variables, and build outputs were also
    prefixed by '@'!).
Commits on Nov 21, 2014
  1. @nico
  2. @nico
Commits on Nov 18, 2014
  1. merge platform_helper into configure script

    With this code all in one place, it's easier to spot unused code and
    simplification opportunities.
  2. add a --bootstrap mode for

    Instead of bootstrapping through a separate script, instead make able to either generate a *or* just execute
    all the computed commands to build a ninja binary.
Commits on Nov 14, 2014
  1. @nico

    Merge pull request #842 from nico/solaris

    nico authored
    Fix building on Solaris.
  2. @nico

    Make sure and always agree on if -t browse is i…

    nico authored
    No behavior change on most platforms. On solaris, -t browse was compiled in
    in but wasn't compiled in, which probably means that building
    on Solaris didn't work. It might be better now.
    This also makes automatically not included in bootstrap builds;
    previously this was done manually through the NINJA_BOOTSTRAP check.
  3. @nico

    Remove unused variables.

    nico authored
Commits on Nov 1, 2014
  1. @nico

    Fix building on Solaris.

    nico authored
    "SunOS" and "Solaris" are the same thing these days, so make them go
    down the same code paths. In particular, the browse feature was omitted
    on solaris but not sunos5, causing trouble for some folks (see #838).
Commits on Sep 19, 2014
  1. @nico

    Make auto-reconfiguring work if CFLAGS contains more than one flag.

    nico authored
    When using an open-source clang on OS X, one has to pass an isysroot
    flag so that it can find system headers (stdio.h), like so:
      CXX=path/to/clang++ CFLAGS="-isysroot $(xcrun -show-sdk-path)" ./
    Previously, wouldn't quote envvars containing spaces, so
    it'd rerun this as
      CXX=path/to/clang++ CFLAGS=-isysroot /sysroot/path ./
    which would then die because /sysroot/path wasn't excecutable.
Commits on Sep 18, 2014
  1. @nico

    Use a small, standalone testing framework instead of googletest.

    nico authored
    Ninja currently uses googletest for testing. That makes building
    ninja_test somewhat annoying since it requires that one passes
    --with-gtest PATH to configure. It turns out just implementing the bits
    of googletest that ninja uses needs about the same amount of code than
    making the --with-gtest flag in work and making googletest
    print test results in a way we want (!)
    In addition to making configuration simpler, this also makes compiling
    tests much faster: On my system, touching src/ (the slowest
    file to build in ninja) and rebuilding ninja_tests is twice as fast than
    without this patch. Building all is noticeably faster too: 5.6s with
    this patch, 9.1s without this patch (38% faster).
    The most noticeable things missing: EXPECT_* and ASSERT_* don't support
    streaming notes to them with operator<<, and for failing tests the lhs
    and rhs are not printed. That's so that this header does not have to
    include sstream, which slows down building ninja_test almost 20%.
    If this turns out to be annoying, we can maybe add it.
Commits on Jun 15, 2014
  1. @nico
Commits on Apr 17, 2014
  1. @nico
Commits on Apr 16, 2014
  1. @nico
Commits on Jan 9, 2014
  1. @nickhutchinson
Commits on Oct 27, 2013
  1. @nico
Commits on Oct 18, 2013
  1. @sgraham

    Fix compilation on VS2013

    sgraham authored
Commits on Sep 10, 2013
  1. @sgraham
Commits on Jun 29, 2013
  1. @dajohi
  2. @dajohi

    support Bitrig

    dajohi authored
Commits on May 23, 2013
  1. @tru

    Added bootstrap/configure option to force pselect

    tru authored
    All modern Linux kernels have ppoll() but sometimes
    you might want to compile on something ancient.
    This patch adds the possibility to force the use
    of pselect() instead by passing --force-pselect
    to bootstrap/configure.
    The use of ppoll() is still default for Linux
    and OpenBSD
Commits on May 17, 2013
  1. require version 1.3 for building ninja itself

    This catches the case where you use an older version on Ninja
    to build a newer version of the Ninja code. always should work regardless.
Commits on Apr 30, 2013
  1. @TheOneRing

    share platform support between configure/bootstrap

    TheOneRing authored committed
Commits on Apr 18, 2013
  1. fix --profile=pprof on newer ubuntus

    The --as-needed default for ld would drop -lprofiler.
Commits on Apr 11, 2013
  1. @sgraham
Something went wrong with that request. Please try again.