015a917ce6cc392c394ac03c84dfd99e8638e1cd
[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_REPLACEMENT
118 REPLACE_SOURCES += \
119         replace.c
120 endif
121
122 if ENABLE_VERIFIER
123 SUBDIRS += \
124         verify
125
126 VERIFIER_LIB = \
127         verify/libverify.la
128 endif
129
130 if WITH_BINUTILS_DISASSEMBLER
131 DISASS_SOURCES = disass-common.c
132 endif
133
134 noinst_HEADERS = \
135         abi.h \
136         abi-asm.h \
137         asmpart.h \
138         methodheader.h
139
140 noinst_LTLIBRARIES = \
141         libjit.la
142
143 libjit_la_SOURCES = \
144         argument.c \
145         argument.h \
146         code.c \
147         code.h \
148         codegen-common.c \
149         codegen-common.h \
150         disass.h \
151         $(DISASS_SOURCES) \
152         dseg.c \
153         dseg.h \
154         emit-common.c \
155         emit-common.h \
156         exceptiontable.c \
157         exceptiontable.h \
158         executionstate.c \
159         executionstate.h \
160         icmdtable.inc \
161         jit.c \
162         jit.h \
163         linenumbertable.c \
164         linenumbertable.h \
165         methodtree.c \
166         methodtree.h \
167         parse.c \
168         parse.h \
169         patcher-common.c \
170         patcher-common.h \
171         $(RECOMPILE_SOURCES) \
172         $(REG_SOURCES) \
173         $(REPLACE_SOURCES) \
174         show.c \
175         show.h \
176         $(STACK_SOURCES) \
177         stacktrace.c \
178         stacktrace.h \
179         trace.c \
180         trace.h \
181         $(TRAP_SOURCES)
182
183 libjit_la_SOURCES += \
184         cfg.c \
185         cfg.h
186
187 libjit_la_LIBADD = \
188         allocator/liballocator.la \
189         $(INLINE_LIB) \
190         ir/libir.la \
191         $(LOOP_LIB) \
192         $(OPTIMIZING_LIB) \
193         $(PROFILE_LIB) \
194         $(SCHEDULE_LIB) \
195         $(VERIFIER_LIB) \
196         $(INTRP_LIB) \
197         $(ARCH_LIB)
198
199 if ENABLE_PYTHON
200 libjit_la_SOURCES += \
201         python.c
202 AM_CPPFLAGS += \
203         @PYTHON_CSPEC@
204 LIBS += \
205         @PYTHON_LSPEC@
206 endif
207
208
209 ## Local variables:
210 ## mode: Makefile
211 ## indent-tabs-mode: t
212 ## c-basic-offset: 4
213 ## tab-width: 8
214 ## compile-command: "automake --add-missing"
215 ## End: