/[smeserver]/rpms/slip-kmod/sme7/slip-kmod.spec
ViewVC logotype

Contents of /rpms/slip-kmod/sme7/slip-kmod.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.26 - (show annotations) (download)
Tue Jun 1 16:33:49 2010 UTC (13 years, 11 months ago) by slords
Branch: MAIN
CVS Tags: slip-kmod-1_0-7_el4_sme, HEAD
Changes since 1.25: +13 -4 lines
Fix module overrides and removal scripts

1 # $Id: slip-kmod.spec,v 1.25 2010/04/21 16:05:56 slords Exp $
2
3 # Define the kmod package name here.
4 %define kmod_name slip
5
6 # hint: this can he overridden with "--define kversion foo" on the rpmbuild command line, e.g.
7 # --define "kversion 2.6.16-1.2096_FC5"
8 %{!?kversion: %define kversion 2.6.9-89.0.20.EL}
9
10 Name: %{kmod_name}-kmod
11 Version: 1.0
12 Release: 7%{?dist}
13 Group: System Environment/Kernel
14 License: GPL
15 Summary: %{kmod_name} kernel modules
16
17 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
18 ExclusiveArch: i586 i686 x86_64
19
20 # Sources.
21 Source0: %{kmod_name}-%{version}-src.tgz
22 Source10: kmodtool-%{kmod_name}
23
24 # Define the variants for each architecture.
25 %define upvar ""
26 %define smpvar smp
27 %ifarch i686
28 %define hugememvar hugemem
29 %define xenvar xenU
30 %endif
31 %ifarch x86_64
32 %define largesmpvar largesmp
33 %define xenvar xenU
34 %endif
35
36 # If kvariants isn't defined on the rpmbuild line, build all variants for this architecture.
37 %{!?kvariants: %define kvariants %{?upvar} %{?smpvar} %{?xenvar} %{?hugememvar} %{?largesmpvar}}
38
39 # Magic hidden here.
40 %define kmodtool sh %{SOURCE10}
41 %{expand:%(%{kmodtool} rpmtemplate_kmp %{kmod_name} %{kversion} %{kvariants} 2>/dev/null)}
42
43 %description
44 %{summary}.
45
46 %prep
47 %setup -q -c
48 echo 'obj-m += slip.o' > %{kmod_name}/Makefile
49 for kvariant in %{kvariants} ; do
50 cp -a %{kmod_name} _kmod_build_$kvariant
51 done
52
53 %build
54 for kvariant in %{kvariants} ; do
55 # ksrc=%{_usrsrc}/kernels/%{kversion}${kvariant:+-$kvariant}-%{_target_cpu}
56 # pushd _kmod_build_$kvariant
57 # make -C "${ksrc}" modules M=$PWD
58 # popd
59 ksrc=/lib/modules/"%{kversion}${kvariant:+$kvariant}"/build
60 cd _kmod_build_$kvariant
61 # make TOPDIR=${ksrc} modules %{?_smp_mflags}
62 make -C "${ksrc}" SUBDIRS=${PWD} modules %{?_smp_mflags}
63 cd ..
64 done
65
66 %install
67 export INSTALL_MOD_PATH=$RPM_BUILD_ROOT
68 export INSTALL_MOD_DIR=extra/%{kmod_name}
69 for kvariant in %{kvariants} ; do
70 # ksrc=%{_usrsrc}/kernels/%{kversion}${kvariant:+-$kvariant}-%{_target_cpu}
71 # pushd _kmod_build_$kvariant
72 # make -C "${ksrc}" modules_install M=$PWD
73 # install -d ${INSTALL_MOD_PATH}/usr/lib/debug
74 # popd
75 ksrc=/lib/modules/"%{kversion}${kvariant:+$kvariant}"/build
76 cd _kmod_build_$kvariant
77 make -C ${ksrc} SUBDIRS=`pwd` INSTALL_MOD_PATH=$RPM_BUILD_ROOT modinst_dir='$(MODLIB)/extra/'%{kmod_name} modules_install
78 # make TOPDIR=${ksrc} INSTALL_MOD_PATH=$RPM_BUILD_ROOT INSTALL_MOD_DIR=extra/%{kmod_name}/ modules_install %{?_smp_mflags}
79 cd ..
80
81 mkdir -p ${INSTALL_MOD_PATH}/usr/share/doc/kmod-%{kmod_name}/%{kversion}/
82 find ${INSTALL_MOD_PATH}/lib/modules/"%{kversion}${kvariant:+$kvariant}"/ -type f -name \*.ko | sed "s,${INSTALL_MOD_PATH},," \
83 > ${INSTALL_MOD_PATH}/usr/share/doc/kmod-%{kmod_name}/%{kversion}/"modules${kvariant:+-$kvariant}"
84 done
85
86 # Strip the module(s).
87 find ${INSTALL_MOD_PATH} -type f -name \*.ko -exec strip --strip-debug \{\} \;
88
89 # Override where module comes from.
90 mkdir -p ${INSTALL_MOD_PATH}/etc/depmod.d/
91 find ${INSTALL_MOD_PATH}/lib/modules/ -type f -name \*.ko -printf '%f\n' \
92 | sed 's,\.ko,,' | sort -u | xargs -ri echo "override {} * weak-updates/%{kmod_name}" \
93 >> ${INSTALL_MOD_PATH}/etc/depmod.d/%{kmod_name}.conf
94
95 %clean
96 rm -rf $RPM_BUILD_ROOT
97
98 %changelog
99 * Tue Jun 01 2010 Shad L. Lords <slords@mail.com> 1.0-7.sme
100 - Make weak-updates default for pulling module [SME: 5982]
101 - Fix previous script to not error on uninstall [SME: 5448]
102
103 * Wed Apr 21 2010 Shad L. Lords <slords@mail.com> 1.0-6.sme
104 - Update scriptlets to not call rpm [SME: 5448]
105
106 * Tue Oct 26 2009 Shad L. Lords <slords@mail.com> 1.0-5.sme
107 - Make preuninstall script not fail on upgrade
108
109 * Tue May 26 2009 Shad L. Lords <slords@mail.com> 1.0-4.sme
110 - Initial build of the kABI-tracking version from 1.0.
111 - Modified spec and kmodtool(-slip)
112 - Note: weak-modules became available as of CentOS-4.7
113 - Strip the module(s) added
114
115 * Thu Feb 5 2009 Shad L. Lords <slords@mail.com>
116 - Fix post scripts [SME: 4864]
117
118 * Mon May 7 2007 Shad L. Lords <slords@mail.com>
119 - Update to use kmodtool
120
121 * Fri Dec 01 2006 Shad L. Lords <slords@mail.com>
122 - Initial package.

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed