123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164 |
- #!/usr/bin/make -f
- # -*- makefile -*-
- # Sample debian/rules that uses debhelper.
- # GNU copyright 1997 to 1999 by Joey Hess.
- # Uncomment this to turn on verbose mode.
- #export DH_VERBOSE=1
- # 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)
- CFLAGS = -Wall -g
- export PACKAGE=tor
- include /usr/share/dpatch/dpatch.make
- # Do not optimize the build with "noopt"
- ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -O0
- else
- CFLAGS += -O2
- endif
- # Do not strip the binary with "nostrip"
- #ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
- # INSTALL_PROGRAM += -s
- #endif
- # Prevent the design paper from being built with "nodoc"
- ifneq (,$(findstring nodoc,$(DEB_BUILD_OPTIONS)))
- BUILD_DOC = no
- endif
- # Prevent the unit tests from being run with "nocheck"
- ifneq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
- RUN_TEST = no
- endif
- ifneq (,$(findstring notest,$(DEB_BUILD_OPTIONS)))
- RUN_TEST = no
- endif
- CONF_OPTIONS =
- # build against libdmalloc4 - it better be installed
- ifneq (,$(findstring with-dmalloc,$(DEB_BUILD_OPTIONS)))
- CONF_OPTIONS += --with-dmalloc
- endif
- configure: patch-stamp
- config.status: 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 \
- --localstatedir=/var \
- --sysconfdir=/etc \
- $(CONF_OPTIONS)
- build: build-stamp
- build-stamp: config.status
- dh_testdir
- $(MAKE)
- @echo
- @echo
- # Running unit tests
- if [ "$(RUN_TEST)" != "no" ]; then \
- src/or/test; \
- else \
- echo -e "\n\nSkipping unittests\n\n"; \
- fi
- @echo
- # make design paper
- if [ "$(BUILD_DOC)" != "no" ]; then \
- make -C doc/design-paper tor-design.ps tor-design.pdf || \
- ( echo -e "*\n*\n*\n*"; \
- echo "* Building some docs failed, perhaps because you did not install the"; \
- echo "* declared build dependencies and then used -o with dpkg-buildpackage."; \
- echo "*"; \
- echo "* If you want to skip this part, you can set nodoc in DEB_BUILD_OPTIONS" ; \
- echo "* and start the build again. DEB_BUILD_OPTIONS=nodoc dpkg-buildpackage.."; \
- echo -e "*\n*\n*\n*"; \
- false ); \
- else \
- echo -e "\n\nSkipping tor-design.{ps,pdf}\n\n"; \
- fi
- touch build-stamp
- clean: unpatch
- dh_testdir
- dh_testroot
- rm -f build-stamp
- -$(MAKE) distclean
- dh_clean
- install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs
- $(MAKE) install DESTDIR=$(CURDIR)/debian/tor
- # move tor to where it belongs
- mv $(CURDIR)/debian/tor/etc/tor/torrc.sample $(CURDIR)/debian/tor/etc/tor/torrc
- mv $(CURDIR)/debian/tor/usr/bin/tor $(CURDIR)/debian/tor/usr/sbin/tor
- install -d $(CURDIR)/debian/tor/usr/share/man/man8
- mv $(CURDIR)/debian/tor/usr/share/man/man1/tor.1 $(CURDIR)/debian/tor/usr/share/man/man8/tor.8
- install -m 755 contrib/torify $(CURDIR)/debian/tor/usr/bin
- install -m 644 contrib/torify.1 $(CURDIR)/debian/tor/usr/share/man/man1
- install -m 644 contrib/tor-tsocks.conf $(CURDIR)/debian/tor/etc/tor
- install -m 644 debian/tor.lintian-override $(CURDIR)/debian/tor/usr/share/lintian/overrides/tor
- dh_link usr/share/man/man8/tor.8 usr/share/man/man5/torrc.5
- rm -f $(CURDIR)/debian/tor/usr/bin/tor-control.py
- # Build architecture-independent files here.
- binary-indep: build install
- # We have nothing to do by default.
- # Build architecture-dependent files here.
- binary-arch: build install
- dh_testdir
- dh_testroot
- dh_installchangelogs ChangeLog
- dh_installdocs
- if [ "$(BUILD_DOC)" != "no" ]; then \
- install -m 644 doc/design-paper/tor-design.ps $(CURDIR)/debian/tor/usr/share/doc/tor/; \
- install -m 644 doc/design-paper/tor-design.pdf $(CURDIR)/debian/tor/usr/share/doc/tor/; \
- fi
- dh_installexamples
- # dh_install
- # dh_installdebconf
- dh_installlogrotate
- # dh_installemacsen
- # dh_installmime
- dh_installinit
- # dh_installcron
- dh_installman
- dh_link
- #dh_strip
- dh_compress
- dh_fixperms
- dh_installdeb
- dh_shlibdeps
- dh_gencontrol
- dh_md5sums
- dh_builddeb
- binary: binary-indep binary-arch
- .PHONY: build clean binary-indep binary-arch binary install
|