GNU Make 4.4 build համակարգի թողարկում

Գրեթե երեք տարվա մշակումից հետո թողարկվեց GNU Make 4.4 build համակարգը: Բացի սխալների շտկումից, նոր տարբերակում կարելի է նշել հետևյալ փոփոխությունները.

  • OS/2 (EMX), AmigaOS, Xenix և Cray պլատֆորմները հնացած են և հնացած կլինեն ապագա թողարկումներում:
  • Կառուցման միջավայրին ներկայացվող պահանջներն ավելացել են, GNU Gnulib-ը ստեղծելու համար այժմ անհրաժեշտ է կոմպիլյատոր, որն աջակցում է C99 ստանդարտի տարրերին:
  • Ավելացվել է հատուկ .WAIT build թիրախ, որը թույլ է տալիս դադարեցնել որոշակի թիրախների կառուցման մեկնարկը, մինչև ավարտվի այլ թիրախների կառուցումը:
  • Հատուկ կառուցման թիրախում .NOTPARALLEL նախադրյալներ (թիրախը կառուցելու համար անհրաժեշտ ֆայլեր) նշելու հնարավորությունն իրականացվում է դրանց հետ կապված թիրախները հաջորդաբար գործարկելու համար (կարծես յուրաքանչյուր նախապայմանի միջև դրված է «. WAIT»):
  • Ավելացվեց հատուկ կառուցման թիրախ .NOTINTERMEDIATE, որն անջատում է միջանկյալ թիրախների (.INTERMEDIATE) օգտագործման հետ կապված վարքագիծը նշված ֆայլերի, դիմակին համապատասխանող ֆայլերի կամ ամբողջ makefile-ի համար:
  • Իրականացրել է $(let ...) ֆունկցիան, որը թույլ է տալիս սահմանել լոկալ փոփոխականներ օգտագործողի կողմից սահմանված գործառույթներում:
  • Իրականացրել է $(intcmp ...) ֆունկցիան՝ թվերը համեմատելու համար:
  • «-l» (--load-average) տարբերակն օգտագործելիս, այժմ սկսվող աշխատանքների քանակը հաշվի է առնում /proc/loadavg ֆայլից ստացված տվյալները համակարգի բեռի մասին:
  • Նախադրյալները խառնելու համար ավելացվել է «--shuffle» տարբերակը, որը թույլ է տալիս հասնել ոչ դետերմինիստական ​​վարքագծի զուգահեռացված կառուցումներում (օրինակ՝ մեյքֆայլում նախադրյալների սահմանման ճիշտությունը ստուգելու համար):
  • mkfifo-ի աջակցությամբ համակարգերում տրամադրվում է աշխատատեղերի զուգահեռ կատարման ժամանակ աշխատատեղերի հետ փոխգործակցության նոր մեթոդ՝ հիմնված անվանված խողովակների օգտագործման վրա: Անանուն խողովակների վրա հիմնված հին մեթոդը վերադարձնելու համար առաջարկվել է «--jobserver-style=pipe» տարբերակը։
  • Աշխատանքի ընթացքում ժամանակավոր ֆայլերի օգտագործումը ընդլայնվել է (խնդիրներ կարող են առաջանալ, երբ build համակարգը սահմանում է այլընտրանքային գրացուցակ ժամանակավոր ֆայլերի համար (TMPDIR) և ջնջում է TMPDIR-ի բովանդակությունը կառուցման ընթացքում):

Source: opennet.ru

Добавить комментарий