summaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules115
1 files changed, 115 insertions, 0 deletions
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 00000000..d93631a9
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,115 @@
+#!/usr/bin/make -f
+# debian/rules for coq
+
+include /usr/share/dpatch/dpatch.make
+
+COQPREF=$(CURDIR)/debian/tmp
+ADDPREF=COQINSTALLPREFIX=$(COQPREF)
+
+CONFIGUREOPTS=--prefix /usr --mandir /usr/share/man \
+ --emacslib /usr/share/emacs/site-lisp/coq --reals all
+
+configure: configure-stamp
+configure-stamp:
+ dh_testdir
+ if [ -e /usr/bin/ocamlc.opt ]; \
+ then \
+ ./configure -opt $(CONFIGUREOPTS); \
+ else \
+ ./configure $(CONFIGUREOPTS); \
+ fi
+ touch configure-stamp
+
+build: patch-stamp configure-stamp build-stamp
+build-stamp:
+ dh_testdir
+ if grep -q BEST=opt config/Makefile; \
+ then \
+ ($(MAKE) check \
+ && touch opt-stamp) \
+ || (echo WARNING: NATIVE CODE COMPILATION FAILED \
+ && echo Trying to build coq in bytecode instead \
+ && $(MAKE) archclean clean \
+ && touch test-suite/success/debian.v8 \
+ && $(MAKE) BEST=byte HASCOQIDE=byte check \
+ && echo NATIVE CODE COMPILATION FAILED \
+ && echo Coq was built in bytecode instead); \
+ else \
+ $(MAKE) BEST=byte HASCOQIDE=byte check; \
+ fi
+ touch build-stamp
+
+clean: unpatch
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp configure-stamp opt-stamp
+
+ -$(MAKE) clean
+ -$(MAKE) archclean
+ rm -f bin/parser.opt
+ rm -f tools/coqdoc/*.cm[oi]
+ rm -f config/coq_config.ml config/Makefile test-suite/check.log
+
+ dh_clean
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+ if [ -e opt-stamp ]; then \
+ $(MAKE) $(ADDPREF) install; \
+ else \
+ $(MAKE) BEST=byte HASCOQIDE=byte $(ADDPREF) install; \
+ fi
+
+ -for i in $(COQPREF)/usr/bin/*.opt; do \
+ echo "Stripping: $$i"; \
+ strip -R .note -R .comment $$i; \
+ done
+ cp debian/coq.xpm debian/coq/usr/share/pixmaps/coq.xpm
+ cp debian/coq.desktop debian/coqide/usr/share/applnk/Development
+
+ dh_install --sourcedir=$(COQPREF)
+
+ cp ide/index_urls.txt debian/coqide/usr/lib/coq/ide/index_urls.txt
+ if [ -e opt-stamp ]; then \
+ cp debian/coq/usr/share/man/man1/coq-interface.1 debian/coq/usr/share/man/man1/coq-interface.opt.1; \
+ cp debian/coqide.1 debian/coqide/usr/share/man/man1/coqide.opt.1; \
+ fi
+ cp debian/coqide.1 debian/coqide/usr/share/man/man1/coqide.1
+ cp debian/coqide.1 debian/coqide/usr/share/man/man1/coqide.byte.1
+ cp debian/coqc.1 debian/coq/usr/share/man/man1/coqc.1
+ cp debian/coq-interface.1 debian/coq/usr/share/man/man1/coq-interface.1
+ cp debian/coq_makefile.1 debian/coq/usr/share/man/man1/coq_makefile.1
+ cp debian/coqmktop.1 debian/coq/usr/share/man/man1/coqmktop.1
+ cp debian/coqtop.1 debian/coq/usr/share/man/man1/coqtop.1
+
+binary-indep: build install
+
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installdocs
+ dh_installemacsen
+ dh_installchangelogs CHANGES
+ dh_link
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ if [ -e opt-stamp ]; then \
+ dh_gencontrol -pcoq -u-Vocaml:Runtime=""; \
+ dh_gencontrol -pcoqide -u-Vocaml:Runtime=""; \
+ else \
+ dh_gencontrol -pcoq -u-Vocaml:Runtime="ocaml-base-nox-3.08"; \
+ dh_gencontrol -pcoqide -u-Vocaml:Runtime="ocaml-base-nox-3.08"; \
+ fi
+ dh_gencontrol -pcoq-libs
+ dh_gencontrol -pcoq7-libs
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure