Efter næsten tre års udvikling blev GNU Make 4.4 frigivet. Udover fejlrettelser kan der nævnes følgende ændringer i den nye version:
- Platformene OS/2 (EMX), AmigaOS, Xenix og Cray er erklæret forældede, og støtten vil blive ophævet i den næste udgivelse.
- Kravene til byggemiljøet er blevet højnede; for at bygge GNU Gnulib kræves nu en compiler, der understøtter elementer fra standarden C99.
- Der er tilføjet et nyt byggeformål .WAIT, der gør det muligt at suspendere starten af bygningen af visse formål, indtil bygningen af andre formål er afsluttet.
- I det særlige byggeformål .NOTPARALLEL er det nu muligt at angive forudsætninger (filer nødvendige for at bygge målet) for sekventiel udførelse af relaterede mål (som om der var angivet '.WAIT' mellem hver forudsætning).
- Der er tilføjet et nyt byggeformål .NOTINTERMEDIATE, der deaktiverer adfærden relateret til brugen af mellemresultater (.INTERMEDIATE) for angivne filer, filer der falder ind under et mønster, eller hele makefile.
- Funktionen $(let …) er implementeret for at definere lokale variabler i brugerdefinerede funktioner.
- Funktionen $(intcmp …) til sammenligning af tal er implementeret.
- Ved brug af indstillingen '-l' (—load-average) til at bestemme antallet af kørende jobs tages der nu hensyn til data fra filen /proc/loadavg om systembelastning.
- Der er tilføjet indstillingen '—shuffle' for at blande forudsætningerne, hvilket muliggør non-deterministisk adfærd ved parallelbygning (f.eks. til fuzzing test af korrektheden af forudsætningernes bestemmelse i makefile).
- På systemer med støtte til mkfifo anvendes en ny metode til interaktion med jobserveren under parallel udførelse af jobs, baseret på brugen af navngivne kanaler. For at vende tilbage til den gamle metode baseret på unnævnede kanaler, tilbydes indstillingen '—jobserver-style=pipe'.
- Anvendelsen af midlertidige filer i arbejdsgangen er blevet udvidet (der kan opstå problemer, når byggesystemet indstiller et alternativt bibliotek for midlertidige filer (TMPDIR) og sletter indholdet af TMPDIR under bygningen).
Kilde: opennet.ru
