lexiserver/lexiserver.spec

94 lines
2.0 KiB
RPMSpec
Raw Permalink Normal View History

2024-03-29 01:54:08 +00:00
%global commit 8acdf9773c022b84b02bfee9f70c486b5572411d
%global gittag GIT-TAG
%global shortcommit %(c=%{commit}; echo ${c:0:7})
2024-03-29 00:54:32 +00:00
Name: lexiserver
Version: 1.1.0
Release: 1%{dist}
Summary: A webserver written in C that tries to keep it simple
License: GPL-3.0-only
URL: https://github.com/alexiarstein/simple-webserver
2024-03-29 01:54:08 +00:00
Source: https://github.com/alexiarstein/simple-webserver/archive/%{commit}/%{name}-%{shortcommit}.tar.gz
Source: lexiserver.service
Source: lexiserver.sysusers
2024-03-29 00:54:32 +00:00
BuildRequires: annobin-plugin-gcc
BuildRequires: cmake
BuildRequires: gcc
BuildRequires: file
BuildRequires: openssl-devel
2024-03-29 01:54:08 +00:00
BuildRequires: systemd-rpm-macros
2024-03-29 00:54:32 +00:00
%description
LexiServer is a webserver written in C that tries to keep it simple. It supports TLS and executing CGI scripts.
2024-03-29 01:54:08 +00:00
%pre
%sysusers_create_compat %{SOURCE2}
%post
%systemd_post lexiserver.service
%preun
%systemd_preun lexiserver.service
%postun
%systemd_postun lexiserver.service
2024-03-29 00:54:32 +00:00
%package devel
Summary: Development files for lexiserver
2024-03-29 01:54:08 +00:00
2024-03-29 00:54:32 +00:00
%description devel
The development files for compiling against lexiserver
%prep
2024-03-29 01:54:08 +00:00
%autosetup -n simple-webserver-%{commit}
#remove precompiled binaries
rm lexiserver-arm64{,-ssl}
2024-03-29 00:54:32 +00:00
%build
%cmake
%cmake_build
%install
%cmake_install
2024-03-29 01:54:08 +00:00
install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/lexiserver.service
install -p -D -m 0644 %{SOURCE2} %{buildroot}%{_sysusersdir}/lexiserver.conf
2024-03-29 00:54:32 +00:00
pushd redhat-linux-build
install -p -D -m 0755 lexiserver %{buildroot}%{_bindir}/lexiserver
popd
for f in 404.html lexiserver.conf; do
install -p -D -m 0644 $f %{buildroot}/opt/lexiserver/$f
done
pushd src
for f in *.c; do
install -p -D -m 0644 $f %{buildroot}/%{_includedir}/$f
done
popd
%check
%ctest
%files
%license LICENSE
%doc README.md RASPBERRY.md
%dir /opt/lexiserver
/opt/lexiserver/404.html
%config(noreplace) /opt/lexiserver/lexiserver.conf
%{_bindir}/lexiserver
2024-03-29 01:54:08 +00:00
%{_sysusersdir}/lexiserver.conf
%{_unitdir}/lexiserver.service
2024-03-29 00:54:32 +00:00
%files devel
%{_includedir}/lexiserver*.c
%changelog
* Thu Mar 28 2024 Neil Hanlon <neil@shrug.pw> - 1.1.0-1
- initial package