kernel.spec (LINUX_2_4)

Tomasz Kłoczko kloczek w rudy.mif.pg.gda.pl
Wto, 18 Gru 2001, 23:33:34 CET


On 18 Dec 2001, Arkadiusz Miskiewicz wrote:

> 
> Z owym specem jest pewien problem.
> 
> [builder w kenny SPECS]$ ./builder -g -r LINUX_2_4 kernel.spec
> [builder w kenny SPECS]$ rpm -bb kernel.spec
> error: parse error in expression
> error: /home/users/builder/rpm/SPECS/kernel.spec:649: parseExpressionBoolean returns -1
> Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.90807
> 
> Niby taki niewinny bład, który _nie wywala_ procesu budowania rpma
> ale powoduje, że *pomijana* jest cała sekcja %install oraz %clean. Dzięki
> temu nie generują się pakiety binarne z kernelem...

Doszedłem do pewnych ogólnych wniosków. jezlie jest przykładowo coś 
takiego:

%if %{?_without_smp:1}%{!?_without_smp:0}
        %if %{?_with_lids:1}%{!?_with_lids:0}
		# SMP LIDS KERNEL
		BuildKernel smp lids
	%else
             	# SMP KERNEL
		BuildKernel smp
	%endif
%else
     	%if %{?_with_lids:1}%{!?_with_lids:0}
		# UP LIDS KERNEL
		BuildKernel lids
	%else
             	# UP KERNEL
		BuildKernel
	%endif
%endif

To to działa ale jeżeli dodatkowo zagłebić w kolejnego %if .. %endif do:

%if %{?foo:0}
	%if %{?_without_smp:1}%{!?_without_smp:0}
	        %if %{?_with_lids:1}%{!?_with_lids:0}
			# SMP LIDS KERNEL
			BuildKernel smp lids
		%else
	             	# SMP KERNEL
			BuildKernel smp
		%endif
	%else
	     	%if %{?_with_lids:1}%{!?_with_lids:0}
			# UP LIDS KERNEL
			BuildKernel lids
		%else
	             	# UP KERNEL
			BuildKernel
		%endif
	%endif
%endif

to się już zaczyan walić na drugiej linijce ze w wyrzeniu %if jest -1.
Wygląda na błąd w rpm-ie.

Swoją drogą spec do kernela 2.4 jest zakręcony jak pęczek drutu :> 
(mocniej tego zakręcić chyba juz nie mozan było :)

W zasadzie od przepisania jest IMHO BuildKernel() .. powinno dąć się
wywalić z tego tak comnajmniej połowę.
Czy to dokładanie plików z dodatkowymi porcjami konfiguracji
rzeczywiście musi byc robione ? Przecież w plikach kernel-*.condfig
spokojnie mogłaby być maks konfiguracja, a to że pewne patche nie byłyby
włączane nie miałoby tu żandgo znacznia (chyba że jest inaczej to bym 
zrozumiał). Samo nałożenie patcha bać nie wystarczyłoby do tego żeby
uaktywnić coś co jest w konfiguracji.

kloczek
-- 
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: kloczek w rudy.mif.pg.gda.pl*



Więcej informacji o liście dyskusyjnej pld-devel-pl