bzr branch
http://golem.ph.utexas.edu/~distler/code/itexToMML/
|
1
by Jacques Distler
Initial commit. |
1 |
#YACC=yacc |
2 |
YACC=bison -y -v |
|
3 |
LEX=flex -P$(YYPREFIX) -olex.yy.c |
|
4 |
||
5 |
RM=rm -f |
|
6 |
INSTALL=install -c |
|
7 |
BINDIR=/usr/local/bin |
|
8 |
||
9 |
YYPREFIX=itex2MML_yy |
|
10 |
||
11 |
all: y.tab.c lex.yy.c itex2MML |
|
12 |
||
13 |
y.tab.c: itex2MML.y |
|
14 |
$(YACC) -p $(YYPREFIX) -d itex2MML.y |
|
15 |
||
16 |
lex.yy.c: itex2MML.l |
|
17 |
$(LEX) itex2MML.l |
|
18 |
||
19 |
y.tab.o: y.tab.c itex2MML.h |
|
20 |
$(CC) -c -o y.tab.o y.tab.c |
|
21 |
||
22 |
lex.yy.o: lex.yy.c y.tab.c itex2MML.h |
|
23 |
$(CC) -c -o lex.yy.o lex.yy.c |
|
24 |
||
25 |
itex2MML: lex.yy.o y.tab.o itex2MML.cc itex2MML.h |
|
26 |
$(CXX) -o itex2MML lex.yy.o y.tab.o itex2MML.cc |
|
27 |
||
28 |
clean: |
|
29 |
$(RM) y.tab.* lex.yy.c itex2MML *.o *.output *.so *.dll *.sl *.bundle itex2MML_ruby.c |
|
30 |
||
31 |
install: itex2MML |
|
32 |
$(INSTALL) itex2MML $(BINDIR) |
|
33 |
||
34 |
RUBY_CFLAGS = $(shell ruby -e 'require "rbconfig"; print Config::CONFIG["CCDLFLAGS"]') |
|
35 |
RUBY_LD = MACOSX_DEPLOYMENT_TARGET=10.4 $(shell ruby -e 'require "rbconfig"; print Config::CONFIG["LDSHARED"]') |
|
36 |
RUBYLIBDIR =$(shell ruby -e 'require "rbconfig"; print Config::CONFIG["libdir"]') |
|
37 |
RUBY_PREFIX = $(RUBYLIBDIR)/ruby |
|
38 |
RUBY_ARCH = $(shell ruby -e 'require "rbconfig"; print Config::CONFIG["arch"]') |
|
39 |
RUBYDIR = $(shell ruby -e 'require "rbconfig"; print Config::CONFIG["archdir"]') |
|
40 |
RUBY_SITEDIR = $(shell ruby -e 'require "rbconfig"; print Config::CONFIG["sitelibdir"]') |
|
41 |
RUBY_SITEARCHDIR = $(shell ruby -e 'require "rbconfig"; print Config::CONFIG["sitearchdir"]') |
|
42 |
DYLIB_EXT = $(shell ruby -e 'require "rbconfig"; print Config::CONFIG["DLEXT"]') |
|
43 |
||
44 |
itex2MML_ruby.c: itex2MML.i |
|
45 |
swig -ruby -o itex2MML_ruby.c itex2MML.i |
|
46 |
||
47 |
itex2MML_ruby.o: itex2MML_ruby.c |
|
48 |
$(CC) $(RUBY_CFLAGS) -c itex2MML_ruby.c -I$(RUBYDIR) -o itex2MML_ruby.o |
|
49 |
||
50 |
y.tab_ruby.o: y.tab.c |
|
51 |
$(CC) -Ditex2MML_CAPTURE -c -o y.tab_ruby.o y.tab.c |
|
52 |
||
53 |
ruby: itex2MML_ruby.o y.tab_ruby.o lex.yy.o |
|
54 |
$(RUBY_LD) itex2MML_ruby.o y.tab_ruby.o lex.yy.o -L$(RUBYLIBDIR) -lruby -o itex2MML.$(DYLIB_EXT) |
|
55 |
||
56 |
test_ruby: |
|
57 |
ruby ./itextomml.rb |
|
58 |
||
59 |
install_ruby: itex2MML.$(DYLIB_EXT) |
|
60 |
$(INSTALL) itex2MML.$(DYLIB_EXT) $(RUBY_SITEARCHDIR) |
|
61 |
$(INSTALL) itextomml.rb $(RUBY_SITEDIR) |