Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:munix9
zsync2
zsync2.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File zsync2.spec of Package zsync2
# # spec file for package zsync2 # # copyright (c) 2024 munix9@googlemail.com # %define sover 2_0 %define argsv 6.4.6 Name: zsync2 Version: 2.0.0~alpha1.20240530.9337846 Release: 0 Summary: A rewrite of the advanced file download/sync tool zsync License: Artistic-2.0 URL: https://github.com/AppImageCommunity/zsync2 Source0: %{name}-%{version}.tar.gz Source1: https://github.com/Taywee/args/archive/refs/tags/%{argsv}.tar.gz#/args-%{argsv}.tar.gz Patch0: fix-cmake-vars.patch Patch1: fix-SOVERSION.patch Patch2: fix-gcc14.patch BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: help2man BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: cmake(cpr) BuildRequires: pkgconfig(gtest) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libgcrypt) BuildRequires: pkgconfig(libssl) %description The rewrite changes fundamental principles of how zsync works. For example, the new code will be C++11. Furthermore, the entire functionality will be bundled in a single library called libzsync2. The library will serve as a base for the new zsync2 main binary, but can then also be linked by other projects which seek to make use of the algorithms and functionality in it. %package -n lib%{name}-%{sover} Summary: A rewrite of the advanced file download/sync tool zsync %description -n lib%{name}-%{sover} The rewrite changes fundamental principles of how zsync works. For example, the new code will be C++11. Furthermore, the entire functionality will be bundled in a single library called libzsync2. The library will serve as a base for the new zsync2 main binary, but can then also be linked by other projects which seek to make use of the algorithms and functionality in it. %package devel Summary: The development files for %{name} Requires: lib%{name}-%{sover} = %{version} %description devel Additional header files for development with %{name}. %prep %autosetup -p1 # use local 'args' source package sed -e 's|GIT_REPOSITORY.*args|URL file://%{SOURCE1}|' -e '/GIT_TAG.*/d' \ -i lib/CMakeLists.txt %build %define __builder ninja _git_commit="$(echo "%{version}" | awk -F. '{print $NF}')" # || _git_commit="release" export GITHUB_RUN_NUMBER="<%{_project}@obs>" CFLAGS="%{optflags}" %ifarch %{ix86} CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DZLIB_INTERNAL=1" %endif export CFLAGS="$CFLAGS" export CXXFLAGS="$CFLAGS" # required for compiling tests export LD_LIBRARY_PATH=$PWD/build/src:$LD_LIBRARY_PATH %cmake \ -DBUILD_SHARED_LIBS=OFF \ -DCMAKE_SKIP_RPATH=ON \ -DGIT_COMMIT="$_git_commit" \ -DUSE_SYSTEM_ARGS=OFF \ -DUSE_SYSTEM_CPR=ON %cmake_build %install %cmake_install # man pages export PATH=%{buildroot}%{_bindir}:$PATH export LD_LIBRARY_PATH=%{buildroot}%{_libdir}:$LD_LIBRARY_PATH install -d -m 0755 %{buildroot}%{_mandir}/man1 _vs="$(%{name} --version 2>&1|cut -d ' ' -f 1,3-5|tr -d ,)" for f in %{name} zsyncmake2 do help2man -N -n "A rewrite of the advanced file download/sync tool zsync" \ --version-string="$_vs" --no-discard-stderr \ -o %{buildroot}%{_mandir}/man1/${f}.1 ${f} done rm %{buildroot}%{_libdir}/pkgconfig/args.pc %check export LD_LIBRARY_PATH=%{buildroot}%{_libdir}:$LD_LIBRARY_PATH %ctest --parallel 1 --timeout 60 --verbose || : %if 0%{?suse_version} > 1500 %ldconfig_scriptlets -n lib%{name}-%{sover} %else %post -n lib%{name}-%{sover} -p /sbin/ldconfig %postun -n lib%{name}-%{sover} -p /sbin/ldconfig %endif %files %license COPYING %doc README.md %{_bindir}/%{name} %{_bindir}/zsyncmake2 %{_mandir}/man1/%{name}.1%{?ext_man} %{_mandir}/man1/zsyncmake2.1%{?ext_man} %files -n lib%{name}-%{sover} %license COPYING %{_libdir}/lib%{name}.so.* %files devel %{_includedir}/z*.h %{_libdir}/cmake/%{name} %{_libdir}/lib%{name}.so %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor