%global __cargo_skip_build 0 %global _debugsource_packages 1 %global _debuginfo_subpackages 1 %define _unpackaged_files_terminate_build 0 %global sysmaster_install_source target/release %global sysmaster_install_target %{buildroot}/usr/lib/sysmaster %global unit_install_source units %global conf_install_source config/conf %global __cargo_common_opts %{?__cargo_common_opts} --all %global _cargo_build /usr/bin/env CARGO_HOME=.cargo RUSTC_BOOTSTRAP=1 %{_bindir}/cargo build %__cargo_common_opts Name: sysmaster Version: 0.2.4 Release: 4 Summary: redesign and reimplement process1. License: Mulan PSL v2 URL: https://gitee.com/openeuler/sysmaster Source0: %{name}-%{version}.tar.gz Patch0001: backport-fix-modify-units-for-sctl-enable.patch ExclusiveArch: x86_64 aarch64 BuildRequires: rust BuildRequires: cargo BuildRequires: rust-packaging BuildRequires: gcc clang util-linux-devel %description redesign and reimplement process1. Summary: %{summary} %prep %autosetup -p1 %cargo_prep %cargo_generate_buildrequires %build sed -i '/\[source.crates-io\]/{n;d}' ./.cargo/config sed -i '/\[source.local-registry\]/{n;d}' ./.cargo/config sed -i '/\[source.local-registry\]/a directory = "vendor"' ./.cargo/config sed -i '/\[build\]/arustflags = \["-C", "target-feature=-crt-static", "-C", "link-arg=-fstack-protector-all", "-C", "link-arg=-fpie", "-C", "link-arg=-DFORTIFY=2 -O2"\]' ./.cargo/config %{_cargo_build} --profile release %install install -Dm0750 -t %{buildroot}/usr/bin %{sysmaster_install_source}/sctl install -Dm0750 -t %{sysmaster_install_target} %{sysmaster_install_source}/init install -Dm0750 -t %{sysmaster_install_target} %{sysmaster_install_source}/sysmaster install -Dm0640 -t %{sysmaster_install_target} %{unit_install_source}/* install -Dm0750 -t %{sysmaster_install_target}/plugin %{sysmaster_install_source}/libservice.so install -Dm0750 -t %{sysmaster_install_target}/plugin %{sysmaster_install_source}/libtarget.so install -Dm0640 -t %{sysmaster_install_target}/plugin %{conf_install_source}/plugin.conf %files %attr(0550,-,-) /usr/bin/sctl %dir /usr/lib/sysmaster /usr/lib/sysmaster/basic.target %attr(0550,-,-) /usr/lib/sysmaster/init /usr/lib/sysmaster/multi-user.target %dir /usr/lib/sysmaster/plugin %attr(0550,-,-) /usr/lib/sysmaster/plugin/*.so /usr/lib/sysmaster/plugin/plugin.conf /usr/lib/sysmaster/shutdown.target /usr/lib/sysmaster/sshd-keygen.target /usr/lib/sysmaster/sshd-keygen@ecdsa.service /usr/lib/sysmaster/sshd-keygen@ed25519.service /usr/lib/sysmaster/sshd-keygen@rsa.service /usr/lib/sysmaster/sshd.service /usr/lib/sysmaster/sysinit.target %attr(0550,-,-) /usr/lib/sysmaster/sysmaster %changelog * Wed Jul 19 2023 shenyangyang - 0.2.4-4 - add compile option * Thu Jul 06 2023 xujing - 0.2.4-3 - fix objcopy permission denied when rpmbuild * Tue Jun 27 2023 shenyangyang - 0.2.4-2 - modify the sshd units * Tue Jun 20 2023 shenyangyang - 0.2.4-1 - update version to 0.2.4 for docker use * Fri Jun 16 2023 licunlong - 0.2.3-3 - sync patches from upstream * Tue May 30 2023 shenyangyang - 0.2.3-2 - Support compatible compile with rust 1.60 * Sat May 6 2023 shenyangyang - 0.2.3-1 - update version to 0.2.3 * Tue Sep 20 2022 licunlong - 0.2.1-2 - rename process1 to sysmaster, and remove pctrl to /usr/bin * Tue Sep 13 2022 licunlong - 0.2.1-1 - sync patches from upstream * Mon Aug 22 2022 He Xiaowen - 0.2.0-2 - strip the libraries * Mon Aug 22 2022 He Xiaowen - 0.2.0-1 - initial package