widelands/widelands.spec
2022-06-15 12:43:38 +03:00

166 lines
4.4 KiB
RPMSpec

Summary: Settlers II clone
Name: widelands
Version: 1.0
Release: 2
Epoch: 1
License: GPLv2+
Group: Games/Strategy
Url: http://www.widelands.org/
Source0: https://launchpad.net/widelands/1.x/%{version}/+download/%{name}-%{version}.tar.gz
Source1: %{name}.desktop
Source100: widelands.rpmlintrc
# gcc flags and python3.Sflo
Patch0: widelands-1.0-rosa.patch
BuildRequires: cmake
BuildRequires: ctags
BuildRequires: doxygen
BuildRequires: optipng
BuildRequires: pngrewrite
BuildRequires: python3
BuildRequires: boost-devel
BuildRequires: gettext-devel
BuildRequires: jpeg-devel
BuildRequires: lua5.1-devel
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(glew)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(icu-i18n)
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libtiff-4)
BuildRequires: pkgconfig(python)
BuildRequires: pkgconfig(SDL2_gfx)
BuildRequires: pkgconfig(SDL2_image)
BuildRequires: pkgconfig(SDL2_mixer)
BuildRequires: pkgconfig(SDL2_net)
BuildRequires: pkgconfig(SDL2_ttf)
BuildRequires: pkgconfig(zlib)
Requires: %{name}-basic-data = %{EVRD}
Requires: %{name}-i18n = %{EVRD}
Requires: %{name}-maps = %{EVRD}
Requires: %{name}-music = %{EVRD}
%description
Widelands is an open source real-time strategy game. It is built upon
libSDL and other open source libraries and is still under heavy development.
If you know Settlers I & II™ Bluebyte), you might already have a rough
idea what Widelands is about.
%files
%doc ChangeLog COPYING CREDITS
%{_gamesbindir}/%{name}
%{_gamesbindir}/wl*
%{_appdatadir}/org.widelands.Widelands.appdata.xml
%{_datadir}/applications/%{name}.desktop
%{_iconsdir}/hicolor/*/apps/*.png
%{_mandir}/man6/%{name}.*
#------------------------------------------------
%package -n %{name}-i18n
Summary: Translations for %{name}
Group: Games/Strategy
Requires: %{name} = %{EVRD}
BuildArch: noarch
%description -n %{name}-i18n
Files to play %{name} in other languages than English.
%files -n %{name}-i18n
%{_gamesdatadir}/%{name}/i18n/
%{_gamesdatadir}/%{name}/locale/
#------------------------------------------------
%package -n %{name}-basic-data
Summary: Basic data set for %{name}
Group: Games/Strategy
Requires: %{name} = %{EVRD}
BuildArch: noarch
%description -n %{name}-basic-data
Basic data set used by %{name}.
Without these files you will not be able to play.
%files -n %{name}-basic-data
%{_gamesdatadir}/%{name}/ai/
%{_gamesdatadir}/%{name}/campaigns/
%{_gamesdatadir}/%{name}/ChangeLog
%{_gamesdatadir}/%{name}/COPYING
%{_gamesdatadir}/%{name}/CREDITS
%{_gamesdatadir}/%{name}/images/
%{_gamesdatadir}/%{name}/scripting/
%{_gamesdatadir}/%{name}/shaders/
%{_gamesdatadir}/%{name}/sound/
%{_gamesdatadir}/%{name}/templates/
%{_gamesdatadir}/%{name}/tribes/
%{_gamesdatadir}/%{name}/txts/
%{_gamesdatadir}/%{name}/VERSION
%{_gamesdatadir}/%{name}/world/
#------------------------------------------------
%package -n %{name}-maps
Summary: Maps for %{name}
Group: Games/Strategy
Requires: %{name} = %{EVRD}
BuildArch: noarch
%description -n %{name}-maps
Maps for %{name}.
%files -n %{name}-maps
%{_gamesdatadir}/%{name}/maps
#------------------------------------------------
%package -n %{name}-music
Summary: Music for %{name}
Group: Games/Strategy
Requires: %{name} = %{EVRD}
BuildArch: noarch
%description -n %{name}-music
Music files for %{name}.
These are not needed, but may improve fun while playing.
%files -n %{name}-music
%{_gamesdatadir}/%{name}/music
#------------------------------------------------
%prep
%autosetup -p1
%build
%cmake \
-DBoost_USE_STATIC_LIBS=OFF \
-DCMAKE_BUILD_TYPE="Release" \
-DWL_INSTALL_BINDIR=%{_gamesbindir} \
-DWL_INSTALL_DATADIR=%{_gamesdatadir}/%{name} \
-DWL_INSTALL_LOCALEDIR=%{_datadir}/%{name}/locale \
-DWL_INSTALL_PREFIX=%{_prefix}
%make
%install
%makeinstall_std -C build
#icons
for size in 16 32 48 64 128; do
install -D -m644 data/images/logos/wl-ico-${size}.png \
%{buildroot}%{_iconsdir}/hicolor/${size}x${size}/apps/%{name}.png
done
# appdata
install -D -m0644 xdg/org.widelands.Widelands.appdata.xml \
%{buildroot}%{_appdatadir}/org.widelands.Widelands.appdata.xml
# man
install -D -m0644 xdg/widelands.6 \
%{buildroot}%{_mandir}/man6/widelands.6
# menu entry
install -m644 %{SOURCE1} -D %{buildroot}/%{_datadir}/applications/%{name}.desktop
# use our desktop
rm -fr %{buildroot}/%{_datadir}/applications/org.widelands.Widelands.desktop
# docs
mv %{buildroot}/usr/{VERSION,ChangeLog,CREDITS,COPYING} %{buildroot}%{_gamesdatadir}/%{name}