source: trunk/third/xscreensaver/xscreensaver.spec @ 20148

Revision 20148, 6.2 KB checked in by ghudson, 21 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r20147, which included commits to RCS files with non-trunk default branches.
Line 
1%define name            xscreensaver
2%define version         4.14
3%define release         1
4%define serial          1
5%define x11_prefix      /usr/X11R6
6%define gnome_prefix    /usr
7%define kde_prefix      /usr
8%define gnome_datadir   %{gnome_prefix}/share
9
10# By default, builds the basic, non-GL package.
11# To build both the basic and GL-add-on packages:
12#   rpm --define "USE_GL yes" ...
13# or uncomment the following line.
14# %define       USE_GL          yes
15
16Summary:        X screen saver and locker
17Summary(fr):    Economiseur d'écran et verrouillage de terminaux X
18Name:           %{name}
19Version:        %{version}
20Release:        %{release}
21Serial:         %{serial}
22Group:          Amusements/Graphics
23Copyright:      BSD
24URL:            http://www.jwz.org/xscreensaver
25Vendor:         Jamie Zawinski <jwz@jwz.org>
26Source:         %{name}-%{version}.tar.gz
27Buildroot:      %{_tmppath}/%{name}-%{version}-root
28
29# This package really should be made to depend on
30# control-center >= 1.4.0.2 -OR- control-center >= 1.5.12
31# but there's no way to express that.
32
33%description
34A modular screen saver and locker for the X Window System.
35Highly customizable: allows the use of any program that
36can draw on the root window as a display mode.
37More than 175 display modes are included in this package.
38%{?USE_GL:See also the xscreensaver-gl package, which}
39%{?USE_GL:includes optional OpenGL display modes.}
40
41%description -l fr
42Un économiseur d'écran et verrouillage modulaire pour X-Window.
43Hautement configurable: permet l'utilisation de n'importe quel programme
44qui peut dessiner dans la fenêtre root.
45Plus de 175 modes d'affichage sont inclus dans ce paquet.
46%{?USE_GL:Voir aussi le paquet xscreensaver-gl, qui inclut}
47%{?USE_GL:des modules optionnels OpenGL.}
48
49%{?USE_GL:%package gl}
50%{?USE_GL:Group:        Amusements/Graphics}
51%{?USE_GL:Requires:     xscreensaver = %{version}}
52%{?USE_GL:Summary:      A set of GL screensavers}
53%{?USE_GL:Summary(fr):  Un ensemble d'économiseurs d'écran OpenGL}
54%{?USE_GL:%description gl}
55%{?USE_GL:The xscreensaver-gl package contains even more screensavers for your}
56%{?USE_GL:mind-numbing, ambition-eroding, time-wasting, hypnotized viewing}
57%{?USE_GL:pleasure. These screensavers require OpenGL or Mesa support.}
58%{?USE_GL: }
59%{?USE_GL:Install the xscreensaver-gl package if you need more screensavers}
60%{?USE_GL:for use with the X Window System and you have OpenGL or Mesa}
61%{?USE_GL:installed.}
62%{?USE_GL:%description -l fr gl}
63%{?USE_GL:Le paquet xscreensaver-gl contient encore plus d'économiseurs}
64%{?USE_GL:d'écran pour votre plaisir visuel.}
65%{?USE_GL: }
66%{?USE_GL:Ces économiseurs d'écran nécessitent OpenGL ou Mesa.}
67%{?USE_GL:Installez le paquet xscreensaver-gl si vous désirez plus}
68%{?USE_GL:d'économiseur d'écran et que vous avez OpenGL ou Mesa installé.}
69
70%prep
71%setup -q
72
73%build
74RPMOPTS=""
75
76# On Solaris, build without PAM and with Shadow.
77# On other systems, build with PAM and without Shadow.
78#
79%ifos solaris
80 RPMOPTS="$RPMOPTS --without-pam"
81%else
82 RPMOPTS="$RPMOPTS --with-pam --without-shadow"
83%endif
84
85%{?USE_GL:RPMOPTS="$RPMOPTS --with-gl"}
86%{!?USE_GL:RPMOPTS="$RPMOPTS --without-gl"}
87
88archdir=`./config.guess`
89mkdir $archdir
90cd $archdir
91CFLAGS="$RPM_OPT_FLAGS" \
92 ../configure --prefix=%{x11_prefix} \
93              --with-setuid-hacks \
94              $RPMOPTS
95make
96
97%install
98
99archdir=`./config.guess`
100
101# We have to make sure these directories exist,
102# or nothing will be installed into them.
103#
104export KDEDIR=%{kde_prefix}
105mkdir -p $RPM_BUILD_ROOT$KDEDIR/bin
106mkdir -p $RPM_BUILD_ROOT%{gnome_datadir}
107mkdir -p $RPM_BUILD_ROOT/etc/pam.d
108
109cd $archdir
110make  install_prefix=$RPM_BUILD_ROOT \
111      AD_DIR=%{x11_prefix}/lib/X11/app-defaults \
112      GNOME_BINDIR=%{gnome_prefix}/bin \
113      install-strip
114
115# This function prints a list of things that get installed.
116# It does this by parsing the output of a dummy run of "make install".
117#
118list_files() {
119  make -s install_prefix=$RPM_BUILD_ROOT INSTALL=true           \
120          GNOME_BINDIR=%{gnome_prefix}/bin                      \
121          "$@"                                                  |
122    sed -n -e 's@.* \(/[^ ]*\)$@\1@p'                           |
123    sed    -e "s@^$RPM_BUILD_ROOT@@"                            \
124           -e "s@/[a-z][a-z]*/\.\./@/@"                         |
125    sed    -e 's@\(.*/man/.*\)@\1\*@'                           |
126    sort
127}
128
129# Collect the names of the non-GL executables and scripts...
130# (Including the names of all of the Gnome, KDE, and L10N-related files,
131# whereever they might have gotten installed...)
132# For the translation catalogs, prepend an appropriate %lang(..) tag.
133#
134(  cd    hacks ; list_files install ; \
135   cd ../driver; list_files install-program install-scripts \
136                            install-gnome install-kde ; \
137 ( cd ../po;     list_files install | grep '\.' \
138    | sed 's@^\(.*/\([^/]*\)/LC.*\)$@%lang(\2) \1@' ) \
139) > $RPM_BUILD_DIR/xscreensaver-%{version}/exes-non-gl
140
141
142# Collect the names of the GL-only executables...
143#
144( cd hacks/glx ; list_files install ) \
145   | grep -v man1/xscreensaver-gl-helper \
146   > $RPM_BUILD_DIR/xscreensaver-%{version}/exes-gl
147
148# This line is redundant, except that it causes the "xscreensaver"
149# executable to be installed unstripped (while all others are stripped.)
150# You should install it this way so that jwz gets useful bug reports.
151#
152install -m 4755 driver/xscreensaver $RPM_BUILD_ROOT%{x11_prefix}/bin
153
154# Even if we weren't compiled with PAM support, make sure to include
155# the PAM module file in the RPM anyway, just in case.
156#
157( cd driver ;
158  make install_prefix=$RPM_BUILD_ROOT PAM_DIR=/etc/pam.d install-pam )
159
160# Make sure all files are readable by all, and writable only by owner.
161#
162chmod -R a+r,u+w,og-w $RPM_BUILD_ROOT
163
164%post
165# This part runs on the end user's system, when the RPM is installed.
166
167pids=`pidof xscreensaver`
168if [ -n "$pids" ]; then
169  echo "sending SIGHUP to running xscreensaver ($pids)..." >&2
170  kill -HUP $pids
171fi
172
173%clean
174if [ -d $RPM_BUILD_ROOT    ]; then rm -r $RPM_BUILD_ROOT    ; fi
175if [ -d $RPM_BUILD_ROOT-gl ]; then rm -r $RPM_BUILD_ROOT-gl ; fi
176
177# Files for the "xscreensaver" package:
178#
179%files -f exes-non-gl
180%defattr(-,root,root)
181
182%doc    README README.debugging
183%dir    %{x11_prefix}/lib/xscreensaver
184%config %{x11_prefix}/lib/X11/app-defaults/*
185        %{x11_prefix}/man/man1/xscreensaver*
186%config /etc/pam.d/*
187
188# Files for the "xscreensaver-gl" package:
189#
190%{?USE_GL:%files -f exes-gl gl}
191%{?USE_GL:%defattr(-,root,root)}
Note: See TracBrowser for help on using the repository browser.