File freecol.spec of Package freecol

#
# spec file for package freecol
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           freecol
Version:        1.2.0
Release:        2
Summary:        A colonization clone
License:        GPL-2.0-only
Group:          Amusements/Games/Strategy/Turn Based
URL:            https://www.freecol.org/
Source:         https://downloads.sourceforge.net/project/%{name}/%{name}/%{name}-%{version}/%{name}-%{version}-src.zip
Source1:        %{name}.desktop
BuildRequires:  ant
BuildRequires:  ant-nodeps
BuildRequires:  fdupes
BuildRequires:  java-devel >= 11
BuildRequires:  unzip
BuildRequires:  update-desktop-files
Requires:       jre >= 11
BuildArch:      noarch

%description
FreeCol is a turn-based strategy game aimed to be an Open Source clone of the
old game Colonization.

The objective of the game is to create an independent nation. You start with
only a few colonists defying the stormy seas in their search for new land.
Will you guide them on the colonization of a New World?

%prep
%setup -q -n %{name}

%build
export LANG=C.UTF-8
ant

%install
install -d -m 755 %{buildroot}%{_javadir}/%{name}/lib
install -d -m 755 %{buildroot}%{_datadir}/%{name}
install -d -m 755 %{buildroot}%{_datadir}/pixmaps
install -d -m 755 %{buildroot}%{_datadir}/metainfo
install -m 644 FreeCol.jar %{buildroot}/%{_javadir}/%{name}/
install -m 644 jars/* %{buildroot}%{_javadir}/%{name}/lib
install -m 644 packaging/common/%{name}.xpm %{buildroot}%{_datadir}/pixmaps/%{name}.xpm
install -m 644 packaging/common/%{name}.appdata.xml %{buildroot}%{_datadir}/metainfo/%{name}.appdata.xml
cp -R data/*  %{buildroot}%{_datadir}/%{name}/
install -d -m 755 %{buildroot}%{_datadir}/applications
install -D -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/applications/%{name}.desktop

cat > %{name}.sh <<EOF
#! /bin/bash
java -Xmx2G -classpath %{_javadir}/%{name}/FreeCol.jar:%{_javadir}/%{name}/lib/jorbis-0.0.17.jar:%{_javadir}/%{name}/lib/commons-cli-1.4.jar:%{_javadir}/%{name}/lib/cortado-0.6.0.jar:%{_javadir}/%{name}/lib/miglayout-core-5.3.jar:%{_javadir}/%{name}/lib/miglayout-swing-5.3.jar:%{_javadir}/%{name}/lib/jogg-0.0.17.jar net.sf.freecol.FreeCol --freecol-data %{_datadir}/%{name} "\$@"

EOF

install -D -m 0755 %{name}.sh %{buildroot}%{_bindir}/%{name}
%fdupes %{buildroot}%{_datadir}
%suse_update_desktop_file %{name}

%files
%license COPYING
%doc README
%{_bindir}/%{name}
%{_datadir}/%{name}/
%{_javadir}/%{name}/
%{_datadir}/applications/%{name}.desktop
%{_datadir}/pixmaps/%{name}.xpm
%dir %{_datadir}/metainfo/
%{_datadir}/metainfo/%{name}.appdata.xml

%changelog
openSUSE Build Service is sponsored by