Add support for change vendor
This commit is contained in:
parent
664def5108
commit
3d2fca29b0
@ -1,8 +1,15 @@
|
||||
%global vendor %{?_vendor:%{_vendor}}%{!?_vendor:openEuler}
|
||||
%global rpmvdir /usr/lib/rpm/%{vendor}
|
||||
# the _change_vendor macro should be defined in the project config of obs
|
||||
# or just in this spec if you want to change openEuler to other vendor.
|
||||
# If the _change_vendor is 1, it means that it is the first building round for all.
|
||||
# rpm packages, so we need both openEuler and the vendor as an transistion.
|
||||
# And the others value of _change_vendor indicates that we don't need openEuler anymore.
|
||||
%global change_vendor %{?_change_vendor:%{_change_vendor}}%{!?_change_vendor:0}
|
||||
|
||||
Name: %{vendor}-rpm-config
|
||||
Version: 30
|
||||
Release: 16
|
||||
Release: 17
|
||||
License: GPL+
|
||||
Summary: specific rpm configuration files
|
||||
URL: https://gitee.com/openeuler/openEuler-rpm-config
|
||||
@ -12,35 +19,44 @@ Source0: https://gitee.com/openeuler/openEuler-rpm-config/repository/arch
|
||||
Patch0: fix-error-message-for-kmodtool.patch
|
||||
Patch1: 0001-1-Add-riscv64-to-golang_arches.patch
|
||||
|
||||
Provides: python-rpm-macros = %{version}-%{release}
|
||||
Provides: python2-rpm-macros = %{version}-%{release}
|
||||
Provides: python3-rpm-macros = %{version}-%{release}
|
||||
Provides: python-srpm-macros = %{version}-%{release}
|
||||
Provides: fpc-srpm-macros
|
||||
Provides: ghc-srpm-macros
|
||||
Provides: gnat-srpm-macros
|
||||
Provides: nim-srpm-macros
|
||||
Provides: ocaml-srpm-macros
|
||||
Provides: openblas-srpm-macros
|
||||
Provides: perl-srpm-macros
|
||||
Provides: rust-srpm-macros
|
||||
Provides: go-srpm-macros
|
||||
Provides: kernel-rpm-macros
|
||||
Provides: perl-macros
|
||||
Obsoletes: perl-macros
|
||||
Obsoletes: python-rpm-macros
|
||||
Obsoletes: python2-rpm-macros
|
||||
Obsoletes: python3-rpm-macros
|
||||
Obsoletes: python-srpm-macros
|
||||
Obsoletes: fpc-srpm-macros
|
||||
Obsoletes: ghc-srpm-macros
|
||||
Obsoletes: gnat-srpm-macros
|
||||
Obsoletes: nim-srpm-macros
|
||||
Obsoletes: ocaml-srpm-macros
|
||||
Obsoletes: openblas-srpm-macros
|
||||
Obsoletes: perl-srpm-macros
|
||||
Obsoletes: rust-srpm-macros
|
||||
Obsoletes: go-srpm-macros
|
||||
Patch9000: openEuler-replace-openEuler-with-_vendor-macro.patch
|
||||
%if %{vendor} != openEuler && %{change_vendor} == 1
|
||||
Patch9001: openEuler-fix-brp-ldconfig.patch
|
||||
%endif
|
||||
|
||||
Provides: python-rpm-macros = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: python2-rpm-macros = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: python3-rpm-macros = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: python-srpm-macros = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Provides: fpc-srpm-macros = 1.1-6
|
||||
Provides: ghc-srpm-macros = 1.4.2-8
|
||||
Provides: gnat-srpm-macros = 4-6
|
||||
Provides: nim-srpm-macros = 1-3
|
||||
Provides: ocaml-srpm-macros = 5-4
|
||||
Provides: openblas-srpm-macros = 2-4
|
||||
Provides: perl-srpm-macros = 1-28
|
||||
Provides: rust-srpm-macros = 10-1
|
||||
Provides: go-srpm-macros = 2-18
|
||||
Provides: perl-macros = 4:5.32.0-1
|
||||
Obsoletes: perl-macros <= 4:5.32.0-1
|
||||
Obsoletes: python-rpm-macros <= %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: python2-rpm-macros <= %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: python3-rpm-macros <= %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: python-srpm-macros <= %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: fpc-srpm-macros <= 1.1-6
|
||||
Obsoletes: ghc-srpm-macros <= 1.4.2-8
|
||||
Obsoletes: gnat-srpm-macros <= 4-6
|
||||
Obsoletes: nim-srpm-macros <= 1-3
|
||||
Obsoletes: ocaml-srpm-macros <= 5-4
|
||||
Obsoletes: openblas-srpm-macros <= 2-4
|
||||
Obsoletes: perl-srpm-macros <= 1-28
|
||||
Obsoletes: rust-srpm-macros <= 10-1
|
||||
Obsoletes: go-srpm-macros <= 2-18
|
||||
|
||||
%if %{vendor} != openEuler
|
||||
Provides: openEuler-rpm-config = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Obsoletes: openEuler-rpm-config <= %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
%endif
|
||||
|
||||
Requires: efi-srpm-macros
|
||||
Requires: qt5-srpm-macros
|
||||
@ -61,8 +77,6 @@ Conflicts: gcc < 7
|
||||
|
||||
Provides: system-rpm-config = %{version}-%{release}
|
||||
|
||||
%global rpmvdir /usr/lib/rpm/%{vendor}
|
||||
|
||||
%description
|
||||
specific rpm configuration files for %{vendor}.
|
||||
|
||||
@ -73,7 +87,7 @@ Summary: Macros and scripts for building kernel module packages
|
||||
Macros and scripts for building kernel module packages.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name} -p1
|
||||
%autosetup -n openEuler-rpm-config -p1
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}%{rpmvdir}
|
||||
@ -88,22 +102,55 @@ install -p -m 644 -t %{buildroot}%{_rpmconfigdir}/macros.d/ macros.perl macros.p
|
||||
|
||||
mkdir -p %{buildroot}%{_fileattrsdir}
|
||||
|
||||
%if %{vendor} != openEuler
|
||||
pushd %{buildroot}%{rpmvdir}
|
||||
mv openEuler-hardened-cc1 %{vendor}-hardened-cc1
|
||||
mv openEuler-hardened-ld %{vendor}-hardened-ld
|
||||
mv openEuler-pie-cc1 %{vendor}-pie-cc1
|
||||
mv openEuler-pie-ld %{vendor}-pie-ld
|
||||
popd
|
||||
|
||||
%if %{change_vendor} == 1
|
||||
pushd %{buildroot}%{rpmvdir}/../
|
||||
cp -a %{vendor} openEuler
|
||||
popd
|
||||
|
||||
pushd %{buildroot}/usr/lib/rpm/openEuler
|
||||
mv %{vendor}-hardened-cc1 openEuler-hardened-cc1
|
||||
mv %{vendor}-hardened-ld openEuler-hardened-ld
|
||||
mv %{vendor}-pie-cc1 openEuler-pie-cc1
|
||||
mv %{vendor}-pie-ld openEuler-pie-ld
|
||||
popd
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%files
|
||||
%dir %{rpmvdir}
|
||||
%{rpmvdir}/macros
|
||||
%{rpmvdir}/rpmrc
|
||||
%{rpmvdir}/brp-*
|
||||
%{rpmvdir}/config.*
|
||||
%{rpmvdir}/openEuler-*
|
||||
%if %{vendor} != openEuler && %{change_vendor} == 1
|
||||
%exclude %{_prefix}/lib/rpm/openEuler/kmodtool.py
|
||||
%{_prefix}/lib/rpm/openEuler/*
|
||||
%endif
|
||||
%{rpmvdir}/%{vendor}-*
|
||||
%{_fileattrsdir}/
|
||||
%{_rpmconfigdir}/macros.d/
|
||||
%{_rpmconfigdir}/macros.d/*
|
||||
%exclude %{_rpmconfigdir}/macros.d/macros.kmp
|
||||
|
||||
%files -n kernel-rpm-macros
|
||||
%exclude %{_prefix}/lib/rpm/*/__pycache__/*
|
||||
%{rpmvdir}/kmodtool.py
|
||||
%if %{vendor} != openEuler && %{change_vendor} == 1
|
||||
%{_prefix}/lib/rpm/openEuler/kmodtool.py
|
||||
%endif
|
||||
%{_rpmconfigdir}/macros.d/macros.kmp
|
||||
|
||||
%changelog
|
||||
* Thu Mar 11 2021 shenyangyang <shenyangyang4@huawei.com> - 30-17
|
||||
- Add for support for change vendor
|
||||
|
||||
* Tue Dec 1 2020 whoisxxx <zhangxuzhou4@huawei.com> - 30-16
|
||||
- Add riscv64 in macros.go
|
||||
|
||||
|
||||
25
openEuler-fix-brp-ldconfig.patch
Normal file
25
openEuler-fix-brp-ldconfig.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From 13fba7b02178c0196061965155c01061fce004fc Mon Sep 17 00:00:00 2001
|
||||
From: orange-snn <songnannan2@huawei.com>
|
||||
Date: Thu, 28 Jan 2021 16:35:20 +0800
|
||||
Subject: [PATCH] fix brp ldconfig
|
||||
|
||||
---
|
||||
macros | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/macros b/macros
|
||||
index 678136a..7ef0539 100644
|
||||
--- a/macros
|
||||
+++ b/macros
|
||||
@@ -89,7 +89,7 @@
|
||||
|
||||
# Build root policy macros. Standard naming:
|
||||
# convert all '-' in basename to '_', add two leading underscores.
|
||||
-%__brp_ldconfig /usr/lib/rpm/%{_vendor}/brp-ldconfig
|
||||
+%__brp_ldconfig /usr/lib/rpm/euleros/brp-ldconfig
|
||||
%__brp_compress /usr/lib/rpm/brp-compress
|
||||
%__brp_strip /usr/lib/rpm/brp-strip %{__strip}
|
||||
%__brp_strip_comment_note /usr/lib/rpm/brp-strip-comment-note %{__strip} %{__objdump}
|
||||
--
|
||||
2.27.0
|
||||
|
||||
77
openEuler-replace-openEuler-with-_vendor-macro.patch
Normal file
77
openEuler-replace-openEuler-with-_vendor-macro.patch
Normal file
@ -0,0 +1,77 @@
|
||||
From 9ddbf9dcb6de021ad796876282796dc409cdb268 Mon Sep 17 00:00:00 2001
|
||||
From: Yangyang Shen <shenyangyang4@huawei.com>
|
||||
Date: Thu, 7 Jan 2021 21:19:58 +0800
|
||||
Subject: [PATCH] replace openEuler with %{_vendor} macro
|
||||
|
||||
---
|
||||
macros | 14 +++++++-------
|
||||
macros.kmp | 2 +-
|
||||
2 files changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/macros b/macros
|
||||
index b06faea..678136a 100644
|
||||
--- a/macros
|
||||
+++ b/macros
|
||||
@@ -52,7 +52,7 @@
|
||||
%configure \
|
||||
%{set_build_flags}; \
|
||||
[ "%_configure_gnuconfig_hack" = 1 ] && for i in $(find $(dirname %{_configure}) -name config.guess -o -name config.sub) ; do \
|
||||
- [ -f /usr/lib/rpm/openEuler/$(basename $i) ] && %{__rm} -f $i && %{__cp} -fv /usr/lib/rpm/openEuler/$(basename $i) $i ; \
|
||||
+ [ -f /usr/lib/rpm/%{_vendor}/$(basename $i) ] && %{__rm} -f $i && %{__cp} -fv /usr/lib/rpm/%{_vendor}/$(basename $i) $i ; \
|
||||
done ; \
|
||||
[ "%_configure_libtool_hardening_hack" = 1 ] && [ x != "x%{_hardened_ldflags}" ] && \
|
||||
for i in $(find . -name ltmain.sh) ; do \
|
||||
@@ -89,7 +89,7 @@
|
||||
|
||||
# Build root policy macros. Standard naming:
|
||||
# convert all '-' in basename to '_', add two leading underscores.
|
||||
-%__brp_ldconfig /usr/lib/rpm/openEuler/brp-ldconfig
|
||||
+%__brp_ldconfig /usr/lib/rpm/%{_vendor}/brp-ldconfig
|
||||
%__brp_compress /usr/lib/rpm/brp-compress
|
||||
%__brp_strip /usr/lib/rpm/brp-strip %{__strip}
|
||||
%__brp_strip_comment_note /usr/lib/rpm/brp-strip-comment-note %{__strip} %{__objdump}
|
||||
@@ -144,8 +144,8 @@
|
||||
# secure options for rpmbuild
|
||||
#
|
||||
# #hardened options
|
||||
-%_hardening_cflags -specs=/usr/lib/rpm/%{_vendor}/openEuler-hardened-cc1
|
||||
-%_hardening_ldflags -Wl,-z,now -specs=/usr/lib/rpm/%{_vendor}/openEuler-hardened-ld
|
||||
+%_hardening_cflags -specs=/usr/lib/rpm/%{_vendor}/%{_vendor}-hardened-cc1
|
||||
+%_hardening_ldflags -Wl,-z,now -specs=/usr/lib/rpm/%{_vendor}/%{_vendor}-hardened-ld
|
||||
# Use "%undefine _hardened_build" to disable.
|
||||
%_hardened_build 1
|
||||
%_hardened_cflags %{?_hardened_build:%{_hardening_cflags}}
|
||||
@@ -156,14 +156,14 @@
|
||||
#Use "%undefine _sec_opt_build" to disable.
|
||||
#Use "%undefine _pie_build" to disable.
|
||||
%_pie_build 1
|
||||
-%_pie_pre_cflags -specs=/usr/lib/rpm/%{_vendor}/openEuler-pie-cc1
|
||||
-%_pie_pre_ldflags -Wl,-z,now -specs=/usr/lib/rpm/%{_vendor}/openEuler-pie-ld
|
||||
+%_pie_pre_cflags -specs=/usr/lib/rpm/%{_vendor}/%{_vendor}-pie-cc1
|
||||
+%_pie_pre_ldflags -Wl,-z,now -specs=/usr/lib/rpm/%{_vendor}/%{_vendor}-pie-ld
|
||||
%_pie_cflags %{?_sec_opt_build:?_pie_build:%{_pie_pre_cflags}}
|
||||
%_pie_ldflags %{?_sec_opt_build:?_pie_build:%{_pie_pre_ldflags}}
|
||||
|
||||
#Use "%undefine _fs_build" to disable.
|
||||
%_fs_build 1
|
||||
-%_fs_pre_cflags -specs=/usr/lib/rpm/%{_vendor}/openEuler-fs-cc1
|
||||
+%_fs_pre_cflags -specs=/usr/lib/rpm/%{_vendor}/%{_vendor}-fs-cc1
|
||||
%_fs_cflags %{?_fs_build:%{_fs_pre_cflags}}
|
||||
|
||||
|
||||
diff --git a/macros.kmp b/macros.kmp
|
||||
index be66e64..2bf977c 100644
|
||||
--- a/macros.kmp
|
||||
+++ b/macros.kmp
|
||||
@@ -12,7 +12,7 @@ kernel_module_package_release 1
|
||||
kernel-devel
|
||||
|
||||
%kernel_module_package(n:v:r:f:) %{expand:%( \
|
||||
- %define kmodtool /usr/lib/rpm/openEuler/kmodtool.py\
|
||||
+ %define kmodtool /usr/lib/rpm/%{_vendor}/kmodtool.py\
|
||||
%define latest_kernel $(rpm -q --qf '%{VERSION}-%{RELEASE}\\\\n' `rpm -q kernel-devel` | head -n 1) \
|
||||
%{!?kernel_version:%{expand:%%global kernel_version %{latest_kernel}}} \
|
||||
%global kverrel %(%{kmodtool} verrel %{?kernel_version} 2>/dev/null) \
|
||||
--
|
||||
2.23.0
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user