1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
|
#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
export QUILT_PATCHES := debian/patches
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DDIR = $(CURDIR)/debian/tmp
DOCDIR = $(DDIR)/usr/share/doc/libmemchan-tcl/html
MDIR = $(CURDIR)/debian/libmemchan-tcl
MDDIR = $(CURDIR)/debian/libmemchan-tcl-dev
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
unpatch:
dh_testdir
quilt pop -a || test $$? = 2
rm -rf patch-stamp .pc
clean: clean-patched unpatch
dh_testdir
dh_testroot
dh_clean
clean-patched: patch-stamp
dh_testdir
dh_testroot
rm -f build-stamp
rm -f doc/*.3tcl
[ ! -f Makefile ] || $(MAKE) distclean
patch: patch-stamp
patch-stamp:
dh_testdir
quilt push -a || test $$? = 2
touch patch-stamp
config.status: patch-stamp configure
dh_testdir
CFLAGS="$(CFLAGS)" \
./configure --host=$(DEB_HOST_GNU_TYPE) \
--build=$(DEB_BUILD_GNU_TYPE) \
--prefix=/usr \
--mandir=\$${prefix}/share/man \
--infodir=\$${prefix}/share/info \
--with-tcl=/usr/lib \
--with-tclinclude=/usr/include/tcl \
--enable-threads
build: build-stamp
build-stamp: config.status
dh_testdir
$(MAKE)
touch build-stamp
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
#
# Install the package into debian/tmp.
$(MAKE) install-binaries DESTDIR=$(DDIR)
$(MAKE) install-libraries DESTDIR=$(DDIR)
install -m 755 -d $(DDIR)/usr/lib/tcltk
mv $(DDIR)/usr/lib/Memchan* $(DDIR)/usr/lib/tcltk
#
# Cleanup manpages
(cd doc && \
for f in *.n ; do \
sed -e'/^\.so man.macros/ d' \
-e'/^\.B[SE]$$/ d' \
-e's/^\.TH \([^ ]\+\) n/.TH \1 3tcl/' \
$$f > `basename $$f .n`.3tcl|| exit 1; \
done)
#
# Copy HTML docs
mkdir -p $(DOCDIR)
cp doc/*.html $(DOCDIR)
#
# Cleanup docs
cd $(DOCDIR) && \
for f in *.html ; do \
sed -i -e's/(n)/(3tcl)/g' $$f; \
done
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do.
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir -a
dh_testroot -a
dh_installchangelogs -a -A ChangeLog
dh_installdocs -a
dh_installexamples -a
dh_install -a
dh_installman -a
#
# Fix HTML docs and manpages of libmemchan-tcl-dev
mv $(MDIR)/usr/share/doc/libmemchan-tcl/html/memchanapi.* \
$(MDDIR)/usr/share/doc/libmemchan-tcl-dev/html/
mv $(MDIR)/usr/share/man/man3/memchanapi.* \
$(MDDIR)/usr/share/man/man3/
#
# Generate documentation indices
tclsh debian/gen_index.tcl $(MDIR)/usr/share/doc/libmemchan-tcl/html \
>$(MDIR)/usr/share/doc/libmemchan-tcl/html/index.html
tclsh debian/gen_index.tcl $(MDDIR)/usr/share/doc/libmemchan-tcl-dev/html \
>$(MDDIR)/usr/share/doc/libmemchan-tcl-dev/html/index.html
#
dh_link -a
dh_strip -a
dh_compress -a
dh_fixperms -a
dh_installdeb -a
dh_shlibdeps -a
tcltk-depends -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary: binary-indep binary-arch
get-orig-source:
wget -O memchan_2.2.1.orig.tar.gz \
http://prdownloads.sourceforge.net/memchan/memchan-2.2.1.tar.gz
.PHONY: patch unpatch clean-patched build clean binary-indep binary-arch binary install get-orig-source
|