การเปิดตัวระบบบิลด์ GNU Make 4.4

หลังจากพัฒนามาเกือบสามปี ระบบบิวด์ GNU Make 4.4 ก็เปิดตัว นอกเหนือจากการแก้ไขข้อบกพร่องแล้ว การเปลี่ยนแปลงต่อไปนี้สามารถสังเกตได้ในเวอร์ชันใหม่:

  • แพลตฟอร์ม OS/2 (EMX), AmigaOS, Xenix และ Cray เลิกใช้งานแล้วและจะเลิกใช้งานในอนาคต
  • ข้อกำหนดสำหรับสภาพแวดล้อมการสร้างได้เพิ่มขึ้น ในการสร้าง GNU Gnulib คุณต้องมีคอมไพเลอร์ที่รองรับองค์ประกอบจากมาตรฐาน C99
  • มีการเพิ่มเป้าหมายบิลด์ .WAIT พิเศษที่อนุญาตให้คุณหยุดการเปิดตัวบิลด์ของเป้าหมายบางอย่างชั่วคราวจนกว่าบิลด์ของเป้าหมายอื่นจะเสร็จสมบูรณ์
  • ในเป้าหมายบิลด์พิเศษ .NOTPARALLEL ความสามารถในการระบุข้อกำหนดเบื้องต้น (ไฟล์ที่จำเป็นสำหรับการสร้างเป้าหมาย) ถูกนำมาใช้เพื่อเรียกใช้เป้าหมายที่เกี่ยวข้องตามลำดับ (ราวกับว่า ".WAIT" ถูกตั้งค่าระหว่างข้อกำหนดเบื้องต้นแต่ละข้อ)
  • เพิ่มเป้าหมายบิลด์พิเศษ .NOTINTERMEDIATE ที่ปิดใช้งานลักษณะการทำงานที่เกี่ยวข้องกับการใช้เป้าหมายระดับกลาง (.INTERMEDIATE) สำหรับไฟล์ที่ระบุ ไฟล์ที่ตรงกับมาสก์ หรือ makefile ทั้งหมด
  • ใช้ฟังก์ชัน $(let ...) ซึ่งอนุญาตให้คุณกำหนดตัวแปรในเครื่องในฟังก์ชันที่ผู้ใช้กำหนด
  • ใช้ฟังก์ชัน $(intcmp ...) เพื่อเปรียบเทียบตัวเลข
  • เมื่อใช้อ็อพชัน "-l" (--load-average) จำนวนงานที่จะเริ่มตอนนี้จะพิจารณาข้อมูลจากไฟล์ /proc/loadavg เกี่ยวกับโหลดบนระบบ
  • เพิ่มตัวเลือก "--shuffle" เพื่อสลับข้อกำหนดเบื้องต้น ซึ่งช่วยให้บรรลุลักษณะการทำงานที่ไม่ได้กำหนดขึ้นได้ในการสร้างแบบขนาน (เช่น เพื่อทดสอบความถูกต้องของการกำหนดข้อกำหนดเบื้องต้นใน makefile)
  • บนระบบที่รองรับ mkfifo จะมีวิธีการใหม่ในการโต้ตอบกับเซิร์ฟเวอร์งานสำหรับการดำเนินการงานแบบขนานตามการใช้ไพพ์ที่มีชื่อ ในการส่งคืนเมธอดเก่าตามไพพ์ที่ไม่มีชื่อ ตัวเลือก "--jobserver-style=pipe" ได้รับการเสนอ
  • การใช้ไฟล์ชั่วคราวในกระบวนการทำงานได้รับการขยาย (ปัญหาอาจเกิดขึ้นเมื่อระบบบิลด์ตั้งค่าไดเร็กทอรีสำรองสำหรับไฟล์ชั่วคราว (TMPDIR) และลบเนื้อหาของ TMPDIR ระหว่างบิลด์)

ที่มา: opennet.ru

เพิ่มความคิดเห็น