Пакет kernel-headers-common: Specfile

Name: kernel-headers-common
Version: 1.1.11
Release: alt1

Summary: Common header files for the Linux kernel
License: GPL
Group: Development/Kernel
Packager: Kernel Maintainers Committee <kernel@packages.altlinux.org>
ExclusiveArch: %ix86 x86_64 %arm

Source0: adjust_kernel_headers
Source1: kheaders.init
Source2: adjust_kernel_headers.8

# due to %%base_arch
BuildPreReq: rpm-build-kernel

%define _unpackaged_files_terminate_build 1

%description
This package contains common directories and C header files from
various versions of the linux kernel.

%install
install -pD -m755 %SOURCE0 %buildroot%_sbindir/adjust_kernel_headers
sed -i 's/@VERSION@/%version/g' -- \
	%buildroot%_sbindir/adjust_kernel_headers
install -pD -m755 %SOURCE1 %buildroot%_initdir/kheaders
install -pD -m755 %SOURCE2 %buildroot%_man8dir/adjust_kernel_headers.8
mkdir -p %buildroot%_includedir
mkdir -p %buildroot%_sysconfdir/sysconfig/kernel
mkdir -p %buildroot%_prefix/lib/kernel
mkdir -p %buildroot/var/run/kernel

ln -s %_sysconfdir/sysconfig/kernel/include/{asm{,-generic},linux} \
	%buildroot%_includedir/

# Linux 2.6.18 headers require asm-$ARCH links (actually even older headers
# need these links in some obscure cases).
ln -s %_sysconfdir/sysconfig/kernel/include/asm-%base_arch \
	%buildroot%_includedir/
%add_findreq_skiplist %_includedir/asm-%base_arch
%ifarch x86_64
ln -s %_sysconfdir/sysconfig/kernel/include/asm-i386 \
	%buildroot%_includedir/
%add_findreq_skiplist %_includedir/asm-i386
%endif

ln -s %_includedir/linux-default/include \
	%buildroot%_sysconfdir/sysconfig/kernel/

touch %buildroot%_sysconfdir/sysconfig/kernel/include_manual_mode

for f in {autoconf,modversions,version}.{h,ph} _h2ph_pre.ph; do
        touch "%buildroot/var/run/kernel/$f"
done

%post
if [ $1 -eq 1 ]; then
	/sbin/chkconfig --add kheaders
fi

%preun
if [ $1 -eq 0 ]; then
	/sbin/chkconfig --del kheaders
fi

%triggerin -- glibc-kernheaders, kernel-headers-std-up, kernel-headers-std-smp, kernel22-headers, kernel24-headers
%_sbindir/adjust_kernel_headers ||:

%triggerpostun -- glibc-kernheaders, kernel-headers-std-up, kernel-headers-std-smp, kernel22-headers, kernel24-headers, kernel22-up, kernel22-up-secure, kernel22-smp, kernel22-smp-secure, kernel24-up, kernel24-smp
%_sbindir/adjust_kernel_headers ||:

%triggerpostun -- kernel-headers-common < 0:1.1-alt1
/sbin/chkconfig --add kheaders
/sbin/service kheaders start ||:

%files
%config %_initdir/kheaders
%_sbindir/adjust_kernel_headers
%_man8dir/*
%dir %_sysconfdir/sysconfig/kernel
%ghost %_sysconfdir/sysconfig/kernel/include
%ghost %_sysconfdir/sysconfig/kernel/include_manual_mode
%_includedir/asm
%_includedir/asm-generic
%_includedir/asm-%base_arch
%ifarch x86_64
%_includedir/asm-i386
%endif
%_includedir/linux
%dir %_prefix/lib/kernel
%dir /var/run/kernel
%ghost /var/run/kernel/*

%changelog
* Fri Apr 17 2009 Dmitry V. Levin <ldv@altlinux.org> 1.1.11-alt1
- adjust_kernel_headers: Added branch kernels support (closes: #19641).

* Mon Mar 09 2009 Dmitry V. Levin <ldv@altlinux.org> 1.1.10-alt1
- Added ARM support (Kirill A. Shutemov).
- Suppressed dependencies autogenerated for dangling
  %_includedir/asm-* symlinks (closes: #18592).

* Sun Nov 26 2006 Sergey Vlasov <vsu@altlinux.ru> 1.1.9-alt1
- Added /usr/include/asm-$ARCH symlinks (required for Linux 2.6.18 headers on
  x86_64, and sometimes used even in older versions).
- Package is no longer noarch (the set of asm-$ARCH symlinks is arch-specific:
  asm-i386 on 32-bit x86, both asm-x86_64 and asm-i386 on x86_64).
- Used explicit list instead of %%_includedir/* in %%files (otherwise rpmbuild
  does not put files which happen to be dangling symlinks into the package).
- Terminate build if unpackaged files were found.

* Sat Nov 25 2006 Sergey Vlasov <vsu@altlinux.ru> 1.1.8-alt1
- adjust_kernel_headers: Decrease linux/version.h size threshold to 90 bytes
  (fixes problems with Linux 2.6.18 headers, where linux/version.h became
  smaller due to UTS_RELEASE removal).
- Removed all %%__* macro abuse from spec.

* Mon Jan 30 2006 Sergey Vlasov <vsu@altlinux.ru> 1.1.7-alt1
- adjust_kernel_headers:
  + always give "default" headers (glibc-kernheaders) lowest priority when
    using --first to enable use of linux-libc-headers with hasher (#8918);
  + fix bashism noted in comment to #8422.

* Fri Dec 02 2005 Sergey Vlasov <vsu@altlinux.ru> 1.1.6-alt1
- adjust_kernel_headers:
  + applied linux-libc-headers support patch from Konstantin A Lepikhov
    <lakostis@altlinux> (#8422).

* Wed May 25 2005 Sergey Vlasov <vsu@altlinux.ru> 1.1.5-alt2
- Spec fixes for x86_64 compatibility from mouse@ (#6538).

* Mon Mar 08 2004 Sergey Vlasov <vsu@altlinux.ru> 1.1.5-alt1
- adjust_kernel_headers:
  + added auto and manual modes;
  + added proper "--help" text;
  + added "--version" option;
  + fixed old-style headers handling (even if usable version.h exists in
    /usr/lib/kernel/$VERSION, do not consider the headers available unless
    something reasonable exists in /usr/lib/kernel/include);
  + cleanup suggested by Dmitry V. Levin <ldv@altlinux>.
- Added man page for adjust_kernel_headers.
- Added triggers for glibc-kernheaders, kernel-headers-std-{up,smp},
  kernel22-headers, kernel24-headers and also %%triggerpostun for old kernel
  packages (which contained part of the kernel headers) to fix headers on
  install/uninstall.
- Added /usr/include/asm-generic symlink (needed by 2.6.x kernel headers).

* Wed Jul 30 2003 Dmitry V. Levin <ldv@altlinux.org> 1.1.4-alt1
- adjust_kernel_headers:
  + added "--list" option;
  + added "--first" option.

* Tue Jun 03 2003 Dmitry V. Levin <ldv@altlinux.org> 1.1.3-alt1
- init.d/kheaders: fixed $LOCKFILE handling.

* Mon Jun 02 2003 Dmitry V. Levin <ldv@altlinux.org> 1.1.2-alt1
- adjust_kernel_headers:
  + fixed KERNEL_VERSION definition;
  + better kernel autodetection.

* Thu May 22 2003 Dmitry V. Levin <ldv@altlinux.org> 1.1.1-alt1
- adjust_kernel_headers: better --help support.

* Tue May 20 2003 Dmitry V. Levin <ldv@altlinux.org> 1.1-alt1
- Updated to support new kernel headers scheme.

* Mon Nov 18 2002 Stanislav Ievlev <inger@altlinux.ru> 1.0-alt2
- rebuild

* Wed Aug 15 2001 Dmitry V. Levin <ldv@altlinux.ru> 1.0-alt1
- Initial revision.