ProHoster > Блог > rongo ipurangi > He kaimahi Red Hat i whakaatu te punaha huihuinga Goals. Tukunga o GNU Make 4.2
He kaimahi Red Hat i whakaatu te punaha huihuinga Goals. Tukunga o GNU Make 4.2
Richard WM Jones, kaituhi Tuhinga o mua, e mahi ana i Red Hat, whakaurua taputapu hui hou whāinga, e whai ana ki te whakakore i nga hapa me nga raru i roto i te whaipainga o te hanga i te wa e mau tonu ana te ngawari me te maarama o nga tuhinga. I hoahoatia te mahi hanga i te tau 1976, a he maha nga ngoikoretanga o te kaupapa e whakamahere ana a Goals ki te whakakore i enei ngoikoretanga me te kore e whakarereke i te kaupapa whanui.
Waehere pūtake whāinga tohaina e raihana i raro i te GPLv2+.
Tautoko mo te tikanga whakatau i te whakawhirinaki - "ka whakahaeretia te ako a te huihuinga mena kei te ngaro te konae whaainga, he pakeke ake ranei i tetahi o nga whakawhirinaki." Ko nga whaainga e whakamahere ana ki te whakatinana i etahi atu tikanga, penei i te tirotiro mo te noho mai o te URL, te whakatairite i nga waa whakarereke me tetahi konae, te arotake i te kete hanga i roto. kōji, whakatauritenga o nga utu arowhai, whakahaere i nga keehi whakamatautau me te kopikopiko i nga whakamatautau.
I te wa e tukatuka ana i nga whaainga hanga, kaore te hanga e wehe i nga konae me nga ingoa ture, na reira, karekau he tirotiro i te wa e whakahaere ana i tetahi ture, ko te konae e kii ana ka hangaia ka tino hangaia. Hei tauira, mena kei a koe he ture e kiia nei ko "whakamatautau" e whakahaere ana i nga tuhinga me nga whakamatautau, he konae te ingoa "whakamatautau" ka pohehe te hanga, katahi ka kore e karangahia nga whakamatautau, na te mea ka whakaaro a make kua hangaia te whaainga kaore e hiahiatia. tetahi mahi (mo Ki te whakatika i te raruraru i roto i te hanga, ka taea e koe te whakapūtā te ".PHONY: whakamātautau" tohutohu). Ka wehewehea nga whainga i nga konae me nga ingoa ture.
He raruraru ki te whakarato i te tawhā kotahi anake mo nga tohutohu whakahiato.
Ko nga whaainga ka taea e koe te whakamahi i te maha o nga tawhā whakaingoatia. Hei tauira, ka taea e koe te tango wehe i te tohu o te konae patuiro mai i te ingoa:
He raruraru kei te mahi tahi me te kaiwhakamaori anga. Hei tauira, ko te hiahia ki te whakahaere i te mawhiti o nga waahi kei roto i nga ingoa konae me nga ingoa whaiaronga, te ururua o nga rauemi ki te whakarewa i tetahi kaiwhakamaori anga motuhake i te wa e mahia ana ia whakahau, te whakamaoritanga takirua o te tohu "$" (i whakamahia i roto i te anga me te hanga), ka whai whakaaro ki nga nuku.
Ka whakatauhia enei raruraru i roto i nga Whainga ma te whakamahi i te tohu "%" hei utu mo te "$" mo nga taurangi huihuinga ("$" ka noho noa mo te anga), ma te whakamahi i te poroporo. LALR(1), e hiahia ana koe ki te karapoti i nga ara me nga ingoa konae me nga korukī me te whakanui i nga poraka waehere me nga taiapa mingimingi. Ka whakarewahia te katoa o te poraka whakahau i roto i tetahi tauira o te anga whakahau, a ka whakaaetia te whakahōputu waehere i roto i te poraka, me te kore korero ki nga waahi motuhake.
E rua nga aratau whakarewatanga: hanga aratau ki te whakarite i nga whaainga hanga me nga ingoa konae (hei tauira ko te konae "foo.o" e rite ana ki te whaainga "%name.o"), me te aratau whakahiato tika:
Ko nga tikanga o te huihuinga ka whakatauhia e nga ture motuhake ka taea te whakamahi ki te whakatau i te hiahia ki te whakahiato i tetahi whaainga huihuinga. Mena ka honoa ki te aroaro o tetahi konae, ka tino whakatauhia tenei ma te tohu e pa ana ("whaainga" mo te ingoa ture me te *kōnae ("whaainga") mo te tirotiro i te konae).
Ka taea e te kaiwhakawhanake te tautuhi i nga huanga o nga tikanga whakahiato. Ko te haki "*kōnae" kua tautuhia e te taunoa (@{...} e tohu ana i te pehi o te whakaputanga, me te "putanga 99" e tohu ana te hiahia ki te hanga ano):
rauhanga *kōnae (ingoakōnae) = @{
whakamātautau -f %ingoakōnae || puta 99
mō te f i %