# Set the name of the project here
PROJECT_NAME := vmkit
PROJ_VERSION := 0.1
 
# Set this variable to the top of the LLVM source tree.
LLVM_SRC_ROOT = @LLVM_SRC@

# Set this variable to the top level directory where LLVM was built
# (this is *not* the same as OBJ_ROOT as defined in LLVM's Makefile.config).
LLVM_OBJ_ROOT = @LLVM_OBJ@

# Set the directory root of this project's source files
PROJ_SRC_ROOT := $(subst //,/,@abs_top_srcdir@)

# Set the root directory of this project's object files
PROJ_OBJ_ROOT := $(subst //,/,@abs_top_objdir@)

# Set the root directory of this project's install prefix
PROJ_INSTALL_ROOT := @prefix@

REQUIRES_EH := 1

# Include LLVM's Master Makefile.
include $(LLVM_OBJ_ROOT)/Makefile.common

CXX.Flags += @GC_FLAGS@ @VM_FLAGS@ -Wno-variadic-macros -fno-omit-frame-pointer -ansi

# GNU Classpath flags
CLASSPATH_FLAGS = @classpathinclude@

# Pnet location
PNETLIB = @pnetlocalprefix@

# GC configuration
LIBS += -lz

ifeq ($(GCLIB), BoehmGC)
  LIBS += -lgc
endif

include $(LEVEL)/Makefile.rules
