2 # Debian rules file foor xscreensaver (1.26), adapted by Larry Daffner from
3 # Sample debian.rules file - for GNU Hello (1.3).
4 # Copyright 1994,1995 by Ian Jackson.
5 # I hereby give you perpetual unlimited permission to copy,
6 # modify and relicense this file, provided that you do not remove
7 # my name from the file itself. (I assert my moral right of
8 # paternity under the Copyright, Designs and Patents Act 1988.)
9 # This file may have to be extensively modified
11 # There used to be `source' and `diff' targets in this file, and many
12 # packages also had `changes' and `dist' targets. These functions
13 # have been taken over by dpkg-source, dpkg-genchanges and
14 # dpkg-buildpackage in a package-independent way, and so these targets
17 # Modified on July 2007 by Jose Luis Rivas.
19 # Including quilt.make
20 include /usr/share/quilt/quilt.make
22 export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
23 export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
29 cp debian/xscreensaver.svg utils/images/xscreensaver.svg
31 # generate POT file for translators
32 cd po; intltool-update --verbose -p; cd ..
34 # these are for some reason in the upstream tarball, preserve them
35 [ -f driver/XScreenSaver_ad.h.upstream ] || [ ! -f driver/XScreenSaver_ad.h ] || \
36 mv driver/XScreenSaver_ad.h driver/XScreenSaver_ad.h.upstream
37 [ -f driver/XScreenSaver_Xm_ad.h.upstream ] || [ ! -f driver/XScreenSaver_Xm_ad.h ] || \
38 mv driver/XScreenSaver_Xm_ad.h driver/XScreenSaver_Xm_ad.h.upstream
40 # configs files are outdated so we build with the updated ones
41 [ ! -f config.sub.upstream ] && mv config.sub config.sub.upstream && cp /usr/share/misc/config.sub config.sub
42 [ ! -f config.guess.upstream ] && mv config.guess config.guess.upstream && cp /usr/share/misc/config.guess config.guess
43 # Configure for xscreensaver
44 ./configure --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) \
46 --without-gl --with-gtk --without-kerberos \
47 --with-hackdir=/usr/lib/xscreensaver \
48 --with-configdir=/usr/share/xscreensaver/config \
49 --mandir=/usr/share/man --with-login-manager \
50 --with-proc-interrupts
51 cp driver/XScreenSaver.ad driver/XScreenSaver.ad-nogl
55 clean: clean-patched unpatch
61 [ ! -f Makefile ] || $(MAKE) distclean
62 rm -f config.log config.h
63 rm -rf driver/XScreenSaver.ad-nogl
64 rm -rf *~ debian/tmp debian/xscreensaver debian/xscreensaver-gl \
65 debian/xscreensaver-gl-extra debian/xscreensaver-data \
66 debian/xscreensaver-data-extra
67 rm -rf debian/*~ debian/files*
68 rm -f po/.intltool-merge-cache
69 [ ! -f config.sub.upstream ] || mv config.sub.upstream config.sub
70 [ ! -f config.guess.upstream ] || mv config.guess.upstream config.guess
71 [ ! -f driver/XScreenSaver_ad.h.upstream ] || mv driver/XScreenSaver_ad.h.upstream driver/XScreenSaver_ad.h
72 [ ! -f driver/XScreenSaver_Xm_ad.h.upstream ] || mv driver/XScreenSaver_Xm_ad.h.upstream driver/XScreenSaver_Xm_ad.h
73 rm -f utils/images/xscreensaver.svg
83 rm -rf debian/tmp debian/xscreensaver \
84 debian/xscreensaver-gnome debian/xscreensaver-nognome \
85 debian/xscreensaver-data debian/xscreensaver-data-extra
86 $(MAKE) install_prefix=$(CURDIR)/debian/tmp \
87 GTK_DATADIR=/usr/share KDEDIR=/usr install
88 # Adding `NoDisplay=True' in gnome-screensaver-properties.desktop
89 echo "NoDisplay=true" >> debian/tmp/usr/share/applications/gnome-screensaver-properties.desktop
92 dh_installchangelogs -a
93 # install .desktop files used by gnome-screensaver
94 #mkdir -p $(CURDIR)/debian/tmp/usr/share/applications/screensavers
95 #cp $(CURDIR)/debian/screensavers-desktop-files/*.desktop \
96 # $(CURDIR)/debian/tmp/usr/share/applications/screensavers/
98 # Adding a `x` at the end of all manpages:
99 #for i in $$( ls debian/tmp/usr/share/man/man6/ ); do mv debian/tmp/usr/share/man/man6/$$i debian/tmp/usr/share/man/man6/$$( echo $$i )x; done
100 for i in debian/tmp/usr/share/man/man6/*; do mv $${i} $${i}x; done
101 mkdir -p debian/tmp/usr/share/livewp/external_themes
102 mkdir -p $(CURDIR)/debian/tmp/usr/share/livewp/external_icons
103 cp $(CURDIR)/debian/*.png $(CURDIR)/debian/tmp/usr/share/livewp/external_icons/
106 for i in `cd debian/tmp/usr/share/xscreensaver/config ; find . -name "*.xml" -type f -print`; do echo $${i} ; cat debian/tmp/usr/share/xscreensaver/config/$${i} | grep "<screensaver"| \
107 sed 's/<screensaver name="\(.*\)" _label="\(.*\)">/<theme>\n\<name>\2<\/name>\n <exec_path>\/usr\/lib\/xscreensaver\/\1<\/exec_path>\n <window_id>-window-id<\/window_id>\n <view>-view<\/view>\n <category>Xscreensaver<\/category>\n <icon_on>\/usr\/share\/livewp\/external_icons\/xscreensaver.png<\/icon_on>\n <icon_off>\/usr\/share\/livewp\/external_icons\/xscreensaverd.png<\/icon_off>\n <\/theme>/g' \
108 > debian/tmp/usr/share/livewp/external_themes/$${i}; done
111 # make sure we got everything that was installed
112 # test `find debian/tmp -type f -print | wc -l` -eq 0
113 find debian/tmp -type f -print
116 # install app-defaults to proper places
117 #install -m 644 -o root -g root driver/XScreenSaver.ad-nogl \
118 # debian/xscreensaver-data/etc/X11/app-defaults/XScreenSaver-nogl
119 # Hopefully prevent nVidia brain damage
120 # This is supposed to prevent accidentially linking against the
121 # binary nvidia drivers. Deinstall or divert them before building!
122 #test ! `eval ldd debian/xscreensaver-gl/usr/lib/xscreensaver/* |grep -q libGLcore && echo $$?`
132 rm -f debian/xscreensaver/usr/share/xscreensaver
133 mkdir -p debian/xscreensaver/usr/share/xscreensaver/config
134 cd debian/xscreensaver/opt/maemo/usr/share/xscreensaver/config/ && find . -type f -exec ln -s /opt/maemo/usr/share/xscreensaver/config/'{}' ../../../../../../usr/share/xscreensaver/config/'{}' \;
135 # mv debian/xscreensaver/opt/maemo/usr/share/xscreensaver/config debian/xscreensaver/usr/share/xscreensaver
137 cat debian/xscreensaver/DEBIAN/postinst |sed s/'optify "usr\/share\/xscreensaver"'//g > /tmp/xscpostinst && mv /tmp/xscpostinst debian/xscreensaver/DEBIAN/postinst && chmod 775 debian/xscreensaver/DEBIAN/postinst
141 # Below here is fairly generic really
143 binary: binary-indep binary-arch
145 .PHONY: binary binary-arch binary-indep clean