File: rules

package info (click to toggle)
cpphs 0.7-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 360 kB
  • ctags: 18
  • sloc: haskell: 939; makefile: 79; sh: 36; ansic: 11
file content (117 lines) | stat: -rwxr-xr-x 2,469 bytes parent folder | download | duplicates (2)
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
#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# This file is public domain software, originally written by Joey Hess. 

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

GHC := $(wildcard /usr/bin/ghc6)
NHC := $(wildcard /usr/bin/nhc98)
HMAKE := $(wildcard /usr/bin/hmake)
HUGS := $(wildcard /usr/bin/hugs)

BINDIR = `pwd`/debian/`dh_listpackages`/usr/bin
LIBDIR = `pwd`/debian/`dh_listpackages`/usr/lib/cpphs

ifneq '$(GHC)' ''
    COMPILER=ghc
else
    ifneq '$(if $(NHC),$(HMAKE),)' ''
        COMPILER=nhc
    else
        ifneq '$(HUGS)' ''
            COMPILER=hugs
        else
            $(error No Haskell implementation found)
        endif
    endif
endif

build: build-stamp
build-stamp:
	dh_testdir

	case "$(COMPILER)" in \
	    ghc) \
	        $(GHC) --make Main -o cpphs -Wall -O2;; \
	    nhc) \
	        $(HMAKE) -hc=$(NHC) Main -package base -Wall -O2 && \
	            mv Main cpphs;; \
	    hugs) \
	        echo "#!/bin/sh" > cpphs && \
	        echo "runhugs `pwd`/Main.hs \"\$$@\"" >> cpphs && \
	        chmod +x cpphs;; \
	    *) \
	        echo "No Haskell implementation found" >&2 \
	        exit 1;; \
	esac
	sh debian/haskell-testsuite-inplace

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp

	rm -f *.o *.hi cpphs Main tests/out

	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	mkdir -p $(BINDIR)
ifeq '$(COMPILER)' 'hugs'
	echo "hugs=hugs" >> debian/cpphs.substvars
	echo "#!/bin/sh" > $(BINDIR)/cpphs
	echo "runhugs /usr/lib/cpphs/Main.hs \"\$$@\"" >> $(BINDIR)/cpphs
	chmod +x $(BINDIR)/cpphs
	mkdir -p $(LIBDIR)
	cp *.hs $(LIBDIR)
else
	cp cpphs $(BINDIR)
endif

# 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 docs/index.html
	dh_installexamples
#	dh_install
#	dh_installmenu
#	dh_installdebconf	
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installcatalogs
#	dh_installpam
#	dh_installmime
#	dh_installinit
#	dh_installcron
#	dh_installinfo
#	dh_undocumented
	dh_installman debian/cpphs.1
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
#	dh_perl
#	dh_python
#	dh_makeshlibs
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install