]>
Commit | Line | Data |
---|---|---|
45c7a25e | 1 | Summary: X screen savers |
1536a28f ER |
2 | Summary(de.UTF-8): X-Bildschirmschoner |
3 | Summary(es.UTF-8): Protectores de pantalla X | |
4 | Summary(fr.UTF-8): Economiseurs d'écran X | |
5 | Summary(pl.UTF-8): Wygaszacze ekranu pod X Window | |
6 | Summary(pt_BR.UTF-8): Salvadores de tela X | |
7 | Summary(ru.UTF-8): Набор программ хранения экрана для X Window | |
8 | Summary(uk.UTF-8): Набір програм збереження екрану для X Window | |
9 | Summary(zh_CN.UTF-8): X 窗口系统保护器 | |
cdacdc61 | 10 | %define main_ver 6.05 |
45c7a25e | 11 | Name: xscreensaver |
cdacdc61 | 12 | Version: 6.05.1 |
788cfc92 | 13 | Release: 1 |
018ae6eb | 14 | Epoch: 1 |
b9017da5 | 15 | License: BSD |
bd2fce08 | 16 | Group: X11/Applications |
5233c314 | 17 | Source0: https://www.jwz.org/xscreensaver/%{name}-%{version}.tar.gz |
cdacdc61 | 18 | # Source0-md5: 79d6618adeabda8419f8390b3d85c51b |
15faf92d | 19 | Source1: %{name}-autostart.desktop |
88c26881 | 20 | Source2: %{name}-lock.desktop |
21 | Source3: %{name}.pamd | |
8da0b4bf | 22 | Patch0: %{name}-desktop.patch |
cdacdc61 KM |
23 | # from fedora |
24 | Patch1: %{name}-6.05-0001-demo-Gtk.c-main-enable-localization-again.patch | |
25 | # from fedora | |
26 | Patch2: %{name}-6.05-0002-demo-Gtk.c-populate_prefs_page-use-correct-pointer-f.patch | |
5233c314 | 27 | URL: https://www.jwz.org/xscreensaver/ |
6fa83784 | 28 | BuildRequires: EGL-devel |
6fa83784 | 29 | BuildRequires: OpenGL-GLU-devel |
cdacdc61 | 30 | BuildRequires: OpenGL-devel >= 1.3 |
5233c314 | 31 | BuildRequires: autoconf >= 2.69 |
2080cbce | 32 | BuildRequires: automake |
7c8bb864 | 33 | BuildRequires: bc |
5233c314 | 34 | BuildRequires: gdk-pixbuf2-xlib-devel >= 2.0.0 |
a0ebace9 | 35 | BuildRequires: gettext-tools |
dfaf8d02 | 36 | BuildRequires: gle-devel |
5233c314 JB |
37 | BuildRequires: glib2-devel >= 2.0.0 |
38 | BuildRequires: gtk+2-devel >= 1:2.22.0 | |
9cc54719 | 39 | BuildRequires: intltool |
8da0b4bf KM |
40 | BuildRequires: libjpeg-devel |
41 | BuildRequires: libtool | |
51a0f6a0 | 42 | BuildRequires: libxml2-devel >= 2.4.22 |
2080cbce | 43 | BuildRequires: pam-devel >= 0.77.3 |
fa43b208 | 44 | BuildRequires: perl-base |
45894efb | 45 | BuildRequires: pkgconfig |
5233c314 JB |
46 | BuildRequires: rpmbuild(macros) >= 1.745 |
47 | BuildRequires: systemd-devel >= 1:221 | |
8da0b4bf KM |
48 | BuildRequires: xorg-lib-libICE-devel |
49 | BuildRequires: xorg-lib-libX11-devel | |
50 | BuildRequires: xorg-lib-libXext-devel | |
5233c314 | 51 | BuildRequires: xorg-lib-libXft-devel >= 2.1.0 |
8da0b4bf KM |
52 | BuildRequires: xorg-lib-libXi-devel |
53 | BuildRequires: xorg-lib-libXinerama-devel | |
54 | BuildRequires: xorg-lib-libXrandr-devel | |
55 | BuildRequires: xorg-lib-libXt-devel | |
56 | BuildRequires: xorg-lib-libXxf86vm-devel | |
21a8a290 | 57 | Requires: %{name}-savers = %{epoch}:%{version}-%{release} |
5233c314 | 58 | Requires: gtk+2 >= 1:2.22.0 |
f5a846a8 | 59 | Requires: pam >= 0.77.3 |
21a8a290 | 60 | Requires: xorg-lib-libXt >= 1.0.0 |
22b5527b ER |
61 | # for screensaver-getimage-file |
62 | Suggests: perl-perldoc | |
63 | # for xscreensaver-text | |
64 | Suggests: xorg-app-appres | |
5233c314 JB |
65 | Obsoletes: xscreensaver-gnome < 1:4.06 |
66 | Obsoletes: xscreensaver-gnome1 < 1:4.21 | |
67 | Obsoletes: xscreensaver-gnome2 < 1:5.06 | |
023a3d9b | 68 | BuildRoot: %{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 | 74 | Screen savers of every sort are included in this package, guaranteeing |
5ae2cad7 | 75 | hours of enjoyment and monitor saving. And if you are bent on really |
76 | saving your monitor, there's that old classic, the plain black screen. | |
ca58e9cf | 77 | |
dfa7a41b JR |
78 | %description -l de.UTF-8 |
79 | Dieses Paket enthält eine Sammlung verschiedenster Bildschirmschoner. | |
80 | Stundenlanger Spaß ist garantiert. Und wenn Sie Ihren Bildschirm | |
81 | wirklich schonen möchten, gibt's den alten Klassiker, den einfachen | |
5ae2cad7 | 82 | schwarzen Bildschirm. |
3dd40087 | 83 | |
dfa7a41b JR |
84 | %description -l es.UTF-8 |
85 | En este paquete están incluidos protectores de pantalla, de todos los | |
86 | tipos, garantizando horas de diversión para tu monitor. Y si realmente | |
87 | estás inclinado a la protección de tu monitor, existe aquel antiguo y | |
88 | clásico protector, la "pantalla negra". | |
89 | ||
90 | %description -l fr.UTF-8 | |
91 | Des économiseurs d'écran de chaque sorte sont inclus dans ce paquet, | |
92 | guarantissant des heures de plaisir et d'économies d'écran. Et si vous | |
93 | êtes voulez vraiment économiser votre écran, il y a ce vieux | |
94 | classique, l'écran tout noir. | |
95 | ||
96 | %description -l pl.UTF-8 | |
97 | Każdy wygaszacz ekranu dołączony do tego pakietu zapewnia godziny | |
98 | zadowolenia i oszczędzania monitora. Jeśli bardzo Ci zależy na | |
99 | oszczędzaniu monitora to jest też dostępny klasyczny "czysty" czarny | |
5ae2cad7 | 100 | wygaszacz. |
ca58e9cf | 101 | |
dfa7a41b JR |
102 | %description -l pt_BR.UTF-8 |
103 | Protetores de tela de todos os tipos estão incluídos neste pacote, | |
104 | garantindo horas de divertimento para o seu monitor. E se você | |
105 | realmente está inclinado à proteção do seu monitor, existe aquele | |
106 | velho 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 |
115 | Summary: Common X screen savers files | |
1536a28f | 116 | Summary(pl.UTF-8): Pliki wspólne dla podpakietów wygaszaczy ekranu |
77ade7a1 | 117 | Group: X11/Applications |
77ade7a1 | 118 | |
119 | %description common | |
120 | Common X screen savers files. | |
121 | ||
dfa7a41b JR |
122 | %description common -l pl.UTF-8 |
123 | Pliki wspólne dla podpakietów wygaszaczy ekranu. | |
77ade7a1 | 124 | |
acad6e37 | 125 | %package base |
126 | Summary: Base X screen savers | |
1536a28f | 127 | Summary(pl.UTF-8): Podstawowe wygaszacze ekranu pod X Window |
acad6e37 | 128 | Group: X11/Applications |
77ade7a1 | 129 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
8da0b4bf KM |
130 | Requires: perl-HTML-Parser |
131 | Requires: perl-LWP-Protocol-https | |
5233c314 | 132 | Requires: xorg-lib-libXft >= 2.1.0 |
12d4ffb7 | 133 | Provides: %{name}-savers = %{epoch}:%{version}-%{release} |
acad6e37 | 134 | |
135 | %description base | |
136 | Base screen savers for X Window. | |
137 | ||
dfa7a41b | 138 | %description base -l pl.UTF-8 |
acad6e37 | 139 | Podstawowe wygaszacze ekranu pod X Window. |
140 | ||
aff3efc6 | 141 | %package GL |
142 | Summary: OpenGL X screen savers | |
1536a28f ER |
143 | Summary(pl.UTF-8): Wygaszacze ekranu pod X Window używające OpenGL |
144 | Summary(pt_BR.UTF-8): Protetores de tela GL | |
672fa9af | 145 | Group: X11/Applications |
77ade7a1 | 146 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
5233c314 | 147 | Requires: xorg-lib-libXft >= 2.1.0 |
12d4ffb7 | 148 | Provides: %{name}-savers = %{epoch}:%{version}-%{release} |
22b5527b ER |
149 | # for starwars req: xscreensaver-text |
150 | Suggests: %{name} | |
aff3efc6 | 151 | |
152 | %description GL | |
153 | Screen savers which uses OpenGL libraries. | |
154 | ||
dfa7a41b JR |
155 | %description GL -l pl.UTF-8 |
156 | Wygaszacze ekranu pod X Window używające OpenGL. | |
aff3efc6 | 157 | |
dfa7a41b | 158 | %description GL -l pt_BR.UTF-8 |
e6797462 | 159 | Ainda mais protetores de tela, usando a biblioteca 3D OpenGL. |
160 | ||
dfaf8d02 | 161 | %package GLE |
12d4ffb7 | 162 | Summary: OpenGL & GLE X screen savers |
1536a28f | 163 | Summary(pl.UTF-8): Wygaszacze ekranu pod X Window używające OpenGL i GLE |
dfaf8d02 | 164 | Group: X11/Applications |
77ade7a1 | 165 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
5233c314 | 166 | Requires: xorg-lib-libXft >= 2.1.0 |
12d4ffb7 | 167 | Provides: %{name}-savers = %{epoch}:%{version}-%{release} |
dfaf8d02 AM |
168 | |
169 | %description GLE | |
170 | Screen savers which uses OpenGL and GLE libraries. | |
171 | ||
dfa7a41b JR |
172 | %description GLE -l pl.UTF-8 |
173 | Wygaszacze 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) |
182 | iconv -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 |
187 | cd po |
188 | sed -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} | |
196 | cd - | |
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 | 232 | rm -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 | 241 | install -d $RPM_BUILD_ROOT{/etc/{pam.d,xdg/autostart},%{_desktopdir}} |
52c6e2a6 | 242 | |
8da0b4bf KM |
243 | cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/xdg/autostart |
244 | cp -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 | 248 | cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/xscreensaver |
c88054c0 | 249 | |
dfaf8d02 AM |
250 | _DIR=$(pwd) |
251 | cd $RPM_BUILD_ROOT%{_libdir}/%{name} | |
252 | ||
acad6e37 | 253 | echo '%defattr(644,root,root,755)' > $_DIR/files.base |
254 | echo '%defattr(644,root,root,755)' > $_DIR/files.gl | |
255 | echo '%defattr(644,root,root,755)' > $_DIR/files.gle | |
dfaf8d02 | 256 | |
9d828928 AF |
257 | find_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 |
273 | for 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 |
293 | done |
294 | ||
295 | cd $_DIR | |
296 | ||
51a0f6a0 | 297 | %find_lang %{name} --all-name |
c92f159c | 298 | |
ca58e9cf | 299 | %clean |
5ae2cad7 | 300 | rm -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) |