as3: improved protected handling, xml support. added 'arguments' keyword
[swftools.git] / lib / as3 / Makefile
1 all: parser swfdump mklib
2 tests: testwrite testrewrite testpaths testreadwrite 
3
4 D=-g -pg
5
6 MODULES = abc.o opcodes.o code.o pool.o scripts.o expr.o common.o initcode.o
7 SOURCES = abc.c abc.h pool.c pool.h files.c files.h code.c code.h registry.c registry.h opcodes.c opcodes.h builtin.c builtin.h compiler.c compiler.h parser.tab.h parser.tab.c tokenizer.yy.c scripts.c import.c import.h expr.c expr.h common.c common.h initcode.c initcode.h
8
9 tokenizer.yy.c: tokenizer.lex tokenizer.h
10         flex -Pas3_ -8 -B -otokenizer.yy.c tokenizer.lex
11
12 parser.tab.h parser.tab.c: parser.y parser.h skeleton.m4 Makefile
13         bison -S ./skeleton.m4 -v --defines -pa3_ parser.y -o parser.tab.c
14
15 main.o: main.c parser.tab.h parser.h
16         gcc $(D) -c main.c -o main.o
17
18 mklib.o: mklib.c parser.tab.h parser.h
19         gcc $(D) -c mklib.c -o mklib.o
20
21 parser: main.o tokenizer.yy.o ../librfxswf.a ../libbase.a parser.tab.h 
22         gcc $(D) main.o ../librfxswf.a ../libbase.a -o parser -lz
23
24 rfxswf_modules=../drawer.o ../rfxswf.o ../modules/*.o ../lame/*.o ../action/*.o ../MD5.o $(MODULES)
25 mklib: mklib.o $(rfxswf_modules) import.o registry.o tokenizer.yy.o parser.tab.o files.o compiler.o ../libbase.a
26         gcc $(D) mklib.o $(rfxswf_modules) import.o registry.o tokenizer.yy.o parser.tab.o files.o compiler.o ../libbase.a -o mklib -lz -lm -lfreetype -ljpeg
27
28 ../q.o: ../q.c ../q.h ../mem.h
29         cd ..; make q.o; cd -
30
31 ../librfxswf.a: ../rfxswf.h ../rfxswf.c $(SOURCES)
32         cd ..; make librfxswf.a
33
34 ../libbase.a: ../q.c ../q.h ../mem.c ../mem.h
35         cd ..; make libbase.a
36
37 swfdump: ../librfxswf.a ../../src/swfdump.c ../libbase.a $(SOURCES) ../q.c ../q.h
38         gcc -g ../../src/swfdump.c ../librfxswf.a ../libbase.a -ljpeg -lz -lfreetype -o swfdump
39
40 pdf2swf: ../librfxswf.a ../../src/pdf2swf.c ../libpdf.a ../libbase.a
41         g++ -g ../../src/pdf2swf.c ../libgfxswf.a ../libpdf.a ../libgfx.a ../librfxswf.a ../libbase.a -ljpeg -lz -lfreetype -lfontconfig -o pdf2swf 
42
43 testreadwrite: testreadwrite.c ../librfxswf.a ../libbase.a
44         gcc $(D) -DMAIN -o testreadwrite testreadwrite.c ../librfxswf.a ../libbase.a -lz -ljpeg
45
46 testrewrite: testrewrite.c ../librfxswf.a ../libbase.a
47         gcc $(D) -DMAIN -o testrewrite testrewrite.c ../librfxswf.a ../libbase.a -lz -ljpeg
48
49 testwrite: testwrite.c ../librfxswf.a ../libbase.a
50         gcc $(D) -DMAIN -o testwrite testwrite.c ../librfxswf.a ../libbase.a -lz -ljpeg
51
52 testpaths: testpaths.c ../librfxswf.a ../libbase.a
53         gcc $(D) -DMAIN -o testpaths testpaths.c ../librfxswf.a ../libbase.a -lz -ljpeg
54
55 clean:
56         rm -f *.o *.yy.c *.tab.c *.tab.h testreadwrite swfdump testpaths testwrite ../librfxswf.a
57
58 .PHONY: tests