--- /etc/rpm/macros.d/kernel 2004-08-03 20:26:11 +0500 +++ kernel 2005-04-05 13:06:06 +0500 @@ -106,6 +106,28 @@ for f in %_patch_list ; do \ done \ %nil +# Selecting arch +%select_arch() \ +echo "Checking aliases for " %_arch "..." \ +%__subst 's,^\\(CONFIG_M586\\)=y.*$,# \\1 is not set,' %1 \ +NEW_ARCH=$(echo %_arch | \ + sed -e 's/i386/CONFIG_M386/g;s/i486/CONFIG_M486/g;s/i586/CONFIG_M586/g' | \ + sed -e 's/i686/CONFIG_M686/g;s/p\\(entium\\)\\{0,1\\}2/CONFIG_MPENTIUMII/g' | \ + sed -e 's/p\\(entium\\)\\{0,1\\}3/CONFIG_MPENTIUMIII/g' | \ + sed -e ';s/p\\(entium\\)\\{0,1\\}4/CONFIG_MPENTIUM4/g' | \ + sed -e 's/k6.*/CONFIG_MK6/g;s/athlon.*/CONFIG_MK7/g') \ +if [ "x$NEW_ARCH" = "x%_arch" ]; then \ + echo "No such architecture: %_arch" \ + echo "Using default" \ + NEW_ARCH=""; \ +fi \ +if [ "x$NEW_ARCH" = "x" ]; then \ + NEW_ARCH=CONFIG_M586; \ +fi \ +%__subst "s,.*$NEW_ARCH.*,$NEW_ARCH=y,g" %1 \ +%nil + + # Standard way for installing patches %install_patches \ %__mkdir_p %patches_dir/%patch_name \