From 3c83a635bb36dac77ee49609c4d96de5c070c201 Mon Sep 17 00:00:00 2001 From: dalance Date: Wed, 12 Feb 2020 17:04:55 +0900 Subject: [PATCH] Add script for rpm build --- .github/workflows/regression.yml | 6 ++++++ .rpm/procs.spec | 31 +++++++++++++++++++++++++++++++ Cargo.toml | 7 +++++++ Makefile | 5 +++++ 4 files changed, 49 insertions(+) create mode 100644 .rpm/procs.spec diff --git a/.github/workflows/regression.yml b/.github/workflows/regression.yml index 0d2bf7a..742b140 100644 --- a/.github/workflows/regression.yml +++ b/.github/workflows/regression.yml @@ -21,3 +21,9 @@ jobs: uses: actions/checkout@v1 - name: Run tests run: cargo test + - name: RPM test + run: | + rustup target add x86_64-unknown-linux-musl + sudo apt-get -qq install musl-tools + cargo install cargo-rpm + make release_rpm diff --git a/.rpm/procs.spec b/.rpm/procs.spec new file mode 100644 index 0000000..0002e82 --- /dev/null +++ b/.rpm/procs.spec @@ -0,0 +1,31 @@ +%define __spec_install_post %{nil} +%define __os_install_post %{_dbpath}/brp-compress +%define debug_package %{nil} + +Name: procs +Summary: A modern replacement for ps +Version: @@VERSION@@ +Release: @@RELEASE@@ +License: MIT +Group: Applications/System +Source0: %{name}-%{version}.tar.gz + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root + +%description +%{summary} + +%prep +%setup -q + +%install +rm -rf %{buildroot} +mkdir -p %{buildroot} +cp -a * %{buildroot} + +%clean +rm -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%{_bindir}/* diff --git a/Cargo.toml b/Cargo.toml index a9fedad..0f372e9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -62,3 +62,10 @@ users = "0.9" [target.'cfg(target_os = "windows")'.dependencies] winapi = { version = "0.3", features = ["handleapi", "minwindef", "psapi", "securitybaseapi", "tlhelp32", "winbase", "winnt"] } + +[package.metadata.rpm.cargo] +buildflags = ["--release"] +target = "x86_64-unknown-linux-musl" + +[package.metadata.rpm.targets] +procs = { path = "/usr/bin/procs" } diff --git a/Makefile b/Makefile index a1d6ea2..4c96318 100644 --- a/Makefile +++ b/Makefile @@ -31,3 +31,8 @@ release_win: release_mac: cargo build --release --target=x86_64-apple-darwin zip -j ${BIN_NAME}-v${VERSION}-x86_64-mac.zip target/x86_64-apple-darwin/release/${BIN_NAME} + +release_rpm: + cargo rpm build -v + cp target/x86_64-unknown-linux-musl/release/rpmbuild/RPMS/x86_64/* ./ + ls