SOURCES: rpm.macros - add ac _up and _smp macros - make %kernel_bu...

glen glen at pld-linux.org
Tue Nov 6 21:52:54 CET 2007


Author: glen                         Date: Tue Nov  6 20:52:54 2007 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- add ac _up and _smp macros
- make %kernel_build and %kernel_install macros ac/th compatible

---- Files affected:
SOURCES:
   rpm.macros (1.404 -> 1.405) 

---- Diffs:

================================================================
Index: SOURCES/rpm.macros
diff -u SOURCES/rpm.macros:1.404 SOURCES/rpm.macros:1.405
--- SOURCES/rpm.macros:1.404	Tue Nov  6 21:27:43 2007
+++ SOURCES/rpm.macros	Tue Nov  6 21:52:48 2007
@@ -292,7 +292,11 @@
 %requires_releq()		%(echo '%*' | LC_ALL="C" xargs -r rpm -q --qf 'Requires: %%{name} = %%{epoch}:%%{version}-%%{release}\\n' | sed -e 's/ (none):/ /' | grep -v "is not")
 
 %releq_kernel()			%((LC_ALL="C" rpm -qf --qf '%%{name} = %%{epoch}:%%{version}-%%{release}\\n' %{_kernelsrcdir}/include/linux/version.h 2>/dev/null || echo ERROR) | sed -e 's/ (none):/ /' | sed -e 's:-headers::' | grep -vE "(is not|no such)")
-%requires_releq_kernel(s:)	Requires%{-s:(%{-s*})}: %releq_kernel
+%releq_kernel_up()		%((LC_ALL="C" rpm -qf --qf '%%{name}-up = %%{epoch}:%%{version}-%%{release}\\n' %{_kernelsrcdir}/include/linux/version.h 2>/dev/null || echo ERROR) | sed -e 's/ (none):/ /' | sed -e 's:-headers::' | grep -vE "(is not|no such)")
+%releq_kernel_smp()		%((LC_ALL="C" rpm -qf --qf '%%{name}-smp = %%{epoch}:%%{version}-%%{release}\\n' %{_kernelsrcdir}/include/linux/version.h 2>/dev/null || echo ERROR) | sed -e 's/ (none):/ /' | sed -e 's:-headers::' | grep -vE "(is not|no such)")
+%requires_releq_kernel(s:)		Requires%{-s:(%{-s*})}: %releq_kernel
+%requires_releq_kernel_up(s:)	Requires%{-s:(%{-s*})}: %releq_kernel_up
+%requires_releq_kernel_smp(s:)	Requires%{-s:(%{-s*})}: %releq_kernel_smp
 
 %requires_eq()		%(echo '%*' | LC_ALL="C" xargs -r rpm -q --qf 'Requires: %%{name} = %%{epoch}:%%{version}\\n' | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not")
 %requires_eq_to() %(LC_ALL="C" rpm -q --qf 'Requires: %1 = %%{epoch}:%%{version}\\n' %2 | sed -e 's/ (none):/ /' | grep -v "is not")
@@ -1173,9 +1177,9 @@
 compile() {															\
 	L="<"; [[ '%{*}' != *$L$L* ]] || PATCH_SH="set -x -e;$(cat)"	\
 	set -e -x														\
-	local cfgs='%{?with_dist_kernel:dist}%{!?with_dist_kernel:nondist}'	\
+	local cfgs='%{?with_dist_kernel:%{?with_smp: smp}%{?with_up: up}}%{!?with_dist_kernel: nondist}' \
 																	\
-for cfg in $cfgs; do												\
+for cfg in ${cfgs:-dist}; do                                        \
 	[ -r "%{_kernelsrcdir}/config-$cfg" ] || exit 1					\
 																	\
 	rm -rf o														\
@@ -1245,17 +1249,20 @@
 																	\
 %define KernelD $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}			\
 %define ModprobeD $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{_kernel_ver} \
-																	\
-install -d %{KernelD}/%{-d*}										\
-%{?-s:install -d %{ModprobeD}}										\
+
+local cfgs='%{?with_dist_kernel:%{?with_smp: smp}%{?with_up: up}}%{!?with_dist_kernel: nondist}' \
 																	\
 for MODULE in {%{-m*},}; do											\
 	[ -n "${MODULE}" ] || continue									\
-	MNAME=${MODULE##*/}												\
-	install ${MODULE}-%{!?with_dist_kernel:non}dist.ko
-		%{KernelD}/%{-d*}/${MNAME}%{-s:-%{-s*}}.ko					\
-	%{?-s:echo "alias ${MNAME} ${MNAME}-%{-s*}"						\\\
-		>> %{ModprobeD}/%{-n*}.conf}								\
+	for cfg in ${cfgs:-dist}; do                                    \
+		[ "$cfg" = smp ] && suf=smp || suf=							\
+		MNAME=${MODULE##*/}											\
+		install -D ${MODULE}-$cfg.ko								\\\
+			%{KernelD}$suf/%{-d*}/${MNAME}%{-s:-%{-s*}}.ko			\
+		%{?-s:install -d %{ModprobeD}								\\\
+			echo "alias ${MNAME} ${MNAME}-%{-s*}"					\\\
+			>> %{ModprobeD}$suf/%{-n*}.conf}						\
+	done															\
 done																\
 %{nil}
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/rpm.macros?r1=1.404&r2=1.405&f=u



More information about the pld-cvs-commit mailing list