]> git.pld-linux.org Git - packages/xscreensaver.git/blame - xscreensaver.spec
- files cleanup, restore ca locale
[packages/xscreensaver.git] / xscreensaver.spec
CommitLineData
45c7a25e 1Summary: X screen savers
1536a28f
ER
2Summary(de.UTF-8): X-Bildschirmschoner
3Summary(es.UTF-8): Protectores de pantalla X
4Summary(fr.UTF-8): Economiseurs d'écran X
5Summary(pl.UTF-8): Wygaszacze ekranu pod X Window
6Summary(pt_BR.UTF-8): Salvadores de tela X
7Summary(ru.UTF-8): Набор программ хранения экрана для X Window
8Summary(uk.UTF-8): Набір програм збереження екрану для X Window
9Summary(zh_CN.UTF-8): X 窗口系统保护器
cdacdc61 10%define main_ver 6.05
45c7a25e 11Name: xscreensaver
cdacdc61 12Version: 6.05.1
788cfc92 13Release: 1
018ae6eb 14Epoch: 1
b9017da5 15License: BSD
bd2fce08 16Group: X11/Applications
5233c314 17Source0: https://www.jwz.org/xscreensaver/%{name}-%{version}.tar.gz
cdacdc61 18# Source0-md5: 79d6618adeabda8419f8390b3d85c51b
15faf92d 19Source1: %{name}-autostart.desktop
88c26881 20Source2: %{name}-lock.desktop
21Source3: %{name}.pamd
8da0b4bf 22Patch0: %{name}-desktop.patch
cdacdc61
KM
23# from fedora
24Patch1: %{name}-6.05-0001-demo-Gtk.c-main-enable-localization-again.patch
25# from fedora
26Patch2: %{name}-6.05-0002-demo-Gtk.c-populate_prefs_page-use-correct-pointer-f.patch
5233c314 27URL: https://www.jwz.org/xscreensaver/
6fa83784 28BuildRequires: EGL-devel
6fa83784 29BuildRequires: OpenGL-GLU-devel
cdacdc61 30BuildRequires: OpenGL-devel >= 1.3
5233c314 31BuildRequires: autoconf >= 2.69
2080cbce 32BuildRequires: automake
7c8bb864 33BuildRequires: bc
5233c314 34BuildRequires: gdk-pixbuf2-xlib-devel >= 2.0.0
a0ebace9 35BuildRequires: gettext-tools
dfaf8d02 36BuildRequires: gle-devel
5233c314
JB
37BuildRequires: glib2-devel >= 2.0.0
38BuildRequires: gtk+2-devel >= 1:2.22.0
9cc54719 39BuildRequires: intltool
8da0b4bf
KM
40BuildRequires: libjpeg-devel
41BuildRequires: libtool
51a0f6a0 42BuildRequires: libxml2-devel >= 2.4.22
2080cbce 43BuildRequires: pam-devel >= 0.77.3
fa43b208 44BuildRequires: perl-base
45894efb 45BuildRequires: pkgconfig
5233c314
JB
46BuildRequires: rpmbuild(macros) >= 1.745
47BuildRequires: systemd-devel >= 1:221
8da0b4bf
KM
48BuildRequires: xorg-lib-libICE-devel
49BuildRequires: xorg-lib-libX11-devel
50BuildRequires: xorg-lib-libXext-devel
5233c314 51BuildRequires: xorg-lib-libXft-devel >= 2.1.0
8da0b4bf
KM
52BuildRequires: xorg-lib-libXi-devel
53BuildRequires: xorg-lib-libXinerama-devel
54BuildRequires: xorg-lib-libXrandr-devel
55BuildRequires: xorg-lib-libXt-devel
56BuildRequires: xorg-lib-libXxf86vm-devel
21a8a290 57Requires: %{name}-savers = %{epoch}:%{version}-%{release}
5233c314 58Requires: gtk+2 >= 1:2.22.0
f5a846a8 59Requires: pam >= 0.77.3
21a8a290 60Requires: xorg-lib-libXt >= 1.0.0
22b5527b
ER
61# for screensaver-getimage-file
62Suggests: perl-perldoc
63# for xscreensaver-text
64Suggests: xorg-app-appres
5233c314
JB
65Obsoletes: xscreensaver-gnome < 1:4.06
66Obsoletes: xscreensaver-gnome1 < 1:4.21
67Obsoletes: xscreensaver-gnome2 < 1:5.06
023a3d9b 68BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
ca58e9cf 69
9d828928 70%define _sysconfdir /etc/X11
8468378d 71%define _appdefsdir /usr/share/X11/app-defaults
c88054c0 72
ca58e9cf 73%description
b9017da5 74Screen savers of every sort are included in this package, guaranteeing
5ae2cad7 75hours of enjoyment and monitor saving. And if you are bent on really
76saving your monitor, there's that old classic, the plain black screen.
ca58e9cf 77
dfa7a41b
JR
78%description -l de.UTF-8
79Dieses Paket enthält eine Sammlung verschiedenster Bildschirmschoner.
80Stundenlanger Spaß ist garantiert. Und wenn Sie Ihren Bildschirm
81wirklich schonen möchten, gibt's den alten Klassiker, den einfachen
5ae2cad7 82schwarzen Bildschirm.
3dd40087 83
dfa7a41b
JR
84%description -l es.UTF-8
85En este paquete están incluidos protectores de pantalla, de todos los
86tipos, garantizando horas de diversión para tu monitor. Y si realmente
87estás inclinado a la protección de tu monitor, existe aquel antiguo y
88clásico protector, la "pantalla negra".
89
90%description -l fr.UTF-8
91Des économiseurs d'écran de chaque sorte sont inclus dans ce paquet,
92guarantissant des heures de plaisir et d'économies d'écran. Et si vous
93êtes voulez vraiment économiser votre écran, il y a ce vieux
94classique, l'écran tout noir.
95
96%description -l pl.UTF-8
97Każdy wygaszacz ekranu dołączony do tego pakietu zapewnia godziny
98zadowolenia i oszczędzania monitora. Jeśli bardzo Ci zależy na
99oszczędzaniu monitora to jest też dostępny klasyczny "czysty" czarny
5ae2cad7 100wygaszacz.
ca58e9cf 101
dfa7a41b
JR
102%description -l pt_BR.UTF-8
103Protetores de tela de todos os tipos estão incluídos neste pacote,
104garantindo horas de divertimento para o seu monitor. E se você
105realmente está inclinado à proteção do seu monitor, existe aquele
106velho clássico, a "tela preta".
e6797462 107
dfa7a41b
JR
108%description -l ru.UTF-8
109Пакет xscreensaver содержит разнообразные программы хранения экрана.
e6797462 110
dfa7a41b
JR
111%description -l uk.UTF-8
112Пакет xscreensaver містить різноманітні програми збереження екрану.
e6797462 113
77ade7a1 114%package common
115Summary: Common X screen savers files
1536a28f 116Summary(pl.UTF-8): Pliki wspólne dla podpakietów wygaszaczy ekranu
77ade7a1 117Group: X11/Applications
77ade7a1 118
119%description common
120Common X screen savers files.
121
dfa7a41b
JR
122%description common -l pl.UTF-8
123Pliki wspólne dla podpakietów wygaszaczy ekranu.
77ade7a1 124
acad6e37 125%package base
126Summary: Base X screen savers
1536a28f 127Summary(pl.UTF-8): Podstawowe wygaszacze ekranu pod X Window
acad6e37 128Group: X11/Applications
77ade7a1 129Requires: %{name}-common = %{epoch}:%{version}-%{release}
8da0b4bf
KM
130Requires: perl-HTML-Parser
131Requires: perl-LWP-Protocol-https
5233c314 132Requires: xorg-lib-libXft >= 2.1.0
12d4ffb7 133Provides: %{name}-savers = %{epoch}:%{version}-%{release}
acad6e37 134
135%description base
136Base screen savers for X Window.
137
dfa7a41b 138%description base -l pl.UTF-8
acad6e37 139Podstawowe wygaszacze ekranu pod X Window.
140
aff3efc6 141%package GL
142Summary: OpenGL X screen savers
1536a28f
ER
143Summary(pl.UTF-8): Wygaszacze ekranu pod X Window używające OpenGL
144Summary(pt_BR.UTF-8): Protetores de tela GL
672fa9af 145Group: X11/Applications
77ade7a1 146Requires: %{name}-common = %{epoch}:%{version}-%{release}
5233c314 147Requires: xorg-lib-libXft >= 2.1.0
12d4ffb7 148Provides: %{name}-savers = %{epoch}:%{version}-%{release}
22b5527b
ER
149# for starwars req: xscreensaver-text
150Suggests: %{name}
aff3efc6 151
152%description GL
153Screen savers which uses OpenGL libraries.
154
dfa7a41b
JR
155%description GL -l pl.UTF-8
156Wygaszacze ekranu pod X Window używające OpenGL.
aff3efc6 157
dfa7a41b 158%description GL -l pt_BR.UTF-8
e6797462 159Ainda mais protetores de tela, usando a biblioteca 3D OpenGL.
160
dfaf8d02 161%package GLE
12d4ffb7 162Summary: OpenGL & GLE X screen savers
1536a28f 163Summary(pl.UTF-8): Wygaszacze ekranu pod X Window używające OpenGL i GLE
dfaf8d02 164Group: X11/Applications
77ade7a1 165Requires: %{name}-common = %{epoch}:%{version}-%{release}
5233c314 166Requires: xorg-lib-libXft >= 2.1.0
12d4ffb7 167Provides: %{name}-savers = %{epoch}:%{version}-%{release}
dfaf8d02
AM
168
169%description GLE
170Screen savers which uses OpenGL and GLE libraries.
171
dfa7a41b
JR
172%description GLE -l pl.UTF-8
173Wygaszacze ekranu pod X Window używające OpenGL oraz GLE.
dfaf8d02 174
ca58e9cf 175%prep
cdacdc61 176%setup -q -n %{name}-%{main_ver}
15faf92d 177%patch0 -p1
cdacdc61
KM
178%patch1 -p1
179%patch2 -p1
180
7e81e847
JB
181# fix encoding (xscreensaver-6.05: actual encoding is ISO-8869-1, but file specifies UTF-8)
182iconv -f iso-8859-1 -t utf-8 po/ca.po -o po/ca.po.tmp
183%{__mv} po/ca.po.tmp po/ca.po
184
cdacdc61
KM
185# from Fedora:
186# xscreensaver 6.03: manually fix po/Makefile.in.in
cdacdc61
KM
187cd po
188sed -i Makefile.in.in \
7e81e847
JB
189 -e "\@^POFILES[ \t]*=@s@^.*@POTFILES\t=$(ls -1 *po | while read f ; do echo -n -e " $f" ; done)@" \
190 -e "\@^GMOFILES[ \t]*=@s@^.*@GMOTFILES\t=$(ls -1 *po | while read f ; do echo -n -e " ${f%.po}.gmo" ; done)@" \
191 -e "\@^CATALOGS[ \t]*=@s@^.*@CATALOGS\t=$(ls -1 *po | while read f ; do echo -n -e " ${f%.po}.gmo" ; done)@" \
cdacdc61
KM
192 -e "\@^CATOBJEXT[ \t]*=@s@^.*@CATOBJEXT\t= .gmo@" \
193 -e "\@^INSTOBJEXT[ \t]*=@s@^.*@INSTOBJEXT\t= .mo@" \
194 -e "\@^MKINSTALLDIRS[ \t]*=@s@^.*@MKINSTALLDIRS\t= install -d@" \
195 %{nil}
196cd -
ca58e9cf 197
198%build
3dd40087 199%configure \
8da0b4bf
KM
200 --with-x \
201 --with-dpms-ext \
202 --with-xf86vmode-ext \
9d828928 203 --with-xinerama-ext \
ae3d7b08 204 --with-randr-ext \
8da0b4bf 205 --with-xinput-ext \
9d828928 206 --with-xf86gamma-ext \
8da0b4bf
KM
207 --with-xshm-ext \
208 --with-xdbe-ext \
209 --with-xkb-ext \
9d828928 210 --with-proc-interrupts \
8da0b4bf
KM
211 --with-proc-oom \
212 --with-systemd \
51a0f6a0 213 --with-pam \
77ade7a1 214 --with-shadow \
8da0b4bf 215 --with-gtk \
c5d5a41b 216 --with-gl \
dfaf8d02 217 --with-gle \
51a0f6a0 218 --with-jpeg \
8da0b4bf
KM
219 --with-png \
220 --with-pixbuf \
221 --with-xft \
45894efb 222 --with-hackdir=%{_libdir}/xscreensaver \
0ad14fb6 223 --with-configdir=%{_datadir}/xscreensaver \
8da0b4bf
KM
224 --enable-locking \
225 --without-login-manager \
226 --without-kerberos \
227 --without-motif
c5d5a41b 228
51a0f6a0 229%{__make} all
c5d5a41b 230
ca58e9cf 231%install
45c7a25e 232rm -rf $RPM_BUILD_ROOT
221d7879 233
52c6e2a6 234%{__make} install \
c92f159c 235 DESTDIR=$RPM_BUILD_ROOT \
697a6d85 236 install_sh=$(pwd)/install-sh \
52c6e2a6 237 install_prefix=$RPM_BUILD_ROOT \
8468378d 238 AD_DIR=%{_appdefsdir} \
acad6e37 239 PAM_DIR=/etc/pam.d
221d7879 240
15faf92d 241install -d $RPM_BUILD_ROOT{/etc/{pam.d,xdg/autostart},%{_desktopdir}}
52c6e2a6 242
8da0b4bf
KM
243cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/xdg/autostart
244cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_desktopdir}
ca58e9cf 245
45894efb
JB
246%{__make} -C driver install-pam \
247 PAM_DIR=$RPM_BUILD_ROOT/etc/pam.d
22b5527b 248cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/xscreensaver
c88054c0 249
dfaf8d02
AM
250_DIR=$(pwd)
251cd $RPM_BUILD_ROOT%{_libdir}/%{name}
252
acad6e37 253echo '%defattr(644,root,root,755)' > $_DIR/files.base
254echo '%defattr(644,root,root,755)' > $_DIR/files.gl
255echo '%defattr(644,root,root,755)' > $_DIR/files.gle
dfaf8d02 256
9d828928
AF
257find_config_and_man()
258{
acad6e37 259 if test -e $RPM_BUILD_ROOT%{_datadir}/%{name}/${1}.xml ; then
260 echo %{_datadir}/%{name}/${1}.xml
9d828928 261 fi
01e2caf5 262 if test -e $RPM_BUILD_ROOT%{_mandir}/man6/${1}.6 ; then
7e81e847 263 %{__mv} $RPM_BUILD_ROOT%{_mandir}/man6/{,xscreensaver-}${1}.6
01e2caf5 264 echo %{_mandir}/man6/xscreensaver-${1}.6'*'
1b643c22 265 # these two conflict with other packages
266 if [ ${1} != barcode -a ${1} != flame ]; then
01e2caf5 267 echo ".so xscreensaver-${1}.6" > $RPM_BUILD_ROOT%{_mandir}/man6/${1}.6
268 echo %{_mandir}/man6/${1}.6'*'
1b643c22 269 fi
9d828928
AF
270 fi
271}
272
22b5527b
ER
273for file in *; do
274 _REQUIRES=$(objdump -p $file 2> /dev/null | awk '
dfaf8d02
AM
275 BEGIN { START=0; LIBNAME=""; }
276 /Dynamic Section:/ { START=1; }
277 /NEEDED/ && (START==1) {
278 LIBNAME=$2;
279 }
280 (START==1) && (LIBNAME!="") { print LIBNAME; }
22b5527b 281 /^$/ { START=0; }')
dfaf8d02 282
22b5527b 283 if echo "$_REQUIRES" | grep -q "libgle.so"; then
acad6e37 284 echo "%attr(755,root,root) %{_libdir}/xscreensaver/$file" >> $_DIR/files.gle
285 find_config_and_man $file >> $_DIR/files.gle
22b5527b 286 elif echo "$_REQUIRES" | grep -q "libGLU.so"; then
acad6e37 287 echo "%attr(755,root,root) %{_libdir}/xscreensaver/$file" >> $_DIR/files.gl
288 find_config_and_man $file >> $_DIR/files.gl
289 else
290 echo "%attr(755,root,root) %{_libdir}/xscreensaver/$file" >> $_DIR/files.base
291 find_config_and_man $file >> $_DIR/files.base
292 fi
dfaf8d02
AM
293done
294
295cd $_DIR
296
51a0f6a0 297%find_lang %{name} --all-name
c92f159c 298
ca58e9cf 299%clean
5ae2cad7 300rm -rf $RPM_BUILD_ROOT
ca58e9cf 301
acad6e37 302%files -f %{name}.lang
45c7a25e 303%defattr(644,root,root,755)
78763ab8 304%doc README README.hacking
e8786e28
AM
305%attr(755,root,root) %{_bindir}/xscreensaver
306%attr(755,root,root) %{_bindir}/xscreensaver-command
307%attr(755,root,root) %{_bindir}/xscreensaver-demo
8da0b4bf 308%attr(755,root,root) %{_bindir}/xscreensaver-settings
7e81e847
JB
309%dir %{_datadir}/%{name}
310%doc %{_datadir}/%{name}/README
311%{_datadir}/%{name}/xscreensaver.service
9a386630 312%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/xscreensaver
15faf92d 313/etc/xdg/autostart/xscreensaver-autostart.desktop
5233c314 314%{_appdefsdir}/XScreenSaver
acad6e37 315%{_mandir}/man1/xscreensaver.1*
316%{_mandir}/man1/xscreensaver-command.1*
317%{_mandir}/man1/xscreensaver-demo.1*
8da0b4bf 318%{_mandir}/man1/xscreensaver-settings.1*
7e81e847 319%{_desktopdir}/xscreensaver-lock.desktop
cdacdc61
KM
320%{_desktopdir}/xscreensaver-settings.desktop
321%{_desktopdir}/xscreensaver.desktop
322%{_pixmapsdir}/xscreensaver.png
dfaf8d02 323
77ade7a1 324%files common
bd2fce08 325%defattr(644,root,root,755)
77ade7a1 326%dir %{_libdir}/%{name}
8da0b4bf
KM
327%dir %{_fontsdir}/xscreensaver
328%{_fontsdir}/xscreensaver/*.otf
329%{_fontsdir}/xscreensaver/*.ttf
77ade7a1 330
acad6e37 331%files base -f files.base
332%defattr(644,root,root,755)
333
dfaf8d02 334%files GL -f files.gl
c4e78737 335%defattr(644,root,root,755)
dfaf8d02
AM
336
337%files GLE -f files.gle
c4e78737 338%defattr(644,root,root,755)
This page took 0.734893 seconds and 4 git commands to generate.