OT trapenie sa s make

Jan Waclawek konfera@efton.sk
Pátek Březen 13 12:51:57 CET 2009


Dokumentacia (http://www.gnu.org/software/make/manual/make.html#Chained-Rules) hovori:
"When a file is secondary, make will not create the file merely because it does not already exist"

Mne to znie, ze ak subor je oznaceny "secondary", make sa nebude snazit ho vytvorit len preto, ze neexistuje (ale sa ho bude snazit vytvorit, ak pre neho existuje explicitne pravidlo a na zaklade takehoto pravidla sa usudi, ze ten subor nie je aktualny).

Mimochodom, ak testfile.dependent *existuje*, tak sa skutocne netrva na existencii testfile.nonexistent.

Skusim sa teda strapnit priamo u udrziavatelov projektu (je zaujimave, ze velky RMS medzi nimi nie je...), ako pan kolega Ladman doporucil, a uvidime, co povedia...

wek

----- Original Message ---------------
>
>Tato direktiva mi nie je prilis doverne znama, ale chapem to si takto:
>
>"make na tom subore netrva" by malo znamenat asi tolko, ze nemusi 
>existovat, pretoze si ho make vytvori sam, ale musi vedie ako - podla 
>nejakeho implicitneho pravidla.
>
>Zda sa, ze .SECONDARY mu iba povie, ze ten "pomocny" subor nema mazat. 
>ked ho uz raz vytvoril a sucasne make povie, ze ten neexistujuci subor 
>moze byt pouzity v zozname zavislosti
>
>Takze make *musi* vediet, ako testfile.nonexistent vytvorit.
>
>Nezda sa mi, ze tato direktiva by mala sluzit na to, aby sa ignorovali 
>neexistujuce subory.
>
>-m-
>
>
>
>Jan Waclawek wrote:
>> Mam nasledovny makefile:
>> -------
>> .SECONDARY=testfile.nonexistent
>>
>> testfile.dependent: testfile.nonexistent
>> 	@echo making testfile.dependent
>> -------
>>
>> testfile.dependent ani testfile.nonexistent neexistuju. Toto sa stane pri pokuse o make:
>>
>> c:\>make.exe -f test.makefile
>> make.exe: *** No rule to make target `testfile.nonexistent', needed by `testfile.dependent'.  Stop.
>>
>> Podla mna je to bug, ucel .SECONDARY je predsa oznacit subory, na existencii ktorych make nebude trvat.
>> Make je GNU make 3.81, ktory bol pribaleny k WinAVR20071221.
>>
>> Co s tym (teda okrem opravovania make vlastnymi silami v tom pravom duchu opensource)?
>>
>> wek
>>




Další informace o konferenci Hw-list