142 lines
4.6 KiB
RPMSpec
142 lines
4.6 KiB
RPMSpec
#
|
|
# spec file for package kbuild-gcc
|
|
#
|
|
# Copyright (c) 2019 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 https://bugs.opensuse.org/
|
|
#
|
|
|
|
%define mainline_gcc 15
|
|
|
|
Name: kbuild-gcc
|
|
Version: 0
|
|
Release: 0
|
|
Summary: metapackage for installing gcc compilers required by kbuild
|
|
License: MIT
|
|
BuildRequires: cross-aarch64-binutils
|
|
BuildRequires: cross-aarch64-gcc48
|
|
BuildRequires: cross-aarch64-gcc7
|
|
BuildRequires: cross-aarch64-gcc13-bootstrap
|
|
BuildRequires: cross-aarch64-gcc%{mainline_gcc}-bootstrap
|
|
BuildRequires: cross-arm-binutils
|
|
BuildRequires: cross-armv7hl-gcc48
|
|
BuildRequires: cross-arm-gcc7
|
|
BuildRequires: cross-arm-gcc13
|
|
BuildRequires: cross-arm-gcc%{mainline_gcc}
|
|
BuildRequires: cross-ppc64le-binutils
|
|
BuildRequires: cross-ppc64le-gcc48
|
|
BuildRequires: cross-ppc64le-gcc7
|
|
BuildRequires: cross-ppc64le-gcc13-bootstrap
|
|
BuildRequires: cross-ppc64le-gcc%{mainline_gcc}-bootstrap
|
|
BuildRequires: cross-s390x-binutils
|
|
BuildRequires: cross-s390x-gcc48
|
|
BuildRequires: cross-s390x-gcc7
|
|
BuildRequires: cross-s390x-gcc13-bootstrap
|
|
BuildRequires: cross-s390x-gcc%{mainline_gcc}-bootstrap
|
|
BuildRequires: gcc%{mainline_gcc}
|
|
BuildRequires: gcc%{mainline_gcc}-c++
|
|
Requires: bc
|
|
Requires: bison
|
|
Requires: dwarves
|
|
Requires: suse-kabi-tools
|
|
Requires: pkgconfig(libtraceevent)
|
|
Requires: cross-aarch64-binutils
|
|
Requires: cross-aarch64-gcc48
|
|
Requires: cross-aarch64-gcc7
|
|
Requires: cross-aarch64-gcc13-bootstrap
|
|
Requires: cross-aarch64-gcc%{mainline_gcc}-bootstrap
|
|
Requires: cross-arm-binutils
|
|
Requires: cross-armv7hl-gcc48
|
|
Requires: cross-arm-gcc7
|
|
Requires: cross-arm-gcc13
|
|
Requires: cross-arm-gcc%{mainline_gcc}
|
|
Requires: cross-ppc64le-binutils
|
|
Requires: cross-ppc64le-gcc48
|
|
Requires: cross-ppc64le-gcc7
|
|
Requires: cross-ppc64le-gcc13-bootstrap
|
|
Requires: cross-ppc64le-gcc%{mainline_gcc}-bootstrap
|
|
Requires: cross-s390x-binutils
|
|
Requires: cross-s390x-gcc48
|
|
Requires: cross-s390x-gcc7
|
|
Requires: cross-s390x-gcc13-bootstrap
|
|
Requires: cross-s390x-gcc%{mainline_gcc}-bootstrap
|
|
Requires: flex
|
|
Requires: gcc48
|
|
Requires: gcc48-c++
|
|
Requires: gcc7
|
|
Requires: gcc7-c++
|
|
Requires: gcc13
|
|
Requires: gcc13-c++
|
|
Requires: gcc%{mainline_gcc}
|
|
Requires: gcc%{mainline_gcc}-c++
|
|
Requires: git-core
|
|
Requires: libelf-devel
|
|
Requires: libopenssl-1_1-devel
|
|
Requires: make
|
|
Requires: boottest-ramdisk-12
|
|
Requires: boottest-ramdisk-15
|
|
# Requires: boottest-ramdisk-16 # 15.5 and later packages cannot be extracted by SLE12 rpm
|
|
ExclusiveArch: x86_64
|
|
|
|
%description
|
|
|
|
%prep
|
|
|
|
%build
|
|
|
|
%install
|
|
mkdir -p %{buildroot}%{_bindir}
|
|
|
|
# unify arm crosscompiler architecture name
|
|
for i in %{_bindir}/armv7hl-suse-linux-gnueabi-*-4.8 ; do
|
|
j=$(echo $i | sed -e 's/armv7hl-/arm-/')
|
|
ln -s $(basename $i) %{buildroot}$j
|
|
done
|
|
|
|
# allow to leave out -gnueabi from arm cross-compilers
|
|
for i in {%{buildroot},}%{_bindir}/arm-suse-linux-gnueabi-* ; do
|
|
j=$(echo $i | sed -e 's/-gnueabi//' -e "s|%{buildroot}||")
|
|
ln -s $(basename $i) %{buildroot}$j
|
|
done
|
|
|
|
# gcc-4.8 cross-compilers
|
|
mkdir -p %{buildroot}%{_bindir}/gcc48
|
|
|
|
for i in {%{buildroot},}%{_bindir}/*-4.8; do
|
|
ln -s "../$(basename "$i")" %{buildroot}%{_bindir}/gcc48/"$(basename "$i" -4.8)"
|
|
done
|
|
|
|
# gcc-7 cross-compilers
|
|
mkdir -p %{buildroot}%{_bindir}/gcc7
|
|
for i in {%{buildroot},}%{_bindir}/*-7; do
|
|
ln -s "../$(basename "$i")" %{buildroot}%{_bindir}/gcc7/"$(basename "$i" -7)"
|
|
done
|
|
|
|
# gcc-13 cross-compilers
|
|
mkdir -p %{buildroot}%{_bindir}/gcc13
|
|
for i in {%{buildroot},}%{_bindir}/*-13; do
|
|
ln -s "../$(basename "$i")" %{buildroot}%{_bindir}/gcc13/"$(basename "$i" -13)"
|
|
done
|
|
|
|
mkdir -p %{buildroot}%{_bindir}/gcc-current
|
|
for i in $(ls /usr/bin/*-%{mainline_gcc} | grep -v linux); do
|
|
ln -s "../$(basename "$i")" %{buildroot}%{_bindir}/gcc-current/"$(basename "$i" -%{mainline_gcc})"
|
|
done
|
|
|
|
%post
|
|
%postun
|
|
|
|
%files
|
|
%{_bindir}/*
|
|
|
|
%changelog
|