- created jitcache-arm-x86 branch
[cacao.git] / src / vm / jit / Makefile.am
1 ## src/vm/jit/Makefile.am
2 ##
3 ## Copyright (C) 1996-2005, 2006, 2007, 2008
4 ## CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
5 ##
6 ## This file is part of CACAO.
7 ##
8 ## This program is free software; you can redistribute it and/or
9 ## modify it under the terms of the GNU General Public License as
10 ## published by the Free Software Foundation; either version 2, or (at
11 ## your option) any later version.
12 ##
13 ## This program is distributed in the hope that it will be useful, but
14 ## WITHOUT ANY WARRANTY; without even the implied warranty of
15 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 ## General Public License for more details.
17 ##
18 ## You should have received a copy of the GNU General Public License
19 ## along with this program; if not, write to the Free Software
20 ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21 ## 02110-1301, USA.
22
23
24 AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/vm/jit/$(ARCH_DIR) -I$(top_srcdir)/src/vm/jit/$(ARCH_DIR)/$(OS_DIR) -I$(top_builddir)/src -I$(top_srcdir)/contrib/vmlog
25
26 LIBS =
27
28 DIST_SUBDIRS = \
29         allocator \
30         inline \
31         ir \
32         loop \
33         optimizing \
34         schedule \
35         verify \
36         \
37         intrp \
38         alpha \
39         arm \
40         i386 \
41         m68k \
42         mips \
43         parisc \
44         powerpc \
45         powerpc64 \
46         s390 \
47         sparc64 \
48         x86_64
49
50 SUBDIRS = \
51         ir \
52         optimizing \
53         $(ARCH_DIR)
54
55 ARCH_LIB = \
56         $(ARCH_DIR)/libarch.la
57
58 if ENABLE_JIT
59 SUBDIRS += \
60         allocator
61
62 OPTIMIZING_LIB = \
63         optimizing/liboptimizing.la
64 endif
65
66 if ENABLE_INTRP
67 SUBDIRS += \
68         intrp
69
70 INTRP_LIB = \
71         intrp/libintrp.la
72 endif
73
74 if ENABLE_INLINING
75 SUBDIRS += \
76         inline
77
78 INLINE_LIB = \
79         inline/libinline.la
80 endif
81
82 if ENABLE_LOOP
83 SUBDIRS += \
84         loop
85
86 LOOP_LIB = \
87         loop/libloop.la
88 endif
89
90 if USE_SCHEDULER
91 SUBDIRS += \
92         schedule
93
94 SCHEDULE_LIB = \
95         schedule/libschedule.la
96 endif
97
98 REPLACE_SOURCES =
99
100 if ENABLE_JIT
101 REG_SOURCES = \
102         reg.c \
103         reg.h
104
105 REPLACE_SOURCES += \
106         replace.h
107
108 STACK_SOURCES = \
109         stack.c \
110         stack.h
111
112 TRAP_SOURCES = \
113         trap.c \
114         trap.h
115 endif
116
117 if ENABLE_JITCACHE
118 JITCACHE_SOURCES = \
119         jitcache.c \
120         jitcache.h
121
122 endif
123
124
125 if ENABLE_REPLACEMENT
126 REPLACE_SOURCES += \
127         replace.c
128 endif
129
130 if ENABLE_VERIFIER
131 SUBDIRS += \
132         verify
133
134 VERIFIER_LIB = \
135         verify/libverify.la
136 endif
137
138 if WITH_BINUTILS_DISASSEMBLER
139 DISASS_SOURCES = disass-common.c
140 endif
141
142 noinst_HEADERS = \
143         abi.h \
144         abi-asm.h \
145         asmpart.h \
146         methodheader.h
147
148 noinst_LTLIBRARIES = \
149         libjit.la
150
151 libjit_la_SOURCES = \
152         argument.c \
153         argument.h \
154         code.c \
155         code.h \
156         codegen-common.c \
157         codegen-common.h \
158         disass.h \
159         $(DISASS_SOURCES) \
160         dseg.c \
161         dseg.h \
162         emit-common.c \
163         emit-common.h \
164         exceptiontable.c \
165         exceptiontable.h \
166         executionstate.c \
167         executionstate.h \
168         icmdtable.inc \
169         jit.c \
170         jit.h \
171         linenumbertable.c \
172         linenumbertable.h \
173         methodtree.c \
174         methodtree.h \
175         parse.c \
176         parse.h \
177         patcher-common.c \
178         patcher-common.h \
179         $(RECOMPILE_SOURCES) \
180         $(REG_SOURCES) \
181         $(JITCACHE_SOURCES) \
182         $(REPLACE_SOURCES) \
183         show.c \
184         show.h \
185         $(STACK_SOURCES) \
186         stacktrace.c \
187         stacktrace.h \
188         trace.c \
189         trace.h \
190         $(TRAP_SOURCES)
191
192 libjit_la_SOURCES += \
193         cfg.c \
194         cfg.h
195
196 libjit_la_LIBADD = \
197         allocator/liballocator.la \
198         $(INLINE_LIB) \
199         ir/libir.la \
200         $(LOOP_LIB) \
201         $(OPTIMIZING_LIB) \
202         $(PROFILE_LIB) \
203         $(SCHEDULE_LIB) \
204         $(VERIFIER_LIB) \
205         $(INTRP_LIB) \
206         $(ARCH_LIB)
207
208 if ENABLE_PYTHON
209 libjit_la_SOURCES += \
210         python.c
211 AM_CPPFLAGS += \
212         @PYTHON_CSPEC@
213 LIBS += \
214         @PYTHON_LSPEC@
215 endif
216
217
218 ## Local variables:
219 ## mode: Makefile
220 ## indent-tabs-mode: t
221 ## c-basic-offset: 4
222 ## tab-width: 8
223 ## compile-command: "automake --add-missing"
224 ## End: