Ninja er et lite byggesystem med fokus på hastighet.
Når den kjøres, kjører ninja normalt et maksimalt antall prosesser parallelt. Som standard er dette antall kjerner på systemet pluss to. I noen tilfeller kan dette overopphete en CPU eller kjøre et system ut av minne. Hvis du kjører fra kommandolinjen, sender du en -jN-parameter vil det begrense antall parallelle prosesser, men noen pakker bygger inn utførelsen av ninja og sender ikke en -j parameter.
Ved å bruke optional prosedyren nedenfor lar en bruker begrense antall parallelle prosesser via en miljøvariabel, NINJAJOBS. For eksempel, å sette:
export NINJAJOBS=4
vil begrense ninja til fire parallelle prosesser.
Hvis ønskelig, legg til muligheten til å bruke miljøvariabelen NINJAJOBS ved å kjøre:
sed -i '/int Guess/a \ int j = 0;\ char* jobs = getenv( "NINJAJOBS" );\ if ( jobs != NULL ) j = atoi( jobs );\ if ( j > 0 ) return j;\ ' src/ninja.cc
Bygg Ninja med:
python3 configure.py --bootstrap
Betydningen av byggealternativet:
--bootstrap
Denne parameteren tvinger ninja til å gjenoppbygge seg selv for gjeldene system.
For å teste resultatene, utsted:
./ninja ninja_test ./ninja_test --gtest_filter=-SubprocessTest.SetWithLots
Installer pakken:
install -vm755 ninja /usr/bin/ install -vDm644 misc/bash-completion /usr/share/bash-completion/completions/ninja install -vDm644 misc/zsh-completion /usr/share/zsh/site-functions/_ninja