]> git.pld-linux.org Git - packages/gg.git/blobdiff - gg.spec
- new doc
[packages/gg.git] / gg.spec
diff --git a/gg.spec b/gg.spec
index 8eda4e071e6c975ecd4cffd3f1d59929622bfd56..04a0419ccb189b9a02f974724e84d9867486387e 100644 (file)
--- a/gg.spec
+++ b/gg.spec
@@ -1,27 +1,48 @@
+#
+# Conditional build:
+#
+# _without_gnome
+# _without_gnome_applet
+# _without_kde
+# _without_wm_applet
+# _without_sound
+
+
+# This looks like overkill but some day we might have *everything* bconded :)
+%{!?_without_gnome:            %define _need_gnome     1}
+%{!?_without_gnome:         %define _need_esd   1}
+%{!?_without_gnome_applet:     %define _need_gnome     1}
+%{!?_without_gnome_applet:  %define _nees_esd   1}
+%{!?_without_kde:                      %define _need_arts      1}
+%{!?_without_wm_applet:                %define _need_esd       1}
+
+
 Summary:       GNU Gadu - free talking
 Summary(pl):   GNU Gadu - wolne gadanie
 Name:          gg
-Version:       0.2.0
+Version:       0.2.4
 Release:       2
 Epoch:         4
 License:       GPL
 Group:         Applications/Communications
-Group(de):     Applikationen/Kommunikation
-Group(pl):     Aplikacje/Komunikacja
-Source0:       http://netkrab.slackware.pl/gg/%{name}-%{version}.tar.gz
-Source1:       %{name}.desktop
-Source2:       %{name}.png
-Patch0:                %{name}-writecontact.patch
+Source0:       ftp://ftp.slackware.pl/gg/%{name}-%{version}.tar.gz
+Source1:       %{name}.png
+Patch0:                %{name}-lupa.patch
 Icon:          gg.xpm
 URL:           http://netkrab.slackware.pl/gg/
-BuildRequires: gtk+-devel > 1.2.8
-BuildRequires: esound-devel > 0.2.7
-BuildRequires: gnome-libs-devel 
-BuildRequires: gnome-core-devel 
+BuildRequires:                                 gtk+-devel > 1.2.8
+%{?_need_gnome:BuildRequires:  gnome-libs-devel}
+%{?_need_gnome:BuildRequires:  gnome-core-devel}
+%if %{!?_without_sound:1}%{?_without_sound:0}
+%{?_need_arts:BuildRequires:   arts-devel}
+%{?_need_esd:BuildRequires:            esound-devel > 0.2.7}
+%endif
+
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _prefix         /usr/X11R6
 %define                _mandir         %{_prefix}/man
+%define                _sysconfdir     /etc/X11/GNOME
 
 %description
 Gadu-Gadu client released on GNU/GPL.
@@ -29,33 +50,130 @@ Gadu-Gadu client released on GNU/GPL.
 %description -l pl
 Klient Gadu-Gadu na licencji GNU/GPL.
 
+%package common
+Summary:       GNU Gadu - free talking - common files
+Summary(pl):   GNU Gadu - wolne gadanie - wspólne pliki
+Group:         Applications/Communications
+Obsoletes:     gg =< 0.2.0
+
+%description common
+Gadu-Gadu client released on GNU/GPL.
+
+%description common -l pl
+Klient Gadu-Gadu na licencji GNU/GPL.
+
+%package X11
+Summary:       GNU Gadu - free talking
+Summary(pl):   GNU Gadu - wolne gadanie
+Group:         Applications/Communications
+PreReq:                %{name}-common = %{epoch}:%{version}
+Provides:      gg = %{epoch}:%{version}-%{release}
+
+%description X11
+Gadu-Gadu client released on GNU/GPL.
+
+%description X11 -l pl
+Klient Gadu-Gadu na licencji GNU/GPL. Wersja dla X11.
+
 %package gnome
-Summary:       GNU Gadu - free talking - gnome dockable
-Summary(pl):   GNU Gadu - wolne gadanie - wersja dokowalna dla gnome
+Summary:       GNU Gadu - free talking - GNOME version
+Summary(pl):   GNU Gadu - wolne gadanie - wersja dla GNOME
 Group:         Applications/Communications
-Group(de):     Applikationen/Kommunikation
-Group(pl):     Aplikacje/Komunikacja
+PreReq:                %{name}-common = %{epoch}:%{version}
+Provides:      gg = %{epoch}:%{version}-%{release}
 
 %description gnome
-Gadu-Gadu client released on GNU/GPL. Gnome dockable version
+Gadu-Gadu client released on GNU/GPL. GNOME version
+
+%description gnome -l pl
+Klient Gadu-Gadu na licencji GNU/GPL. Wersja dla GNOME.
 
-%description -l pl gnome
+%package gnome-applet
+Summary:       GNU Gadu - free talking - GNOME dockable version
+Summary(pl):   GNU Gadu - wolne gadanie - wersja dokowalna dla GNOME
+Group:         Applications/Communications
+PreReq:                %{name}-common = %{epoch}:%{version}
+Provides:      gg = %{epoch}:%{version}-%{release}
+
+%description gnome-applet
+Gadu-Gadu client released on GNU/GPL. GNOME dockable version
+
+%description gnome-applet -l pl
 Klient Gadu-Gadu na licencji GNU/GPL. Wersja dokowalna dla gnome.
 
+%package wm-applet
+Summary:       GNU Gadu - free talking - WindowMaker dockable version.
+Summary(pl):   GNU Gadu - wolne gadanie - wersja dokowalna dla WindowMaker'a.
+Group:         Applications/Communications
+PreReq:                %{name}-common = %{epoch}:%{version}
+Provides:      gg = %{epoch}:%{version}-%{release}
+
+%description wm-applet
+Gadu-Gadu client released on GNU/GPL. WindowMaker dockable version
+
+%description wm-applet -l pl
+Klient Gadu-Gadu na licencji GNU/GPL. Wersja dokowalna dla
+WindowMaker'a.
+
+%package kde
+Summary:       GNU Gadu - free talking - KDE version.
+Summary(pl):   GNU Gadu - wolne gadanie - wersja dla KDE.
+Group:         Applications/Communications
+PreReq:                %{name}-common = %{epoch}:%{version}
+Provides:      gg = %{epoch}:%{version}-%{release}
+
+%description kde
+Gadu-Gadu client released on GNU/GPL. KDE version
+
+%description kde -l pl
+Klient Gadu-Gadu na licencji GNU/GPL. Wersja dla KDE.
+
 %prep
-%setup  -q
+%setup -q -n %{name}-%{version}
 %patch0 -p1
 
 %build
 LDFLAGS=" -L%{_libdir} %{rpmldflags}"
+
+%if %{!?_without_gnome_applet:1}%{?_without_gnome_applet:0}
 %configure \
+       %{?_without_sound:--disable-esd} \
        --enable-gnome \
        --enable-panel
 %{__make}
-mv src/gg src/gnu_gadu_applet
+mv -f src/gg src/gg_applet
+%{__make} clean
+%endif
+
+%if %{!?_without_gnome:1}%{?_without_gnome:0}
+%configure \
+       %{?_without_sound:--disable-esd} \
+       --enable-gnome
+%{__make}
+mv -f src/gg src/gg_gnome
 %{__make} clean
+%endif
 
-%configure
+%if %{!?_without_wm_applet:1}%{?_without_wm_applet:0}
+%configure \
+       %{?_without_sound:--disable-esd} \
+       --enable-dockapp
+%{__make}
+mv -f src/gg src/gg_wm
+%{__make} clean
+%endif
+
+%if %{!?_without_kde:1}%{?_without_kde:0}
+%configure \
+       --enable-docklet \
+       %{!?_without_sound:--enable-arts} \
+       --disable-esd
+%{__make}
+mv -f src/gg src/gg_kde
+%{__make} clean
+%endif
+
+%configure %{?_without_sound:--disable-esd}
 %{__make}
 
 %install
@@ -63,30 +181,85 @@ rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_applnkdir}/Network/Communications,%{_pixmapsdir},%{_datadir}/applets/Network/}
 
 %{__make} install DESTDIR=$RPM_BUILD_ROOT
-install src/gnu_gadu_applet $RPM_BUILD_ROOT%{_bindir}
+%{!?_without_gnome_applet:install src/gg_applet $RPM_BUILD_ROOT%{_bindir}}
+%{!?_without_gnome:install src/gg_gnome $RPM_BUILD_ROOT%{_bindir}}
+%{!?_without_wm_applet:install src/gg_wm $RPM_BUILD_ROOT%{_bindir}}
+%{!?_without_kde:install src/gg_kde $RPM_BUILD_ROOT%{_bindir}}
 
-install %{SOURCE1} $RPM_BUILD_ROOT%{_applnkdir}/Network/Communications/gg.desktop
-cat %{SOURCE1} | sed -e 's/Exec=gg/Exec=gnu_gadu_applet/' > $RPM_BUILD_ROOT%{_datadir}/applets/Network/gnu_gadu_applet.desktop
+sed -e 's/xpm$/png/' src/GnuGadu.desktop \
+       > $RPM_BUILD_ROOT%{_applnkdir}/Network/Communications/GnuGadu.desktop
+sed -e 's/xpm$/png/' -e 's/Exec=gg/Exec=gg_applet\ --activate-goad-server=gg/' \
+       src/GnuGadu.desktop > $RPM_BUILD_ROOT%{_datadir}/applets/Network/GnuGadu.desktop
 
-install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}
+install %{SOURCE1} $RPM_BUILD_ROOT%{_pixmapsdir}
 
-gzip -9nf README ChangeLog TODO
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/CORBA/servers/
+install src/GnuGadu.gnorba $RPM_BUILD_ROOT%{_sysconfdir}/CORBA/servers/
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%files
+%post gnome
+if [ ! -e /usr/X11R6/bin/gg ]; then
+       ln -sf /usr/X11R6/bin/gg_gnome /usr/X11R6/bin/gg
+fi
+
+%post gnome-applet
+if [ ! -e /usr/X11R6/bin/gg ]; then
+       ln -sf /usr/X11R6/bin/gg_applet /usr/X11R6/bin/gg
+fi
+
+%post wm-applet
+if [ ! -e /usr/X11R6/bin/gg ]; then
+       ln -sf /usr/X11R6/bin/gg_wm /usr/X11R6/bin/gg
+fi
+
+%post kde
+if [ ! -e /usr/X11R6/bin/gg ]; then
+       ln -sf /usr/X11R6/bin/gg_kde /usr/X11R6/bin/gg
+fi
+
+%postun
+if [ -L /usr/X11R6/bin/gg ]; then
+       rm -f /usr/X11R6/bin/gg
+fi
+
+%files common
 %defattr(644,root,root,755)
-%doc *.gz
-%attr(755,root,root) %{_bindir}/gg
+%doc README ChangeLog TODO
 %{_datadir}/gg
-%{_applnkdir}/Network/Communications/gg.desktop
 %{_pixmapsdir}/*
 
+%files X11
+%defattr(644,root,root,755)
+%{_applnkdir}/Network/Communications/GnuGadu.desktop
+%attr(755,root,root) %{_bindir}/gg
+
+%if %{!?_without_gnome:1}%{?_without_gnome:0}
 %files gnome
 %defattr(644,root,root,755)
-%doc *.gz
-%attr(755,root,root) %{_bindir}/gnu_gadu_applet
-%{_datadir}/gg
-%{_datadir}/applets/Network/gnu_gadu_applet.desktop
-%{_pixmapsdir}/*
+%attr(755,root,root) %{_bindir}/gg_gnome
+%{_applnkdir}/Network/Communications/GnuGadu.desktop
+%endif
+
+%if %{!?_without_gnome_applet:1}%{?_without_gnome_applet:0}
+%files gnome-applet
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/gg_applet
+%{_datadir}/applets/Network/GnuGadu.desktop
+%{_sysconfdir}/CORBA/servers/GnuGadu.gnorba
+%endif
+
+%if %{!?_without_wm_applet:1}%{?_without_wm_applet:0}
+%files wm-applet
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/gg_wm
+%{_datadir}/applets/Network/GnuGadu.desktop
+%endif
+
+%if %{!?_without_kde:1}%{?_without_kde:0}
+%files kde
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/gg_kde
+%{_datadir}/applets/Network/GnuGadu.desktop
+%endif
This page took 0.10822 seconds and 4 git commands to generate.