]> git.pld-linux.org Git - packages/em8300.git/blobdiff - em8300.spec
- simplify %setup
[packages/em8300.git] / em8300.spec
index 3db2edaab8787604c9d7582677cc36488d01b407..51d33a9ccfb5f92bcf88fdfcdaecad137ba5a2da 100644 (file)
@@ -1,18 +1,27 @@
-#
-# TODO: .init script calls em8300_microcode_upload, which has been killed
+# TODO
+# - cc
 #
 # Conditional build:
-%bcond_without dist_kernel     # without distribution kernel
+%bcond_without dist_kernel     # allow non-distribution kernel
 %bcond_without kernel          # don't build kernel modules
 %bcond_without smp             # don't build SMP module
 %bcond_without userspace       # don't build userspace tools
 %bcond_with    verbose         # verbose build (V=1)
-#
+
+%ifarch sparc
+# kernel modules won't build on sparc32, no I2C in kernel
+%undefine      with_kernel
+%endif
+
+%if !%{with kernel}
+%undefine      with_dist_kernel
+%endif
+
 Summary:       DXR3 and H+ driver
 Summary(pl):   Sterowniki dla DXR3 i H+
 Name:          em8300
 Version:       0.15.2
-Release:       0.1
+Release:       2
 License:       GPL
 Group:         Applications/System
 Source0:       http://dl.sourceforge.net/dxr3/%{name}-%{version}.tar.gz
@@ -26,12 +35,13 @@ BuildRequires:      autoconf
 BuildRequires: automake
 BuildRequires: gtk+-devel >= 1.2.0
 %endif
-%if %{with kernel} && %{with dist_kernel}
-BuildRequires: kernel-headers 
-BuildRequires: rpmbuild(macros) >= 1.118
+%if %{with kernel}
+%{?with_dist_kernel:BuildRequires:     kernel-module-build >= 3:2.6.14}
+BuildRequires: rpmbuild(macros) >= 1.286
 %endif
 Requires(post,preun):  /sbin/chkconfig
 Provides:      dxr3
+Obsoletes:     em8300-libs
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -53,6 +63,7 @@ format
 Summary:       Header file to communicate with em8300 Linux kernel modules
 Summary(pl):   Plik nag³ówkowy do komunikacji z modu³ami j±dra Linuksa em8300
 Group:         Development/Libraries
+Obsoletes:     em8300-static
 
 %description devel
 Header file to communicate with em8300 Linux kernel modules.
@@ -76,8 +87,11 @@ Programy u
 Summary:       em8300 Linux kernel modules
 Summary(pl):   Modu³y j±dra Linuksa em8300
 Group:         Base/Kernel
-%{?with_dist_kernel:%requires_releq_kernel_up}
 Requires(post,postun): /sbin/depmod
+%if %{with dist_kernel}
+%requires_releq_kernel_up
+Requires(postun):      %releq_kernel_up
+%endif
 
 %description -n kernel-video-em8300
 em8300 Linux kernel modules.
@@ -89,8 +103,11 @@ Modu
 Summary:       em8300 Linux SMP kernel modules
 Summary(pl):   Modu³y j±dra Linuksa SMP em8300
 Group:         Base/Kernel
-%{?with_dist_kernel:%requires_releq_kernel_smp}
 Requires(post,postun): /sbin/depmod
+%if %{with dist_kernel}
+%requires_releq_kernel_smp
+Requires(postun):      %releq_kernel_smp
+%endif
 
 %description -n kernel-smp-video-em8300
 em8300 Linux SMP kernel modules.
@@ -99,7 +116,7 @@ em8300 Linux SMP kernel modules.
 Modu³y j±dra Linuksa SMP em8300.
 
 %prep
-%setup -q -n %{name}-%{version}
+%setup -q
 %patch0 -p0
 
 %build
@@ -115,35 +132,38 @@ Modu
 %if %{with kernel}
 cd modules
 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
-    if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
-       exit 1
-    fi
-    rm -rf include/{linux,config,asm}
-    install -d include/{linux,config}
-    ln -sf %{_kernelsrcdir}/config-$cfg .config
-    ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
-%ifarch ppc ppc64
-    install -d include/asm
-    [ ! -d %{_kernelsrcdir}/include/asm-powerpc ] || ln -sf %{_kernelsrcdir}/include/asm-powerpc/* include/asm
-    [ ! -d %{_kernelsrcdir}/include/asm-%{_target_base_arch} ] || ln -snf %{_kernelsrcdir}/include/asm-%{_target_base_arch}/* include/asm
-%else
-ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
+       if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
+               exit 1
+       fi
+       install -d o/include/linux
+       ln -sf %{_kernelsrcdir}/config-$cfg o/.config
+       ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
+       ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
+%if %{with dist_kernel}
+       %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts
 %endif
-    ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
-    touch include/config/MARKER
-    cp ../include/linux/em8300.h include/linux/em8300.h
-
-    %{__make} -C %{_kernelsrcdir} clean \
-           RCS_FIND_IGNORE="-name '*.ko' -o" \
-           M=$PWD O=$PWD \
-           %{?with_verbose:V=1}
-    %{__make} -C %{_kernelsrcdir} modules \
-           CC="%{__cc}" CPP="%{__cpp}" \
-           M=$PWD O=$PWD \
-           %{?with_verbose:V=1}
-    for i in em8300 adv717x bt865; do
-           mv $i{,-$cfg}.ko
-    done
+       install -d o/include/config
+       touch o/include/config/MARKER
+       ln -sf %{_kernelsrcdir}/scripts o/scripts
+
+       cp ../include/linux/em8300.h o/include/linux/em8300.h
+
+       %{__make} -C %{_kernelsrcdir} clean \
+               RCS_FIND_IGNORE="-name '*.ko' -o" \
+               SYSSRC=%{_kernelsrcdir} \
+               SYSOUT=$PWD/o \
+               M=$PWD O=$PWD/o \
+               %{?with_verbose:V=1}
+       %{__make} -C %{_kernelsrcdir} modules \
+               CC="%{__cc}" CPP="%{__cpp}" \
+               SYSSRC=%{_kernelsrcdir} \
+               SYSOUT=$PWD/o \
+               M=$PWD O=$PWD/o \
+               %{?with_verbose:V=1}
+
+       for i in em8300 adv717x bt865; do
+               mv $i{,-$cfg}.ko
+       done
 done
 %endif
 
@@ -161,12 +181,12 @@ install -D %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
 %if %{with kernel}
 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/video
 for i in adv717x bt865 em8300; do
-    install modules/$i-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
+       install modules/$i-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
                $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/video/$i.ko
 done
 %if %{with smp} && %{with dist_kernel}
 for i in adv717x bt865 em8300; do
-    install modules/$i-smp.ko \
+       install modules/$i-smp.ko \
                $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/video/$i.ko
 done
 %endif
This page took 0.067509 seconds and 4 git commands to generate.