Mpiasan'ny Red Hat no nanolotra ny rafitra fivorian'ny Goals. Famoahana ny GNU Make 4.2
Richard WM Jones, mpanoratra libguestfs, miasa ao amin'ny Red Hat, nanaiky utility build vaovao tanjona, mikendry ny hanafoanana ny lesoka sy ny olana eo amin'ny fampiasana ny fanaovana nefa mitazona ny fahatsoran'ny ankapobeny sy ny fahatakarana ny soratra. Ny make utility dia noforonina tamin'ny 1976 ary manana lesoka ara-kevitra maromaro; Ny tanjona dia mikasa ny hanafoana ireo lesoka ireo nefa tsy manova ny foto-kevitra ankapobeny.
Kaody loharanon'ny tanjona nozarain'i nahazoan-dalana GPLv2+.
Fanohanana ho an'ny tetika famahana ny fiankinan-doha tokana - "Ny torolΓ lana fivoriambe dia mandeha raha tsy hita ny rakitra kendrena na efa antitra noho ny iray amin'ireo miankina." Mikasa ny hampihatra tetika hafa ny tanjona, toy ny fisavana ny fisian'ny URL, fampitahana ny fotoana fanovana amin'ny rakitra rehetra, fanombanana ny fananganana fonosana. kΕji, fampitahana ny checksums, fampandehanana trangam-panadinana miaraka amin'ny fandalovan'ny fitsapana.
Rehefa manamboatra lasibatra fananganana, ny make dia tsy manasaraka ny rakitra sy ny anaran'ny fitsipika, ary vokatr'izany, tsy misy fanamarinana fa rehefa mampandeha fitsipika, dia ho noforonina tokoa ny rakitra lazainy fa noforonina. Ohatra, raha manana fitsipika antsoina hoe "fitsapana" ianao izay mampandeha script miaraka amin'ny fitsapana, dia noforonina tsy nahy ny rakitra iray antsoina hoe "fitsapana", dia tsy hantsoina intsony ny fitsapana, satria ny make dia mihevitra fa ny tanjona dia natsangana ary tsy mitaky. ny hetsika rehetra (ho an'ny famahana ny olana amin'ny fanaovana dia azonao atao ny mamaritra ny torolΓ lana ".PHONY: test"). Ny tanjona dia manasaraka mazava ny rakitra sy ny anaran'ny fitsipika.
Olana amin'ny fanomezana mari-pamantarana tokana ho an'ny torolalana amin'ny fanangonana.
Ny tanjona dia ahafahanao mampiasa isa tsy misy dikany amin'ny masontsivana nomena anarana. Ohatra, azonao atao ny manala ny mariky ny rakitra debug amin'ny anarana:
Olana mifandray amin'ny mpandika teny shell. Ohatra, ilaina ny fanaraha-maso ny fandosiran'ny habaka amin'ny anaran'ny rakitra sy ny lahatahiry, ny fandaniam-bola amin'ny fandefasana mpandika teny iray misaraka rehefa manatanteraka ny baiko tsirairay, ny fandikana indroa ny toetran'ny "$" (ampiasaina amin'ny shell sy ny make), mandray ny indentations.
Ireo olana ireo dia voavaha ao amin'ny Tanjona amin'ny alΓ lan'ny fampiasana ny marika "%" fa tsy "$" ho an'ny faribolan'ny fivoriambe ("$" mijanona ho an'ny akorandriaka ihany), mampiasa parser. LALR(1), izay mitaky anao hanodidina ny lalana sy ny anaran'ny rakitra miaraka amin'ny teny nindramina ary manasongadina bloc code miaraka amin'ny braces olioly. Ny sakana baiko manontolo dia atomboka amin'ny ohatra iray amin'ny shell baiko, ary ao anatin'ny sakana dia avela ny fandrafetana fehezan-dalΓ na tsy misy dikany, tsy misy firesahana amin'ny habaka manokana.
Ny mpamorona dia afaka mamaritra ny toetra tsy misy dikany amin'ny tetika fanangonana. Ny saina "*rakitra" dia voafaritra amin'ny alΓ lan'ny default (@{...} dia manondro ny fanafoanana ny vokatra, ary ny "fivoahana 99" dia manondro ny ilana fanamboarana):
taktika *rakitra (anarana) = @{
test -f %filename || fivoahana 99
ho an'ny f amin'ny %