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

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

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


Revision 1.26 - (hide annotations) (download)
Tue Jun 1 16:33:49 2010 UTC (14 years, 6 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 slords 1.26 # $Id: slip-kmod.spec,v 1.25 2010/04/21 16:05:56 slords Exp $
2 slords 1.23
3     # Define the kmod package name here.
4     %define kmod_name slip
5 slords 1.10
6 slords 1.1 # 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 slords 1.26 %{!?kversion: %define kversion 2.6.9-89.0.20.EL}
9 slords 1.1
10 slords 1.23 Name: %{kmod_name}-kmod
11     Version: 1.0
12 slords 1.26 Release: 7%{?dist}
13 slords 1.23 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 slords 1.1
24 slords 1.23 # Define the variants for each architecture.
25 slords 1.1 %define upvar ""
26 slords 1.23 %define smpvar smp
27 slords 1.1 %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 slords 1.23
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 slords 1.1
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 slords 1.23 # 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 slords 1.25
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 slords 1.1 done
85 slords 1.23
86     # Strip the module(s).
87     find ${INSTALL_MOD_PATH} -type f -name \*.ko -exec strip --strip-debug \{\} \;
88 slords 1.26
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 slords 1.1
95     %clean
96     rm -rf $RPM_BUILD_ROOT
97    
98     %changelog
99 slords 1.26 * 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 slords 1.25 * 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 slords 1.24 * Tue Oct 26 2009 Shad L. Lords <slords@mail.com> 1.0-5.sme
107     - Make preuninstall script not fail on upgrade
108    
109 slords 1.23 * 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 snetram 1.20 * Thu Feb 5 2009 Shad L. Lords <slords@mail.com>
116     - Fix post scripts [SME: 4864]
117    
118 slords 1.1 * 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