File: Makefile

package info (click to toggle)
frown 0.6.1-13
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 9,956 kB
  • sloc: haskell: 35,132; makefile: 228; csh: 35; yacc: 23
file content (46 lines) | stat: -rw-r--r-- 935 bytes parent folder | download | duplicates (6)
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
.PHONY: test man clean

sources         := $(wildcard *.lg)
sessions	:= $(sources:.lg=.session)

#-----------------------------------------------------------------------------
# pattern rules

%.out : %.lg %.in test-frown
	./test-frown --generate $<

%.session : %.out sessions
	./sessions $<

#-----------------------------------------------------------------------------
# main target

all: $(sessions)

sessions: Sessions.lhs
ifeq ($(hc),nhc98)
	hmake -nhc98 -98 +CTS -H32M -CTS Sessions
	mv Sessions sessions
else
	ghc --make -o sessions Sessions.lhs
endif

# Note: all grammar files must be listed in `TestFrown.lhs'.

test-frown: TestFrown.lhs
ifeq ($(hc),nhc98)
	hmake -nhc98 -98 +CTS -H32M -CTS TestFrown
	mv TestFrown test-frown
else
	ghc --make -o test-frown TestFrown.lhs
endif

test: test-frown
	@echo "**** testing small grammars"
	@./test-frown

man: $(sessions)

clean:
	@rm -f *.hs*
	@rm -f *.o *.hi test-frown sessions