2
# -*- Mode: makefile -*-
8
ICEWM_COMMON=$(shell pwd)/debian/icewm-common
9
ICEWM=$(shell pwd)/debian/icewm
10
ICEWM_GNOME=$(shell pwd)/debian/icewm-gnome
11
ICEWM_LITE=$(shell pwd)/debian/icewm-lite
12
ICEWM_EXP=$(shell pwd)/debian/icewm-experimental
14
# Patch list: debian/patches contains all patches
15
# in the dpatch format.
16
debian_patches=package_build_fixes\
21
network_load_incator_fix\
22
geometry_option_winoptions_fix\
32
build-stamp: patched-stamp
35
# Make gnome-experimental
36
./configure --with-gnome-menus --with-imlib \
37
--prefix=/usr/X11R6 --sysconfdir=/etc --datadir=/usr/share \
38
--disable-debug --enable-i18n --enable-nls \
39
--enable-movesize-fx --enable-antialiasing --enable-xfreetype \
40
--enable-gradients --enable-shaped-decorations
41
make EXEEXT=-experimental && make srcclean
44
./configure --with-gnome-menus --with-imlib \
45
--prefix=/usr/X11R6 --sysconfdir=/etc --datadir=/usr/share \
46
--disable-debug --enable-i18n --enable-nls
47
make EXEEXT=-gnome && make srcclean
51
./configure --without-gnome-menus --with-xpm --prefix=/usr/X11R6 \
52
--sysconfdir=/etc --datadir=/usr/share --disable-debug \
53
--enable-i18n --enable-nls --enable-lite
54
make EXEEXT=-lite && make srcclean
58
./configure --without-gnome-menus --with-imlib \
60
--sysconfdir=/etc --datadir=/usr/share --disable-debug \
61
--enable-i18n --enable-nls
64
# Generate the most exhaustive preference file, i.e. the one
65
# from the experimental version.
66
src/genpref-experimental > lib/preferences
70
clean: reverse-patches
76
make srcclean EXEEXT=-experimental
77
make srcclean EXEEXT=-gnome
78
make srcclean EXEEXT=-lite
83
rm -f `find . -name "*~"`
93
# Install everything but documentation
94
make install-base install-nls\
95
prefix=$(ICEWM_COMMON)/usr/X11R6\
96
sysconfdir=$(ICEWM_COMMON)/etc\
97
datadir=$(ICEWM_COMMON)/usr/share
99
# Install Mutt additional icons
100
install -m 644 debian/mutt*.xpm $(ICEWM_COMMON)/usr/X11R6/lib/X11/icewm/icons
103
dh_link -picewm-common usr/X11R6/lib/X11/icewm/taskbar/debian.xpm usr/X11R6/lib/X11/icewm/taskbar/linux.xpm
104
dh_link -picewm-common usr/X11R6/lib/X11/icewm/themes/gtk2 usr/X11R6/lib/X11/icewm/themes/gtk
106
# Move files in the right package directory
107
mv $(ICEWM_COMMON)/usr/X11R6/bin/* $(ICEWM)/usr/X11R6/bin
108
rm -rf $(ICEWM_COMMON)/usr/X11R6/bin
109
install -m 755 src/*-gnome $(ICEWM_GNOME)/usr/X11R6/bin
110
install -m 755 src/*-lite $(ICEWM_LITE)/usr/X11R6/bin
111
install -m 755 src/*-experimental $(ICEWM_EXP)/usr/X11R6/bin
114
rm debian/icewm*/usr/X11R6/bin/genpref*
116
# Install documentation
117
install -m 644 doc/*.html $(ICEWM_COMMON)/usr/share/doc/icewm-common/html
118
install -m 644 doc/*.sgml $(ICEWM_COMMON)/usr/share/doc/icewm-common/sgml
122
# Remove doc directories since we will add links
123
# to icewm-common instead.
124
rm -rf $(ICEWM)/usr/share/doc/icewm
125
rm -rf $(ICEWM_GNOME)/usr/share/doc/icewm-gnome
126
rm -rf $(ICEWM_LITE)/usr/share/doc/icewm-lite
127
rm -rf $(ICEWM_EXP)/usr/share/doc/icewm-experimental
129
binary-indep: build install
130
# There are no architecture-independent files to be uploaded
131
# generated by this package. If there were any they would be
134
binary-arch: build install
138
dh_link -picewm usr/share/doc/icewm-common usr/share/doc/icewm
139
dh_link -picewm-gnome usr/share/doc/icewm-common usr/share/doc/icewm-gnome
140
dh_link -picewm-lite usr/share/doc/icewm-common usr/share/doc/icewm-lite
141
dh_link -picewm-experimental usr/share/doc/icewm-common usr/share/doc/icewm-experimental
144
install -m 644 debian/icewm.1x $(ICEWM)/usr/X11R6/man/man1
145
install -m 644 debian/icewm.1x $(ICEWM_GNOME)/usr/X11R6/man/man1/icewm-gnome.1x
146
install -m 644 debian/icewm.1x $(ICEWM_LITE)/usr/X11R6/man/man1/icewm-lite.1x
147
install -m 644 debian/icewm.1x $(ICEWM_EXP)/usr/X11R6/man/man1/icewm-experimental.1x
149
dh_installchangelogs -picewm-common CHANGES
151
# Stop using dh_installwm until bug #85963 is fixed.
153
#dh_installwm -picewm --priority=50 icewm
154
#dh_installwm -picewm-gnome --priority=60 icewm-gnome
155
#dh_installwm -picewm-lite --priority=40 icewm-lite
156
#dh_installwm -picewm-experimental --priority=40 icewm-experimental
158
# Install undocumented manpages
159
for i in icehelp icewmbg icewmhint icesh; do\
160
ln -s ../../../share/man/man7/undocumented.7.gz $(ICEWM)/usr/X11R6/man/man1/$$i.1x.gz;\
161
ln -s ../../../share/man/man7/undocumented.7.gz $(ICEWM_GNOME)/usr/X11R6/man/man1/$$i-gnome.1x.gz;\
162
ln -s ../../../share/man/man7/undocumented.7.gz $(ICEWM_LITE)/usr/X11R6/man/man1/$$i-lite.1x.gz;\
163
ln -s ../../../share/man/man7/undocumented.7.gz $(ICEWM_EXP)/usr/X11R6/man/man1/$$i-experimental.1x.gz;\
175
# Below here is fairly generic really
177
binary: binary-indep binary-arch
179
.PHONY: binary binary-arch binary-indep clean checkroot
181
# ---------------------------------------------------------------------------
182
# Various rules to unpack addons and (un)apply patches.
185
patch_dir = debian/patches
187
apply-patches: patched-stamp
189
@for stamp in none patched-*; do \
190
case "$$stamp" in none|patched-stamp|patched-\*) continue; esac; \
191
patch=`echo $$stamp | sed -e 's/patched-//'`; \
192
echo "trying to revert patch $$patch ..."; \
193
if [ -x $(patch_dir)/$$patch.dpatch ]; then true; else \
194
chmod +x $(patch_dir)/$$patch.dpatch; fi; \
195
if $(patch_dir)/$$patch.dpatch -unpatch; then \
196
echo "reverted $$patch patch."; \
199
echo "error in reverting $$patch patch."; \
203
@echo "Removing patched-stamp"
206
patched-%: $(patch_dir)/%.dpatch
207
@if [ -x $< ]; then true; else chmod +x $<; fi
208
@if [ -f $@ ]; then \
209
echo "$* patches already applied."; exit 1; \
212
@echo "$* patches applied." > $@
214
patched-stamp: $(foreach p,$(debian_patches),patched-$(p))
215
@echo -e "\nPatches applied:" >> pxxx
216
@for i in none $(debian_patches); do \
217
if [ -r debian/patches/$$i.dpatch ]; then \
218
echo -e "\n$$i:" >> pxxx; \
219
sed -n 's/^# *DP: */ /p' debian/patches/$$i.dpatch >> pxxx; \
222
@echo "Writing patched-stamp"
223
@mv -f pxxx patched-stamp