]> git.pld-linux.org Git - packages/rpm-pld-macros.git/commitdiff
- prefer normal kernel trees over our -(non)dist/smp/up hacks when building
authorJan Rękorajski <baggins@pld-linux.org>
Fri, 10 Feb 2012 18:18:25 +0000 (18:18 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
  and installing modules

Changed files:
    rpm.macros -> 1.642

rpm.macros

index 071323718e1fdf6723da2b762489e582a6962789..9fd44b6a57076751bcac7110802fac74bd500726 100644 (file)
@@ -1643,6 +1643,42 @@ done \
                                                                                                                                        \
 %{?-C:cd %{-C*}}                                                                                                       \
 compile() {                                                                                                                    \
+       local L="<" PATCH_SH;                                                                                   \
+       [[ '%{*}' != *$L$L* ]] || PATCH_SH="set -x -e;$(cat)"                   \
+       set -e -x                                                                                                               \
+                                                                                                                                       \
+       [ -r "%{_kernelsrcdir}/.config" ] || exit 1                                             \
+       rm -rf o                                                                                                                \
+       install -d o/include/linux o/include/generated o/arch/powerpc/lib       \
+       ln -sf %{_kernelsrcdir}/.config o/.config                                               \
+       ln -sf %{_kernelsrcdir}/Module.symvers o/Module.symvers                 \
+       if [ -f %{_kernelsrcdir}/include/generated/autoconf.h ]; then   \
+               ln -sf %{_kernelsrcdir}/include/generated/autoconf.h o/include/generated/autoconf.h \
+               ln -s ../generated/autoconf.h o/include/linux/autoconf.h        \
+       else                                                                                                                    \
+               ln -sf %{_kernelsrcdir}/include/linux/autoconf.h o/include/linux/autoconf.h \
+       fi                                                                                                                              \
+                                                                                                                                       \
+       set +x                                                                                                                  \
+       [ -z "$PATCH_SH" ] || echo "$PATCH_SH" | %__spec_build_shell    \
+       set -x                                                                                                                  \
+                                                                                                                                       \
+       install -d o/include/config                                                                             \
+       touch o/include/config/MARKER                                                                   \
+       ln -sf %{_kernelsrcdir}/include/config/auto.conf o/include/config/auto.conf     \
+       ln -sf %{_kernelsrcdir}/scripts o/scripts                                               \
+                                                                                                                                       \
+       %{!?-c:%{__make} -C %{_kernelsrcdir} clean                                              \\\
+               RCS_FIND_IGNORE="-name '*.[ks]o' -o"                                            \\\
+               ${1+"$@"}                                                                                                       \\\
+               M=$PWD %{MakeOpts}}                                                                                     \
+                                                                                                                                       \
+       %{__make} -C %{_kernelsrcdir} modules                                                   \\\
+               ${1+"$@"}                                                                                                       \\\
+               M=$PWD CONSTIFY_PLUGIN="" %{MakeOpts}                                           \
+%{?-C:cd -}                                                                                                                    \
+}                                                                                                                                      \
+compile_old() {                                                                                                                \
        local L="<" PATCH_SH;                                                                                   \
        [[ '%{*}' != *$L$L* ]] || PATCH_SH="set -x -e;$(cat)"                   \
        set -e -x                                                                                                               \
@@ -1692,7 +1728,11 @@ for cfg in ${cfgs:-dist}; do                                        \
 done                                                                                                                           \
 %{?-C:cd -}                                                                                                                    \
 }                                                                                                                                      \
-compile %{*}\
+if [ -r "%{_kernelsrcdir}/.config" ]; then     \
+       compile %{*}                                                    \
+else                                                                           \
+       compile_old %{*}                                                \
+fi                                                                                     \
 %{nil}
 
 
@@ -1721,6 +1761,17 @@ compile %{*}\
 %define ModprobeD $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{_kernel_ver} \
                                                                                                                                        \
 __install_kernel_modules() {                                                                           \
+%{!?debug:set +x;} \
+                                                                                                                                       \
+for MODULE in {%{-m*},}; do                                                                                    \
+       [ -n "${MODULE}" ] || continue                                                                  \
+       MNAME=${MODULE##*/}                                                                                     \
+       install -D ${MODULE}.ko %{KernelD}/%{-d*}/${MNAME}%{-s:-%{-s*}}.ko      \
+       %{?-s:install -d %{ModprobeD}                                                   \
+               echo "alias ${MNAME} ${MNAME}-%{-s*}" >> %{ModprobeD}/%{-n*}.conf}      \
+done                                                                                                                           \
+}                                                                                                                                      \
+__install_kernel_modules_old() {                                                                       \
 %{!?debug:set +x;} \
 local cfgs='%{?with_dist_kernel:%{?with_smp: smp}%{?with_up: up}}%{!?with_dist_kernel: nondist}' \
                                                                                                                                        \
@@ -1737,7 +1788,11 @@ for MODULE in {%{-m*},}; do                                                                                      \
        done                                                                                                                    \
 done                                                                                                                           \
 }                                                                                                                                      \
-__install_kernel_modules                                                                                       \
+if [ -r "%{_kernelsrcdir}/.config" ]; then     \
+       __install_kernel_modules                                \
+else                                                                           \
+       __install_kernel_modules_old                    \
+fi                                                                                     \
 %{nil}
 
 # patchset macros
This page took 0.064082 seconds and 4 git commands to generate.