tagged release 0.6.4
[parrot.git] / languages / pugs / config / makefiles / root.in
blob61efa2cc9901c53655dba1246969ff5177080a6f
1 RM_F    = @rm_f@
2 PERL    = @perl@
3 PARROT  = ../../parrot@exe@
4 PBC_MERGE = ../../pbc_merge@exe@
5 #CONDITIONED_LINE(darwin):
6 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
7 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
9 LIBPATH  = lib
10 BUILD   = $(PERL) @build_dir@/tools/build/dynpmc.pl
11 DESTDIR = @build_dir@/runtime/parrot/dynext
12 O       = @o@
13 CLASSDIR = pmc
14 LOAD_EXT = @load_ext@
16 PMCS = \
17     pugsany \
18     pugsbit \
19     pugsbool \
20     pugscode \
21     pugscapture \
22     pugsint \
23     pugsmapping \
24     pugsnum \
25     pugsmodule \
26     pugsstr \
27     pugstuple \
28     pugsundef
30 PBCS =
32 all: pmcs $(PBCS)
34 pmcs:
35         @cd $(CLASSDIR) && $(BUILD) generate $(PMCS)
36         @cd $(CLASSDIR) && $(BUILD) compile $(PMCS)
37         @cd $(CLASSDIR) && $(BUILD) linklibs $(PMCS)
38         @cd $(CLASSDIR) && $(BUILD) copy "--destination=$(DESTDIR)" $(PMCS)
40 test:   all
41         cd .. && $(PERL) -I../lib -Ipugs/t pugs/t/harness
43 CLEANERS = \
44 "t/lib/*.pir" \
45 "t/pmc/*.pir" \
46 "t/*.pir" \
47 "t/*.p6" \
48 "t/*.orig_out" \
49 "t/*.parrot_out" \
50 "$(CLASSDIR)/*.dump" \
51 "$(CLASSDIR)/*.c" \
52 "$(CLASSDIR)/*.h" \
53 "$(CLASSDIR)/*$(LOAD_EXT)" \
54 "$(CLASSDIR)/*$(O)" \
55 "$(LIBPATH)/*.pbc"
57 clean:
58         $(RM_F) $(CLEANERS)
60 realclean: clean
61         $(RM_F) Makefile
63 distclean: clean
64         $(RM_F) Makefile