Rilis sistem build GNU Make 4.4

Setelah hampir tiga tahun pengembangan, sistem build GNU Make 4.4 dirilis. Selain memperbaiki bug, perubahan berikut dapat dicatat di versi baru:

  • Platform OS/2 (EMX), AmigaOS, Xenix, dan Cray telah ditinggalkan dan akan ditinggalkan dalam rilis mendatang.
  • Persyaratan untuk lingkungan build telah ditingkatkan, untuk membangun GNU Gnulib Anda sekarang memerlukan kompiler yang mendukung elemen dari standar C99.
  • Target build khusus .WAIT telah ditambahkan yang memungkinkan Anda menjeda peluncuran build target tertentu hingga build target lain selesai.
  • Dalam target build khusus .NOTPARALLEL, kemampuan untuk menentukan prasyarat (file yang diperlukan untuk membangun target) diterapkan untuk meluncurkan target yang terkait dengannya secara berurutan (seolah-olah ".WAIT" ditetapkan di antara setiap prasyarat).
  • Menambahkan target build khusus .NOTINTERMEDIATE yang menonaktifkan perilaku yang terkait dengan penggunaan target perantara (.INTERMEDIATE) untuk file tertentu, file yang cocok dengan mask, atau seluruh makefile.
  • Mengimplementasikan fungsi $(let ...), yang memungkinkan Anda mendefinisikan variabel lokal dalam fungsi yang ditentukan pengguna.
  • Menerapkan fungsi $(intcmp ...) untuk membandingkan angka.
  • Saat menggunakan opsi "-l" (--load-average), jumlah pekerjaan yang akan dimulai sekarang memperhitungkan data dari file /proc/loadavg tentang beban pada sistem.
  • Menambahkan opsi "--shuffle" untuk mengocok prasyarat, yang memungkinkan untuk mencapai perilaku non-deterministik dalam build yang diparalelkan (misalnya, untuk menguji kebenaran penentuan prasyarat dalam makefile).
  • Pada sistem dengan dukungan mkfifo, metode baru untuk berinteraksi dengan server kerja untuk pelaksanaan tugas secara paralel berdasarkan penggunaan pipa bernama disediakan. Untuk mengembalikan metode lama berdasarkan pipa yang tidak disebutkan namanya, opsi "--jobserver-style=pipe" telah diusulkan.
  • Penggunaan file sementara dalam proses kerja telah diperluas (masalah dapat muncul saat sistem build menetapkan direktori alternatif untuk file sementara (TMPDIR) dan menghapus konten TMPDIR selama proses build).

Sumber: opennet.ru

Tambah komentar