X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=xscreensaver.spec;h=58b1588b6c05432c706878e3e612d53b0c1d2b7c;hp=6d7a6cb1fe6b6781b4b02986cf1e178701a48548;hb=6b1c86cf395f59389e4ece4ea8f4bea2c332745b;hpb=a94197e76a5dea5cb60542840809d6c20d0abbf3 diff --git a/xscreensaver.spec b/xscreensaver.spec index 6d7a6cb1..58b1588b 100644 --- a/xscreensaver.spec +++ b/xscreensaver.spec @@ -1,187 +1,204 @@ -%define name xscreensaver -%define version 4.01 -%define release 1 -%define serial 1 -%define x11_prefix /usr/X11R6 -%define gnome_prefix /usr -%define kde_prefix /usr - -%define gnome_datadir %{gnome_prefix}/share -%define gnome_ccdir_1 %{gnome_datadir}/control-center/Desktop -%define gnome_ccdir_2 %{gnome_datadir}/control-center/capplets -%define gnome_paneldir %{gnome_datadir}/gnome/apps/Settings/Desktop -%define gnome_icondir %{gnome_datadir}/pixmaps - -# By default, builds the basic, non-GL package. -# To build both the basic and GL-add-on packages: -# rpm --define "USE_GL yes" ... -# or uncomment the following line. -# %define USE_GL yes +%define name xscreensaver +%define version 5.05 Summary: X screen saver and locker Name: %{name} Version: %{version} -Release: %{release} -Serial: %{serial} +Release: 1 +Epoch: 1 +License: BSD Group: Amusements/Graphics -Copyright: BSD -URL: http://www.jwz.org/xscreensaver +URL: http://www.jwz.org/xscreensaver/ +Source0: http://www.jwz.org/xscreensaver/xscreensaver-%{version}.tar.gz Vendor: Jamie Zawinski -Source: %{name}-%{version}.tar.gz -Buildroot: %{_tmppath}/%{name}-%{version}-root - -# This package really should be made to depend on -# control-center >= 1.4.0.2 -OR- control-center >= 1.5.12 -# but there's no way to express that. +Buildroot: %{_tmppath}/%{name}-root + +%package base +Summary: A minimal installation of xscreensaver. +Summary(fr): Une installation minimale de xscreensaver. +Group: Amusements/Graphics +BuildRequires: bc +BuildRequires: gettext +BuildRequires: pam-devel +BuildRequires: gtk2-devel +BuildRequires: desktop-file-utils +# Red Hat (pre-FC5): +#BuildRequires: xorg-x11-devel +#BuildRequires: libglade2-devel +# Red Hat 5, CentOS5, FC5, and up: +BuildRequires: xorg-x11-proto-devel +BuildRequires: libglade2-devel +# Mandrake: +#BuildRequires: libxorg-x11-devel +#BuildRequires: libglade2.0_0-devel +Requires: SysVinit +Requires: /etc/pam.d/system-auth +Requires: htmlview +Requires: desktop-backgrounds-basic +Provides: xscreensaver +Provides: xscreensaver-base +Obsoletes: xscreensaver + +%package extras +Summary: An enhanced set of screensavers. +Summary(fr): Un jeu étendu d'économiseurs d'écran. +Group: Amusements/Graphics +Requires: xscreensaver-base + +%package gl-extras +Summary: An enhanced set of screensavers that require OpenGL. +Summary(fr): Un jeu étendu d'économiseurs d'écran qui nécessitent OpenGL. +Group: Amusements/Graphics +Requires: xscreensaver-base +Obsoletes: xscreensaver-gl %description A modular screen saver and locker for the X Window System. -Highly customizable: allows the use of any program that -can draw on the root window as a display mode. -More than 140 display modes are included in this package. -%{?USE_GL:See also the xscreensaver-gl package, which} -%{?USE_GL:includes optional OpenGL display modes.} - -%{?USE_GL:%package gl} -%{?USE_GL:Group: Amusements/Graphics} -%{?USE_GL:Requires: xscreensaver = %{version}} -%{?USE_GL:Summary: A set of GL screensavers} -%{?USE_GL:%description gl} -%{?USE_GL:The xscreensaver-gl package contains even more screensavers for your} -%{?USE_GL:mind-numbing, ambition-eroding, time-wasting, hypnotized viewing} -%{?USE_GL:pleasure. These screensavers require OpenGL or Mesa support.} -%{?USE_GL: } -%{?USE_GL:Install the xscreensaver-gl package if you need more screensavers} -%{?USE_GL:for use with the X Window System and you have OpenGL or Mesa} -%{?USE_GL:installed.} +More than 200 display modes are included in this package. + +%description -l fr +Un économiseur d'écran modulaire pour le système X Window. +Plus de 200 modes d'affichages sont inclus dans ce paquet. + +%description base +A modular screen saver and locker for the X Window System. +This package contains the bare minimum needed to blank and +lock your screen. The graphical display modes are the +"xscreensaver-extras" and "xscreensaver-gl-extras" packages. + +%description -l fr base +Un économiseur d'écran modulaire pour le système X Window. +Ce paquet contient le minimum vital pour éteindre et verouiller +votre écran. Les modes d'affichages graphiques sont inclus +dans les paquets "xscreensaver-extras" et "xscreensaver-gl-extras". + +%description extras +A modular screen saver and locker for the X Window System. +This package contains a variety of graphical screen savers for +your mind-numbing, ambition-eroding, time-wasting, hypnotized +viewing pleasure. + +%description -l fr extras +Un économiseur d'écran modulaire pour le système X Window. +Ce paquet contient une pléthore d'économiseurs d'écran graphiques +pour votre plaisir des yeux. + +%description gl-extras +A modular screen saver and locker for the X Window System. +This package contains a variety of OpenGL-based (3D) screen +savers for your mind-numbing, ambition-eroding, time-wasting, +hypnotized viewing pleasure. + +%description -l fr gl-extras +Un économiseur d'écran modulaire pour le système X Window. +Ce paquet contient une pléthore d'économiseurs d'écran basés sur OpenGL (3D) +pour votre plaisir des yeux. %prep %setup -q +if [ -x %{_datadir}/libtool/config.guess ]; then + # use system-wide copy + cp -p %{_datadir}/libtool/config.{sub,guess} . +fi + %build -RPMOPTS="" +archdir=`./config.guess` +mkdir $archdir +cd $archdir -# Is this really needed? If so, why? -# %ifarch alpha -# RPMOPTS="$RPMOPTS --without-xshm-ext" -# %endif +export CFLAGS="${CFLAGS:-${RPM_OPT_FLAGS}}" -# On Solaris, build without PAM and with Shadow. -# On other systems, build with PAM and without Shadow. -# -%ifos solaris - RPMOPTS="$RPMOPTS --without-pam" -%else - RPMOPTS="$RPMOPTS --with-pam --without-shadow" -%endif +CONFIG_OPTS="--prefix=/usr --with-pam --without-shadow --without-kerberos" -%{?USE_GL:RPMOPTS="$RPMOPTS --with-gl"} -%{!?USE_GL:RPMOPTS="$RPMOPTS --without-gl"} +# Red Hat doesn't like this: +CONFIG_OPTS="$CONFIG_OPTS --with-setuid-hacks" -CFLAGS="$RPM_OPT_FLAGS" \ - ./configure --prefix=%{x11_prefix} \ - --with-setuid-hacks \ - $RPMOPTS +# This is flaky: +# CONFIG_OPTS="$CONFIG_OPTS --with-login-manager" + +ln -s ../configure . +%configure $CONFIG_OPTS +rm -f configure make %install +archdir=`./config.guess` +cd $archdir -# Most xscreensaver executables go in the X bin directory (/usr/X11R6/bin/) -# but some of them (e.g., the control panel capplet) go in the GNOME bin -# directory instead (/usr/bin/). -# -mkdir -p $RPM_BUILD_ROOT%{gnome_prefix}/bin -mkdir -p $RPM_BUILD_ROOT%{gnome_ccdir_1} -mkdir -p $RPM_BUILD_ROOT%{gnome_ccdir_2} -mkdir -p $RPM_BUILD_ROOT%{gnome_paneldir} +rm -rf ${RPM_BUILD_ROOT} -# Likewise for KDE: the .kss file goes in the KDE bin directory (/usr/bin/). +# We have to make sure these directories exist, +# or nothing will be installed into them. # -export KDEDIR=%{kde_prefix} -mkdir -p $RPM_BUILD_ROOT$KDEDIR/bin +mkdir -p $RPM_BUILD_ROOT%{_bindir} \ + $RPM_BUILD_ROOT%{_datadir}/xscreensaver \ + $RPM_BUILD_ROOT%{_libexecdir}/xscreensaver \ + $RPM_BUILD_ROOT%{_mandir}/man1/xscreensaver \ + $RPM_BUILD_ROOT/etc/pam.d -# This is a directory that "make install" won't make as needed -# (since Linux uses /etc/pam.d/* and Solaris uses /etc/pam.conf). -# -mkdir -p $RPM_BUILD_ROOT/etc/pam.d +make install_prefix=$RPM_BUILD_ROOT install -make install_prefix=$RPM_BUILD_ROOT \ - AD_DIR=%{x11_prefix}/lib/X11/app-defaults \ - GNOME_BINDIR=%{gnome_prefix}/bin \ - install-strip +desktop-file-install --vendor gnome --delete-original \ + --dir $RPM_BUILD_ROOT%{_datadir}/applications \ + $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop -# Make a pair of lists, of the GL and non-GL executables. -# Do this by parsing the output of a dummy run of "make install" -# in the driver/, hacks/ and hacks/glx/ directories. +# This function prints a list of things that get installed. +# It does this by parsing the output of a dummy run of "make install". # list_files() { - make -s install_prefix=$RPM_BUILD_ROOT INSTALL=true \ - GNOME_BINDIR=%{gnome_prefix}/bin \ - "$@" | - sed -n -e 's@.* /\([^ ]*\)$@/\1@p' | - sed -e "s@^$RPM_BUILD_ROOT@@" \ - -e "s@/bin/\.\./@/@" | - sed -e 's@\(.*/man/.*\)@\1\*@' | - sort + make -s install_prefix=${RPM_BUILD_ROOT} INSTALL=true "$@" \ + | sed -n -e 's@.* \(/[^ ]*\)$@\1@p' \ + | sed -e "s@^${RPM_BUILD_ROOT}@@" \ + -e "s@/[a-z][a-z]*/\.\./@/@" \ + | sed -e 's@\(.*/man/.*\)@\1\*@' \ + | sed -e 's@\(.*/app-defaults/\)@%config \1@' \ + -e 's@\(.*/pam\.d/\)@%config(missingok) \1@' \ + | sort } -( cd hacks ; list_files install ; \ - cd ../driver; list_files install-program install-scripts ) \ - > $RPM_BUILD_DIR/xscreensaver-%{version}/exes-non-gl -( cd hacks/glx ; list_files install ) \ - | grep -v man1/xscreensaver-gl-helper \ - > $RPM_BUILD_DIR/xscreensaver-%{version}/exes-gl - - -# This line is redundant, except that it causes the "xscreensaver" -# executable to be installed unstripped (while all others are stripped.) -# You should install it this way so that jwz gets useful bug reports. +# Generate three lists of files for the three packages. # -install -m 4755 driver/xscreensaver $RPM_BUILD_ROOT%{x11_prefix}/bin +dd=%{_builddir}/%{name}-%{version} +( cd hacks ; list_files install ) > $dd/extras.files +( cd hacks/glx ; list_files install ) > $dd/gl-extras.files +( cd driver ; list_files install ) > $dd/base.files +#( cd po ; list_files install ) >> $dd/base.files + +%find_lang %{name} +cat %{name}.lang >> $dd/base.files -# Even if we weren't compiled with PAM support, make sure to include -# the PAM module file in the RPM anyway, just in case. -# -( cd driver ; - make install_prefix=$RPM_BUILD_ROOT PAM_DIR=/etc/pam.d install-pam ) # Make sure all files are readable by all, and writable only by owner. # -chmod -R a+r,u+w,og-w $RPM_BUILD_ROOT - -%post -# This part runs on the end user's system, when the RPM is installed. - -pids=`pidof xscreensaver` -if [ -n "$pids" ]; then - echo "sending SIGHUP to running xscreensaver ($pids)..." >&2 - kill -HUP $pids -fi +chmod -R a+r,u+w,og-w ${RPM_BUILD_ROOT} %clean -if [ -d $RPM_BUILD_ROOT ]; then rm -r $RPM_BUILD_ROOT ; fi -if [ -d $RPM_BUILD_ROOT-gl ]; then rm -r $RPM_BUILD_ROOT-gl ; fi +rm -rf ${RPM_BUILD_ROOT} -%files -f exes-non-gl -%defattr(-,root,root) +%post base +# This part runs on the end user's system, when the RPM is installed. -# Files for the "xscreensaver" package: +# This will cause the screen to unlock, which annoys people. So, nevermind: +# people will just have to remember to re-launch it themselves, like they +# have to do with any other daemon they've upgraded. # -%doc README README.debugging -%dir %{x11_prefix}/lib/xscreensaver -%config %{x11_prefix}/lib/X11/app-defaults/* - %{x11_prefix}/man/man1/xscreensaver* - /etc/pam.d/* +#pids=`/sbin/pidof xscreensaver` +#if [ -n "$pids" ]; then +# echo "sending SIGHUP to running xscreensaver ($pids)..." >&2 +# kill -HUP $pids +#fi + +%files -f base.files base +%defattr(-,root,root) -%config(missingok) %{kde_prefix}/bin/*.kss +%files -f extras.files extras +%defattr(-,root,root) -%config(missingok) %{gnome_prefix}/bin/*-capplet -%config(missingok) %{gnome_ccdir_1}/*.desktop -%config(missingok) %{gnome_ccdir_2}/*.desktop -%config(missingok) %{gnome_paneldir}/*.desktop -%config(missingok) %{gnome_icondir}/* +%files -f gl-extras.files gl-extras +%defattr(-,root,root) -# Files for the "xscreensaver-gl" package: -# -%{?USE_GL:%files -f exes-gl gl} +%changelog +* Fri Nov 4 2005 Eric Lassauge +- Updated french translations