Added LLVM copyright to Makefiles.
[oota-llvm.git] / tools / lli / Makefile
index b97e4115ac06c0a71794d6d3981500bf4fd747be..72cb3d6f82f3dc4f9504ca42f605bf8c05086874 100644 (file)
@@ -1,14 +1,57 @@
+##===- tools/lli/Makefile ------------------------------*- Makefile -*-===##
+# 
+#                     The LLVM Compiler Infrastructure
+#
+# This file was developed by the LLVM research group and is distributed under
+# the University of Illinois Open Source License. See LICENSE.TXT for details.
+# 
+##===----------------------------------------------------------------------===##
 LEVEL = ../..
 TOOLNAME = lli
-PARALLEL_DIRS = Interpreter JIT
 
-JITLIBS  = lli-jit codegen x86
-USEDLIBS = lli-interpreter $(JITLIBS) bcreader vmcore scalaropts.a \
-           analysis.a support.a target.a 
+# Get the $(ARCH) setting
+include $(LEVEL)/Makefile.config
+
+# Generic JIT libraries
+JITLIBS   = lli-jit codegen executionengine
+ARCHLIBS  =
+
+# You can enable the X86 JIT on a non-X86 host by setting the flag
+# ENABLE_X86_JIT on the make command line. If not, it will still be
+# enabled automagically on an X86 host.
+ifeq ($(ARCH), x86)
+  ENABLE_X86_JIT = 1
+endif
+
+# What the X86 JIT requires
+ifdef ENABLE_X86_JIT
+  CPPFLAGS += -DENABLE_X86_JIT
+  JITLIBS  += x86 selectiondag
+  # X86 doesn't require any ARCHLIBS
+endif
+
+# You can enable the Sparc JIT on a non-Sparc host by setting the flag
+# ENABLE_SPARC_JIT on the make command line. If not, it will still be
+# enabled automagically on an Sparc host.
+ifeq ($(ARCH), Sparc)
+  ENABLE_SPARC_JIT = 1
+endif
+
+# What the Sparc JIT requires
+ifdef ENABLE_SPARC_JIT
+  CPPFLAGS += -DENABLE_SPARC_JIT
+  JITLIBS  += sparc 
+  ARCHLIBS += sched livevar instrument.a profpaths \
+              bcwriter transforms.a ipo.a ipa.a datastructure.a regalloc \
+              select
+endif
+
+USEDLIBS = lli-interpreter $(JITLIBS) $(ARCHLIBS) scalaropts analysis.a \
+           transformutils.a bcreader vmcore support target.a
 
 # Have gcc tell the linker to export symbols from the program so that
 # dynamically loaded modules can be linked against them.
 #
-TOOLLINKOPTS = -ldl
+TOOLLINKOPTS = $(PLATFORMLIBDL)
 
 include $(LEVEL)/Makefile.common