Majdnem három év fejlesztés után megjelent a GNU Make 4.4 build rendszer. A hibajavításokon kívül az új verzió a következő változásokat tartalmazza:
- Az OS/2 (EMX), az AmigaOS, a Xenix és a Cray platformok elavultak, és egy jövőbeli kiadásban megszűnnek.
- A build környezettel szemben támasztott követelmények megemelkedtek; a GNU Gnulib készítéséhez most olyan fordítóra van szükség, amely támogatja a C99 szabvány elemeit.
- Speciális .WAIT építési cél hozzáadva, amely lehetővé teszi bizonyos célok felépítésének szüneteltetését, amíg más célok összeépítése be nem fejeződik.
- A .NOTPARALLEL speciális összeállítási célban az előfeltételek (a cél felépítéséhez szükséges fájlok) megadásának képessége megvalósul a társított célok egymás utáni elindításához (mintha a „.WAIT” az egyes előfeltételek között lett volna beállítva).
- Speciális .NOTINTERMEDIATE build cél lett hozzáadva, amely letiltja a köztes célok (.INTERMEDIATE) használatához kapcsolódó viselkedést a megadott fájlok, a maszknak megfelelő fájlok vagy a teljes makefile esetében.
- Megvalósult a $(let...) függvény, amely lehetővé teszi helyi változók definiálását a felhasználó által definiált függvényekben.
- Megvalósított $(intcmp ...) függvény a számok összehasonlítására.
- A "-l" (--load-average) opció használatakor a rendszer a /proc/loadavg fájl rendszerbetöltési adatait veszi figyelembe a futtatandó jobok számának meghatározásakor.
- Hozzáadtuk a „--shuffle” opciót az előfeltételek keveréséhez, amely lehetővé teszi nem-determinisztikus viselkedés elérését párhuzamos összeállítás során (például egy makefile előfeltételek definiálásának helyességének fuzzing teszteléséhez).
- Az mkfifo-támogatással rendelkező rendszereken a munka párhuzamos végrehajtása során a jobszerverrel való interakció új módszere biztosított, amely elnevezett csövek használatán alapul. A régi, névtelen csöveken alapuló módszer visszaállításához a „-jobserver-style=pipe” opciót javasoltuk.
- Kibővült az ideiglenes fájlok használata a működés közben (problémák merülhetnek fel, ha az összeállítási rendszer alternatív könyvtárat állít be az ideiglenes fájlok számára (TMPDIR), és az összeállítás során törli a TMPDIR tartalmát).
Forrás: opennet.ru