From 4ba521f8a87844cb1f396cf6a9c764b82b5e7988 Mon Sep 17 00:00:00 2001 From: Florian Pose <fp@igh-essen.com> Date: Wed, 17 Feb 2010 16:33:19 +0100 Subject: [PATCH] Improved spec file. --- ethercat.spec.in | 51 ++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 26 deletions(-) diff --git a/ethercat.spec.in b/ethercat.spec.in index 84664f92..0ed69960 100644 --- a/ethercat.spec.in +++ b/ethercat.spec.in @@ -40,6 +40,8 @@ Provides: @PACKAGE@ Source: %{name}-%{version}.tar.bz2 BuildRoot: /tmp/%{name}-%{version} +BuildRequires: %kernel_module_package_buildreqs + #---------------------------------------------------------------------------- # Main Package #---------------------------------------------------------------------------- @@ -52,24 +54,7 @@ This is an open-source EtherCAT master implementation for Linux 2.6. See the FEATURES file for a list of features. For more information, see http://etherlab.org/en/ethercat. -#---------------------------------------------------------------------------- -# Kernel module package -#---------------------------------------------------------------------------- - -%package kmp-rt - -Summary: Realtime kernel modules for the EtherCAT master. -Group: EtherLab - -Requires: kernel-rt - -BuildRequires: kernel-rt-devel -BuildRequires: linux-kernel-headers - -%description kmp-rt -This is an open-source EtherCAT master implementation for Linux 2.6. See the -FEATURES file for a list of features. For more information, see -http://etherlab.org/en/ethercat. +%kernel_module_package #---------------------------------------------------------------------------- # Development package @@ -91,11 +76,30 @@ http://etherlab.org/en/ethercat. %setup %build -%configure --enable-tty --enable-generic -make all modules +%configure --enable-tty --enable-generic \ + --with-linux-dir=/usr/src/linux-obj/%_target_cpu/default +make +mkdir obj +for flavor in %flavors_to_build; do + target=obj/$flavor + rm -rf $target + mkdir $target + cp -r config.h globals.h Kbuild master/ devices/ \ + examples/ tty/ include/ $target + make -C /usr/src/linux-obj/%_target_cpu/$flavor modules M=$PWD/$target +done %install -make DESTDIR=${RPM_BUILD_ROOT} install modules_install +for flavor in %flavors_to_build; do + md5sum obj/$flavor/Module.symvers +done +make DESTDIR=${RPM_BUILD_ROOT} install +for flavor in %flavors_to_build; do + target=obj/$flavor + make -C /usr/src/linux-obj/%_target_cpu/$flavor modules_install \ + M=$PWD/$target INSTALL_MOD_PATH=${RPM_BUILD_ROOT} \ + INSTALL_MOD_DIR=ethercat +done %clean rm -rf ${RPM_BUILD_ROOT} @@ -116,11 +120,6 @@ rm -rf ${RPM_BUILD_ROOT} /usr/bin/ethercat /usr/lib/libethercat.so* -%files kmp-rt -%defattr(-,root,root) -/lib/modules/*/ethercat/*.ko -/usr/share/@PACKAGE@/@LINUX_SYMVERS@ - %files devel %defattr(-,root,root) /usr/include/*.h -- GitLab