Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Please login to access the resource
home:awissu:kernel-rt
kernel-source
kernel-source.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File kernel-source.spec of Package kernel-source
# # spec file for package kernel-source # # Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define srcversion 4.4 %define patchversion 4.4.1 %define variant %{nil} # Release rt-patch %define rtver rt6 # Only vanilla or rtvanilla or all in one %define vanilla 0 %define rtvanilla 1 # Constant value %if %{vanilla} && !%{rtvanilla} %define vanilla_only 1 %endif %if %{rtvanilla} && !%{vanilla} %define rtvanilla_only 1 %define rtrel %{rtver} %endif %define src_install_dir usr/src/linux-%{kernelrelease}%{variant} %define symbols %(set -- $([ -e %{_sourcedir}/extra-symbols ] && cat %{_sourcedir}/extra-symbols) ; echo $*) %define variant_symbols %(case %{name} in (*-rt) echo "RT" ;; esac) %define do_vanilla"%{variant}" == "" %(chmod +x %{_sourcedir}/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh}) %include %{_sourcedir}/kernel-spec-macros %if 0%{?is_kotd} %define commit <RELEASE>.g6398c2d %else %define commit 0 %endif Name: kernel-source Version: %{patchversion}%{?rtrel:+%rtrel} Release: %{commit} Summary: The Linux Kernel Sources License: GPL-2.0 Group: Development/Sources Url: http://www.kernel.org/ Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%{srcversion}.tar.xz Source2: source-post.sh Source8: devel-pre.sh Source9: devel-post.sh Source10: preun.sh Source11: postun.sh Source12: pre.sh Source13: post.sh Source14: series.conf Source16: guards Source17: apply-patches Source21: config.conf Source23: supported.conf Source33: check-for-config-changes Source35: group-source-files.pl Source36: README.PATCH-POLICY.SUSE Source37: README.SUSE Source38: README.KSYMS Source39: config-options.changes.txt Source40: source-timestamp Source44: find-provides Source45: split-modules Source46: modversions Source48: macros.kernel-source Source49: kernel-module-subpackage Source50: kabi.pl Source51: mkspec Source52: kernel-source%{variant}.changes Source53: kernel-source.spec.in Source54: kernel-binary.spec.in Source55: kernel-syms.spec.in Source56: kernel-docs.spec.in Source57: kernel-cert-subpackage Source58: constraints.in Source60: config.sh Source61: compute-PATCHVERSION.sh Source62: old-flavors Source63: arch-symbols Source64: package-descriptions Source65: kernel-spec-macros Source67: log.sh Source68: host-memcpy-hack.h Source69: try-disable-staging-driver Source70: kernel-obs-build.spec.in Source71: kernel-obs-qa.spec.in Source72: compress-vmlinux.sh Source100: config.tar.bz2 Source101: config.addon.tar.bz2 Source102: patches.arch.tar.bz2 Source103: patches.drivers.tar.bz2 Source104: patches.fixes.tar.bz2 Source105: patches.rpmify.tar.bz2 Source106: patches.suse.tar.bz2 Source107: patches.xen.tar.bz2 Source108: patches.addon.tar.bz2 Source109: patches.kernel.org.tar.bz2 Source110: patches.apparmor.tar.bz2 Source111: patches.rt.tar.bz2 Source112: patches.trace.tar.bz2 Source113: patches.kabi.tar.bz2 Source120: kabi.tar.bz2 Source121: sysctl.tar.bz2 Source122: patches.preempt-rt.tar.bz2 Source999: kernel-source.rpmlintrc BuildRequires: coreutils BuildRequires: fdupes BuildRequires: sed # Source is only complete with devel files. Requires: kernel-devel%{variant} = %{version}-%{release} # Requires(post): coreutils Requires(post): sed Provides: %{name} = %{version}-%{source_rel} Provides: linux Provides: multiversion(kernel) BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch Prefix: %{_prefix}/src AutoReqProv: off %description Linux kernel sources with many fixes and improvements. %{source_timestamp} %package -n kernel-devel%{variant} Summary: Development files needed for building kernel modules Group: Development/Sources Requires: kernel-macros Provides: kernel-devel%{variant} = %{version}-%{source_rel} Provides: multiversion(kernel) AutoReqProv: off %description -n kernel-devel%{variant} Kernel-level headers and Makefiles required for development of external kernel modules. %{source_timestamp} %package -n kernel-macros Summary: RPM macros for building Kernel Module Packages Group: Development/Sources # Note: This does not provide multiversion(kernel) nor is its name decorated # with the variant (-rt) %description -n kernel-macros This package provides the rpm macros and templates for Kernel Module Pakcages. %{source_timestamp} %package vanilla Summary: Vanilla Linux kernel sources with minor build fixes Group: Development/Sources Requires: kernel-macros Provides: %{name}-vanilla= %{version}-%{source_rel} Provides: multiversion(kernel) AutoReqProv: off %description vanilla This package contains the sources and Makefiles required for development. %package rt Summary: Vanilla Linux kernel sources and rt-patches Group: Development/Sources Requires: kernel-macros %if !0%{?rtvanilla_only} Provides: %{name}-rt = %{version}%{?rtver:+%rtver}-%{source_rel} %else Provides: %{name}-rt = %{version}-%{source_rel} %endif Provides: multiversion(kernel) AutoReqProv: off %description rt Real-Time kernel - is based on the vanilla kernel source. This package contains the sources and Makefiles required for development. %{source_timestamp} %prep echo "Symbol(s): %{symbols}" # Unpack all sources and patches %setup -q -c -T -a100 -a101 -a102 -a103 -a104 -a105 -a106 -a107 -a108 -a109 -a110 -a111 -a112 -a113 -a120 -a121 -a122 %build mkdir -p %{buildroot}%{_prefix}/src pushd %{buildroot}%{_prefix}/src # Unpack the vanillakernel sources tar -xf %{SOURCE0} if test "%{srcversion}" != "%{kernelrelease}%{variant}"; then mv linux-%{srcversion} linux-%{kernelrelease}%{variant} rm -f $(find . -name ".gitignore") fi %if %{do_vanilla} %if !0%{?rtvanilla_only} %if 0%{?vanilla_only} mv \ %endif %if !0%{?vanilla_only} cp -al \ %endif linux-%{kernelrelease}%{variant} linux-%{kernelrelease}-vanilla pushd linux-%{kernelrelease}-vanilla %{_sourcedir}/apply-patches --vanilla %{_sourcedir}/series.conf \ %{my_builddir} %{symbols} popd %endif %if !0%{?vanilla_only} %if 0%{?rtvanilla_only} mv \ %endif %if !0%{?rtvanilla_only} cp -al \ %endif linux-%{kernelrelease}%{variant} linux-%{kernelrelease}-rt pushd linux-%{kernelrelease}-rt %{_sourcedir}/apply-patches --preemptrt %{_sourcedir}/series.conf \ %{my_builddir} %{symbols} popd %endif %endif %if !0%{?vanilla_only} && !0%{?rtvanilla_only} ln -sf linux%{variant} linux%{variant} # dummy symlink pushd linux-%{kernelrelease}%{variant} %{_sourcedir}/apply-patches %{_sourcedir}/series.conf %{my_builddir} %{symbols} if [ -f %{_sourcedir}/localversion ] ; then cat %{_sourcedir}/localversion > localversion fi %endif # Hardlink duplicate files automatically (from package fdupes). %fdupes %{buildroot} %install %if !0%{?vanilla_only} && !0%{?rtvanilla_only} # Install the documentation and example Kernel Module Package. DOC=%{_docdir}/%{name}-%{kernelrelease} mkdir -p %{buildroot}/$DOC cp %{_sourcedir}/README.SUSE %{_sourcedir}/config-options.changes.txt %{buildroot}/$DOC ln -s $DOC/README.SUSE %{buildroot}/%{src_install_dir}/ %if "%{variant}" == "" install -m 755 -d %{buildroot}%{_sysconfdir}/rpm install -m 644 %{_sourcedir}/macros.kernel-source %{buildroot}%{_sysconfdir}/rpm/ install -m 755 -d %{buildroot}%{_libexecdir}/rpm install -m 644 %{_sourcedir}/kernel-{module,cert}-subpackage \ %{buildroot}%{_libexecdir}/rpm/ %endif for script in post; do sed -e "s:@KERNELRELEASE@:%{kernelrelease}:g" \ -e "s:@SRCVARIANT@:%{variant}:g" \ %{_sourcedir}/source-$script.sh > %{name}-$script.sh done pushd %{buildroot} perl "%{_sourcedir}/group-source-files.pl" \ -D "$OLDPWD/devel.files" -N "$OLDPWD/nondevel.files" \ -L "%{src_install_dir}" popd # kernel-source and kernel-$flavor-devel are built independently, but the # shipped sources (/usr/src/linux/) need to be older than generated files # (/usr/src/linux-obj). We rely on the git commit timestamp to not point into # the future and be thus lower than the timestamps of files built from the # source (bnc#669669). ts="$(head -n1 %{_sourcedir}/source-timestamp)" find %{buildroot}%{_prefix}/src/linux* ! -type l | xargs touch -d "$ts" # Search for executable files find . \ \( -name \*.c -o -name \*.py \) -type f -executable -exec chmod 644 {} \; || : %post -f %{name}-post.sh %post -n kernel-devel%{variant} -f %{name}-post.sh %files -f nondevel.files %defattr(-, root, root) %files -n kernel-devel%{variant} -f devel.files %defattr(-,root,root) %ghost %{_prefix}/src/linux%{variant} %doc %{_docdir}/* %if "%{variant}" == "" %files -n kernel-macros %defattr(-,root,root) %{_sysconfdir}/rpm/macros.kernel-source %{_libexecdir}/rpm/kernel-*-subpackage %endif %endif %if %{do_vanilla} %if !0%{?rtvanilla_only} %files vanilla %defattr(-, root, root) %{_prefix}/src/linux-%{kernelrelease}-vanilla %endif %if !0%{?vanilla_only} %files rt %defattr(-, root, root) %{_prefix}/src/linux-%{kernelrelease}-rt %endif %endif %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor