]> git.pld-linux.org Git - packages/freeciv.git/blobdiff - freeciv.spec
added 'magickwand' bcond
[packages/freeciv.git] / freeciv.spec
index 9b14f2f8d3b07a6ae1905565cd7f66406332312e..2824e1271640188d1de7f6357789fea4a2d57d47 100644 (file)
@@ -1,35 +1,57 @@
-# TODO
-# - dozen of unpackaged files
+#
+# TODO: - try to create bconds for supported clients
+#      - separate desktop files for all clients
+#      - gtk3 client is broken:
+#              GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported
+#      - work on authentication and Freeciv database support (fcdb)
+#      - patch all packaged destkop files
+#
+# Conditional build:
+%bcond_without  ggz_client     # build without ggz client
+%bcond_without  ggz_server     # build without ggz server
+%bcond_without  magickwand     # build without MagickWand map image toolkit support
+#
 Summary:       FREE CIVilization clone
-Summary(es.UTF-8):   Clon del juego Civilization
-Summary(pl.UTF-8):   Niekomercyjny klon CIVilization
-Summary(pt_BR.UTF-8):   Clone do jogo Civilization
+Summary(es.UTF-8):     Clon del juego Civilization
+Summary(pl.UTF-8):     Niekomercyjny klon CIVilization
+Summary(pt_BR.UTF-8):  Clone do jogo Civilization
 Name:          freeciv
-Version:       2.1.0
-Release:       0.1
+Version:       2.4.4
+Release:       0.2
 License:       GPL v2+
 Group:         X11/Applications/Games/Strategy
-Source0:       http://dl.sourceforge.net/freeciv/%{name}-%{version}.tar.bz2
-# Source0-md5: f640aa48abca0a235220d6df22b9bc82
-Source1:       %{name}-client.desktop
-Source2:       %{name}-server.desktop
-Source3:       %{name}.png
-Source4:       ftp://ftp.freeciv.org/pub/freeciv/contrib/audio/soundsets/stdsounds3.tar.gz
-# Source4-md5: 77215914712f2f351092918f5e41e39e
-Source5:       ftp://ftp.freeciv.org/pub/freeciv/contrib/tilesets/freeland/freeland-normal-2.0.0.tar.gz
-# Source5-md5: c9f061fca82aa50a19fbbc89c06ff81d
-URL:           http://www.freeciv.org/
+Source0:       http://downloads.sourceforge.net/freeciv/%{name}-%{version}.tar.bz2
+# Source0-md5: 038c53184497fcf31bcd268418dbe4f6
+# NOTE: current version of freeland tiles does not work with newest freeciv version
+#Source1:      http://download.gna.org/freeciv/contrib/tilesets/freeland/freeland-normal-2.0.0.tar.gz
+Patch0:                %{name}-link.patch
+Patch1:                %{name}-desktop.patch
+Patch2:                %{name}-ggz.patch
+URL:           http://freeciv.wikia.com/
+%{?with_magickwand:BuildRequires:      ImageMagick-devel}
+BuildRequires: SDL_image-devel
 BuildRequires: SDL_mixer-devel
-BuildRequires: automake
-BuildRequires: esound-devel
+BuildRequires: autoconf >= 2.52
+BuildRequires: automake >= 1:1.9
+BuildRequires: curl-devel
+BuildRequires: gettext-tools
+%{?with_ggz_client:BuildRequires:      ggz-gtk-client-devel}
 BuildRequires: gtk+2-devel
+BuildRequires: gtk+3-devel
+BuildRequires: libggz-devel
+BuildRequires: libpng-devel
+BuildRequires: libtool
+BuildRequires: pkgconfig
 BuildRequires: readline-devel
+BuildRequires: xorg-lib-libXaw-devel
 BuildRequires: zlib-devel
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                specflags       -O1
+
 %description
 Free clone of Sid Meier's Civilization. Free Civilization clone for
-unix and X. This is multiplayer strategic game and you can also play
+Unix and X. This is multiplayer strategic game and you can also play
 against computer-AI players.
 
 %description -l es.UTF-8
@@ -47,11 +69,11 @@ Window.
 
 %package client
 Summary:       Freeciv game client
-Summary(pl.UTF-8):   Klient gry Freeciv
+Summary(pl.UTF-8):     Klient gry Freeciv
 Group:         X11/Applications/Games/Strategy
 Requires:      %{name} = %{version}-%{release}
 Requires:      SDL_mixer
-Requires:      esound
+Suggests:      %{name}-server = %{version}-%{release}
 
 %description client
 This package contains Freeciv game client.
@@ -59,10 +81,9 @@ This package contains Freeciv game client.
 %description client -l pl.UTF-8
 Ten pakiet zawiera klienta gry Freeciv.
 
-
 %package server
 Summary:       Freeciv game server
-Summary(pl.UTF-8):   Serwer gry Freeciv
+Summary(pl.UTF-8):     Serwer gry Freeciv
 Group:         X11/Applications/Games/Strategy
 Requires:      %{name} = %{version}-%{release}
 
@@ -73,25 +94,57 @@ This package contans Freeciv game server.
 Ten pakiet zawiera server gry Freeciv.
 
 %prep
-%setup -q -a 4 -a 5
+%setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
 
 %build
-cp -f %{_datadir}/automake/config.sub bootstrap
-%configure2_13 
+%{__libtoolize}
+%{__aclocal} -I m4
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+%configure \
+       --with-ggzd-confdir=%{_sysconfdir}/ggzd \
+       --disable-silent-rules \
+       --enable-client=gtk2,gtk3,sdl,xaw,stub \
+       --enable-mapimg=%{?with_magickwand:magickwand}%{!?with_magickwand:no} \
+       %{!?with_ggz_client:--without-ggz-client} \
+       %{!?with_ggz_server:--without-ggz-server}
+
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_libdir}/X11/app-defaults \
-       $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
+install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-install %{SOURCE1} %{SOURCE2} $RPM_BUILD_ROOT%{_desktopdir}
-install %{SOURCE3} $RPM_BUILD_ROOT%{_pixmapsdir}
-cp -f freeland.tilespec $RPM_BUILD_ROOT%{_datadir}/%{name}
-cp -rf freeland $RPM_BUILD_ROOT%{_datadir}/%{name}
+cp -a client/%{name}.desktop $RPM_BUILD_ROOT%{_desktopdir}/%{name}-client.desktop
+cp -a server/%{name}-server.desktop $RPM_BUILD_ROOT%{_desktopdir}
+%{__rm} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
+
+cp -a data/icons/32x32/*.png $RPM_BUILD_ROOT%{_pixmapsdir}
+cp -a data/stdsounds{,.soundspec} $RPM_BUILD_ROOT%{_datadir}/%{name}
+#cp -a freeland.tilespec $RPM_BUILD_ROOT%{_datadir}/%{name}
+#cp -a freeland $RPM_BUILD_ROOT%{_datadir}/%{name}
+
+%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/no
+%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/ggz.modules
+
+cp -a data/gtk_menus.xml $RPM_BUILD_ROOT%{_datadir}/%{name}
+
+%if %{with ggz_server}
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/ggzd/{games,rooms}
+cp -a data/civserver.dsc $RPM_BUILD_ROOT%{_sysconfdir}/ggzd/games/civserver.dsc
+cp -a data/civserver.room $RPM_BUILD_ROOT%{_sysconfdir}/ggzd/rooms/civserver.room
+%endif
+
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libfreeciv{,-srv}.{a,la}
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man6/freeciv-qt*
 
 %find_lang %{name}
 
@@ -100,36 +153,83 @@ rm -rf $RPM_BUILD_ROOT
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc AUTHORS README ChangeLog NEWS
-%{_pixmapsdir}/*
+%doc AUTHORS doc/BUGS ChangeLog doc/FAQ doc/HOWTOPLAY
+%doc NEWS NEWS-2.4
+%doc doc/README.SDLClient doc/README.cma doc/README.effects doc/README.fcdb
+%doc doc/README.graphics doc/README.sound
+%doc doc/README.ruleset_experimental doc/README.ruleset_multiplayer doc/README.rulesets
+%doc doc/TODO
 %dir %{_datadir}/%{name}
 %{_datadir}/%{name}/helpdata.txt
 
 %files server
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/civserver
+%attr(755,root,root) %{_bindir}/freeciv-server
 %{_desktopdir}/%{name}-server.desktop
+%{_datadir}/appdata/freeciv-server.appdata.xml
 %{_datadir}/%{name}/civ1
 %{_datadir}/%{name}/civ2
 %{_datadir}/%{name}/default
+%{_datadir}/%{name}/experimental
+%{_datadir}/%{name}/multiplayer
 %{_datadir}/%{name}/nation
-%{_datadir}/%{name}/scenario
+%{_datadir}/%{name}/scenarios
 %{_datadir}/%{name}/*.serv
-%{_mandir}/man6/civserver.6*
+%{_mandir}/man6/freeciv-server.6*
+%{_iconsdir}/hicolor/*/apps/freeciv-server.png
+%{_pixmapsdir}/freeciv-server.png
+
+%if %{with ggz_server}
+%dir %{_sysconfdir}/ggzd
+%dir %{_sysconfdir}/ggzd/games
+%dir %{_sysconfdir}/ggzd/rooms
+%{_sysconfdir}/ggzd/games/civserver.dsc
+%{_sysconfdir}/ggzd/rooms/civserver.room
+%endif
 
 %files client
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/civclient
-%attr(755,root,root) %{_bindir}/civmanual
+%attr(755,root,root) %{_bindir}/freeciv-gtk2
+%attr(755,root,root) %{_bindir}/freeciv-gtk3
+%attr(755,root,root) %{_bindir}/freeciv-sdl
+%attr(755,root,root) %{_bindir}/freeciv-stub
+%attr(755,root,root) %{_bindir}/freeciv-xaw
+%attr(755,root,root) %{_bindir}/freeciv-manual
+%attr(755,root,root) %{_bindir}/freeciv-modpack
 %{_desktopdir}/%{name}-client.desktop
-%{_datadir}/%{name}/amplio
+%{_desktopdir}/%{name}-gtk3.desktop
+%{_desktopdir}/%{name}-modpack.desktop
+%{_desktopdir}/%{name}-sdl.desktop
+%{_datadir}/appdata/freeciv-gtk2.appdata.xml
+%{_datadir}/appdata/freeciv-gtk3.appdata.xml
+%{_datadir}/appdata/freeciv-modpack.appdata.xml
+%{_datadir}/appdata/freeciv-sdl.appdata.xml
+%{_datadir}/%{name}/Freeciv
+%{_datadir}/%{name}/*.*spec
+%{_datadir}/%{name}/amplio2
+%{_datadir}/%{name}/buildings
+%{_datadir}/%{name}/cimpletoon
+%{_datadir}/%{name}/flags
 %{_datadir}/%{name}/freeciv.rc*
-%{_datadir}/%{name}/freeland
+#%%{_datadir}/%{name}/freeland
+%{_datadir}/%{name}/gtk_menus.xml
+%{_datadir}/%{name}/hex2t
 %{_datadir}/%{name}/isophex
 %{_datadir}/%{name}/isotrident
 %{_datadir}/%{name}/misc
 %{_datadir}/%{name}/stdsounds
+%{_datadir}/%{name}/themes
 %{_datadir}/%{name}/trident
-%{_datadir}/%{name}/flags
-%{_datadir}/%{name}/*.*spec
-%{_mandir}/man6/civclient.6*
+%{_datadir}/%{name}/wonders
+%{_mandir}/man6/freeciv-client.6*
+%{_mandir}/man6/freeciv-gtk2.6*
+%{_mandir}/man6/freeciv-gtk3.6*
+%{_mandir}/man6/freeciv-manual.6*
+%{_mandir}/man6/freeciv-modpack.6*
+%{_mandir}/man6/freeciv-sdl.6*
+%{_mandir}/man6/freeciv-xaw.6*
+%{_iconsdir}/hicolor/*/apps/freeciv-client.png
+%{_iconsdir}/hicolor/*/apps/freeciv-modpack.png
+%{_pixmapsdir}/freeciv-client.png
+%{_pixmapsdir}/freeciv-modpack.png
+
This page took 0.155426 seconds and 4 git commands to generate.