- Move cmake options into their own file, making it easier to
[metze/wireshark/wip.git] / debian / rules
index c86b5c5f7ec5c7543c735b1e61d83e2605d99158..0d9eb14b481007e35b9f3da3c02214e4d7cc65d1 100755 (executable)
 #!/usr/bin/make -f
-# MAde with the aid of dh_make, by Craig Small
+# Made with the aid of dh_make, by Craig Small
 # Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
 # Some lines taken from debmake, by Cristoph Lameter.
 
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
 
-export DH_COMPAT=3
-
+include /usr/share/dpatch/dpatch.make 
 DB2MAN=/usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl
 
 
 DEB_HOST_GNU_TYPE       ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE      ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
+PYTHON_VERSION=python2.4
+
+CFLAGS=-g -O2
+
 # Enable IEEE-conformant floating point math on alphas (not the default)
 ifeq (alpha-linux,$(DEB_HOST_GNU_TYPE))
   CFLAGS += -mieee
 endif
 
-idl2deb.1: idl2deb.dbk
-       xsltproc --nonet --novalid $(DB2MAN) $<
-
-asn2deb.1: asn2deb.dbk
-       xsltproc --nonet --novalid $(DB2MAN) $<
+CONFIGURE_FLAGS=--prefix=/usr --sysconfdir=/usr/share --datadir=/usr/share --libdir=/usr/lib/wireshark --disable-static --enable-warnings-as-errors=no --enable-setuid-install --with-plugins=/usr/lib/wireshark/plugins --with-lua=/usr/
 
 configure: configure-stamp
-configure-stamp:
+configure-stamp: patch
        dh_testdir
 
        cp /usr/share/misc/config.guess /usr/share/misc/config.sub .
        libtoolize --force --copy
        -mkdir aclocal-missing
-       (if [ ! -x ./configure ]; then \
-          ./autogen.sh --prefix=/usr --sysconfdir=/usr/share/ethereal --disable-static --disable-ssl --without-ucdsnmp --enable-gtk2 --libdir=/usr/lib/ethereal --CFLAGS="$(CFLAGS)"; \
-       fi)
-
-       ./configure --prefix=/usr --sysconfdir=/usr/share/ethereal --disable-static --disable-ssl --without-ucdsnmp --enable-gtk2 --libdir=/usr/lib/ethereal CFLAGS="$(CFLAGS)"
+       ./autogen.sh
+       CFLAGS="$(CFLAGS)" ./configure $(CONFIGURE_FLAGS)
 
        touch configure-stamp
 
-build: build-stamp idl2deb.1 asn2deb.1
+build: build-stamp
 build-stamp: configure-stamp
        $(MAKE)
 
        touch build-stamp
 
-clean:
+patch: patch-stamp
+patch-stamp:
+       dpatch apply-all
+
+
+clean: unpatch-stamp
        dh_testdir
        dh_testroot
        rm -f build-stamp configure-stamp
 
-       cp /usr/share/misc/config.guess /usr/share/misc/config.sub .
-       -$(MAKE) distclean
-       rm -f rdps ethereal.1 tethereal.1 idl2deb.1 ethereal-filter.4 asn2deb.1
+       [ ! -f Makefile ] || $(MAKE) distclean 
+       rm -f rdps wireshark.1 tshark.1 wireshark-filter.4
        rm -f conftest conftest.c
        rm -f config.guess config.sub config.log
+       rm -f config.h.in config.h configure
 
        dh_clean
 
-# Build architecture-independent files here.
-binary-indep: build
-# We have nothing to do by default.
+unpatch: unpatch-stamp
+unpatch-stamp:
+       dpatch deapply-all
+       rm -rf patch-stamp debian/patched
 
-# Build architecture-dependent files here.
-binary-arch: build
+install: build
        dh_testdir
        dh_testroot
        dh_clean -k
        dh_installdirs
 
        # Add here commands to install the files into debian/tmp
-       $(MAKE) install DESTDIR=`pwd`/debian/tmp
-       mkdir -p `pwd`/debian/tmp/usr/share/applications/
-       cp ethereal.desktop `pwd`/debian/tmp/usr/share/applications/
-       cp debian/ethereal-root.desktop `pwd`/debian/tmp/usr/share/applications/
-       mkdir -p `pwd`/debian/tmp/usr/share/pixmaps/
-       cp image/hi48-app-ethereal.png `pwd`/debian/tmp/usr/share/pixmaps/
-       cp image/eicon3d32.xpm `pwd`/debian/tmp/usr/share/pixmaps/
-       mkdir -p `pwd`/debian/tmp/usr/lib/python2.3/site-packages/
-       install -m 755 `pwd`/idl2deb `pwd`/debian/tmp/usr/bin/
-       install -m 755 `pwd`/asn2deb `pwd`/debian/tmp/usr/bin/
-       cp `pwd`/ethereal_be.py `pwd`/ethereal_gen.py \
-                       `pwd`/debian/tmp/usr/lib/python2.3/site-packages/
-       mkdir -p `pwd`/debian/tmp/usr/include/ethereal/
-       for F in `cat debian/ethereal-dev.header-files`; do \
-               cp --parents $$F `pwd`/debian/tmp/usr/include/ethereal; \
+       $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
+       mkdir -p $(CURDIR)/debian/tmp/usr/share/applications/
+       cp debian/wireshark.desktop $(CURDIR)/debian/tmp/usr/share/applications/
+       cp tools/idl2wrs.sh $(CURDIR)/debian/tmp/usr/bin/
+       #cp debian/wireshark-root.desktop $(CURDIR)/debian/tmp/usr/share/applications/
+       mkdir -p $(CURDIR)/debian/tmp/usr/share/pixmaps/
+       cp image/hi48-app-wireshark.png $(CURDIR)/debian/tmp/usr/share/pixmaps/
+       cp image/wsicon32.xpm $(CURDIR)/debian/tmp/usr/share/pixmaps/
+       mkdir -p $(CURDIR)/debian/tmp/etc/wireshark/
+       mv $(CURDIR)/debian/tmp/usr/share/wireshark/init.lua \
+               $(CURDIR)/debian/tmp/etc/wireshark/
+       ln -s /etc/wireshark/init.lua \
+               $(CURDIR)/debian/tmp/usr/share/wireshark/init.lua
+       mkdir -p $(CURDIR)/debian/tmp/usr/lib/$(PYTHON_VERSION)/site-packages/
+       cp $(CURDIR)/tools/wireshark_be.py $(CURDIR)/tools/wireshark_gen.py \
+                       $(CURDIR)/debian/tmp/usr/lib/$(PYTHON_VERSION)/site-packages/
+       mkdir -p $(CURDIR)/debian/tmp/usr/include/wireshark/
+       for F in `cat debian/wireshark-dev.header-files`; do \
+               cp --parents $$F $(CURDIR)/debian/tmp/usr/include/wireshark; \
        done
-       # .a is no longer built; why was is used ?
-       #cp `pwd`/wiretap/libwiretap.a `pwd`/debian/tmp/usr/lib/
-       -rm -rf `pwd`/debian/tmp/usr/man
+       -rm -rf $(CURDIR)/debian/tmp/usr/man
        dh_installman
 
        dh_movefiles
+       dh_pysupport
        dh_installdocs
-       -rm debian/menu   # from upstream debian/ package
        dh_installmenu
        dh_installchangelogs NEWS
+
+# Build architecture-independent files here.
+binary-indep: install
+# We have nothing to do by default.
+
+check: install
+       # check all necessary headers are included
+       gcc -c debian/headers-check.c `pkg-config --cflags glib-2.0` -Idebian/wireshark-dev/usr/include/ -Idebian/wireshark-dev/usr/include/wireshark/ -o /dev/null
+
+# Build architecture-dependent files here.
+binary-arch: install check
        dh_strip
        dh_compress
-       dh_fixperms
+       dh_fixperms -Xdumpcap
 
        dh_installdeb
-       dh_shlibdeps
+       LD_LIBRARY_PATH=/usr/lib/wireshark/:/usr/lib/libfakeroot/ dh_shlibdeps
        dh_gencontrol
        dh_md5sums
        dh_builddeb
 
-source diff:                                                                  
+source diff:
        @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
 
 binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary
+.PHONY: build clean install check binary-indep binary-arch binary