%bcond_without doc %bcond_without gtk %ifarch %{ocaml_native_compiler} %global native true %else %global native false %endif Name: unison Version: 2.53.4 Release: 1%{?dist} Summary: Unison File Synchronizer %global forgeurl https://github.com/bcpierce00/%{name}/ %global tag v%{version} %forgemeta License: GPL-3.0-or-later URL: %{forgeurl} Source0: %{forgesource} BuildRequires: ocaml BuildRequires: ocaml-findlib %if %{with gtk} BuildRequires: desktop-file-utils BuildRequires: hicolor-icon-theme BuildRequires: ocaml-lablgtk3-devel BuildRequires: ocaml-cairo-devel %endif %if %{with doc} BuildRequires: hevea BuildRequires: lynx BuildRequires: texlive-latex %endif %description Unison is a file-synchronization tool for POSIX-compliant systems (e.g. *BSD, GNU/Linux, macOS) and Windows. It allows two replicas of a collection of files and directories to be stored on different hosts (or different disks on the same host), modified separately, and then brought up to date by propagating the changes in each replica to the other. %if %{with gtk} %package gtk Summary: Unison File Synchronizer GTK interface Requires: hicolor-icon-theme %description gtk %{summary}. %endif %if %{with doc} %package doc Summary: Unison File Synchronizer documentation BuildArch: noarch %description doc %{summary}. %endif %prep %forgeautosetup %build %make_build \ NATIVE=%{native} \ tui \ fsmonitor \ manpage %if %{with gtk} %make_build \ NATIVE=%{native} \ gui cat > %{name}.desktop < - 2.53.4-1 - Initial package