* Merged executionstate branch.
[cacao.git] / src / vm / jit / Makefile.am
index 7834c9ab118f343d076642b8a094669445540777..c44f0129e57414a011bf69ab01d8158e4242651b 100644 (file)
-## Process this file with automake to produce Makefile.in
+## src/vm/jit/Makefile.am
+##
+## Copyright (C) 1996-2005, 2006, 2007, 2008
+## CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
+##
+## This file is part of CACAO.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2, or (at
+## your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+## 02110-1301, USA.
 
-# $Id: Makefile.am 696 2003-12-06 20:10:05Z edwin $
 
+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
 
-SUBDIRS = . loop @ARCH_DIR@
-DIST_SUBDIRS = loop alpha i386 mips powerpc x86_64
+LIBS =
 
-INCLUDES = -I$(top_srcdir)/jit/@ARCH_DIR@ -I$(top_srcdir)/jit
+DIST_SUBDIRS = \
+       allocator \
+       inline \
+       ir \
+       loop \
+       optimizing \
+       schedule \
+       verify \
+       \
+       intrp \
+       alpha \
+       arm \
+       i386 \
+       m68k \
+       mips \
+       parisc \
+       powerpc \
+       powerpc64 \
+       s390 \
+       sparc64 \
+       x86_64
 
-EXTRA_DIST = \
-       jit.c \
-       jit.h \
-       codegen.inc \
-       parse.c \
-       reg.inc \
+SUBDIRS = \
+       ir \
+       optimizing \
+       $(ARCH_DIR)
+
+ARCH_LIB = \
+       $(ARCH_DIR)/libarch.la
+
+if ENABLE_JIT
+SUBDIRS += \
+       allocator
+
+OPTIMIZING_LIB = \
+       optimizing/liboptimizing.la
+endif
+
+if ENABLE_INTRP
+SUBDIRS += \
+       intrp
+
+INTRP_LIB = \
+       intrp/libintrp.la
+endif
+
+if ENABLE_INLINING
+SUBDIRS += \
+       inline
+
+INLINE_LIB = \
+       inline/libinline.la
+endif
+
+if ENABLE_LOOP
+SUBDIRS += \
+       loop
+
+LOOP_LIB = \
+       loop/libloop.la
+endif
+
+if USE_SCHEDULER
+SUBDIRS += \
+       schedule
+
+SCHEDULE_LIB = \
+       schedule/libschedule.la
+endif
+
+REPLACE_SOURCES =
+
+if ENABLE_JIT
+REG_SOURCES = \
+       reg.c \
+       reg.h
+
+REPLACE_SOURCES += \
+       replace.h
+
+STACK_SOURCES = \
        stack.c \
-       inline.c \
-       sets.c \
-       sets.h \
-       parseRT.c \
-       parseRTprint.h \
-       parseRTstats.c \
-       typecheck.c
+       stack.h
+endif
+
+if ENABLE_REPLACEMENT
+REPLACE_SOURCES += \
+       replace.c
+endif
+
+if ENABLE_VERIFIER
+SUBDIRS += \
+       verify
+
+VERIFIER_LIB = \
+       verify/libverify.la
+endif
+
+if WITH_BINUTILS_DISASSEMBLER
+DISASS_SOURCES = disass-common.c
+endif
 
 noinst_HEADERS = \
+       abi.h \
+       abi-asm.h \
+       asmpart.h \
+       methodheader.h
+
+noinst_LTLIBRARIES = \
+       libjit.la
+
+libjit_la_SOURCES = \
+       argument.c \
+       argument.h \
+       code.c \
+       code.h \
+       codegen-common.c \
+       codegen-common.h \
+       disass.h \
+       $(DISASS_SOURCES) \
+       dseg.c \
+       dseg.h \
+       emit-common.c \
+       emit-common.h \
+       exceptiontable.c \
+       exceptiontable.h \
+       executionstate.c \
+       executionstate.h \
+       icmdtable.inc \
+       jit.c \
+       jit.h \
+       linenumbertable.c \
+       linenumbertable.h \
+       methodtree.c \
+       methodtree.h \
+       parse.c \
        parse.h \
-       stack.h \
-       reg.h \
-       inline.h \
-       parseRT.h \
-       parseRTstats.h
+       patcher-common.c \
+       patcher-common.h \
+       $(RECOMPILE_SOURCES) \
+       $(REG_SOURCES) \
+       $(REPLACE_SOURCES) \
+       show.c \
+       show.h \
+       $(STACK_SOURCES) \
+       stacktrace.c \
+       stacktrace.h \
+       trace.c \
+       trace.h
+
+libjit_la_SOURCES += \
+       cfg.c \
+       cfg.h
 
-noinst_LIBRARIES = libjit.a
+libjit_la_LIBADD = \
+       allocator/liballocator.la \
+       $(INLINE_LIB) \
+       ir/libir.la \
+       $(LOOP_LIB) \
+       $(OPTIMIZING_LIB) \
+       $(PROFILE_LIB) \
+       $(SCHEDULE_LIB) \
+       $(VERIFIER_LIB) \
+       $(INTRP_LIB) \
+       $(ARCH_LIB)
 
-libjit_a_SOURCES = jit.c parse.c stack.c inline.c sets.c parseRT.c parseRTstats.c typecheck.c
+if ENABLE_PYTHON
+libjit_la_SOURCES += \
+       python.c
+AM_CPPFLAGS += \
+       @PYTHON_CSPEC@
+LIBS += \
+       @PYTHON_LSPEC@
+endif
 
-all-local:
-       $(MAKE) $(AM_MAKEFLAGS) -C .. jit/@ARCH_DIR@/offsets.h
 
 ## Local variables:
 ## mode: Makefile