1##===- unittests/ExecutionEngine/JIT/Makefile --------------*- Makefile -*-===## 2# 3# The LLVM Compiler Infrastructure 4# 5# This file is distributed under the University of Illinois Open Source 6# License. See LICENSE.TXT for details. 7# 8##===----------------------------------------------------------------------===## 9 10LEVEL = ../../.. 11TESTNAME = JIT 12LINK_COMPONENTS := asmparser bitreader bitwriter jit native 13 14# The JIT tests need to dlopen things. 15NO_DEAD_STRIP := 1 16 17include $(LEVEL)/Makefile.config 18 19SOURCES := JITEventListenerTest.cpp JITMemoryManagerTest.cpp JITTest.cpp MultiJITTest.cpp 20 21 22ifeq ($(USE_INTEL_JITEVENTS), 1) 23 # Build the Intel JIT Events interface tests 24 SOURCES += IntelJITEventListenerTest.cpp 25 26 # Add the Intel JIT Events include directory 27 CPPFLAGS += -I$(INTEL_JITEVENTS_INCDIR) 28 29 # Link against the LLVM Intel JIT Evens interface library 30 LINK_COMPONENTS += debuginfo inteljitevents object 31endif 32 33ifeq ($(USE_OPROFILE), 1) 34 # Build the OProfile JIT interface tests 35 SOURCES += OProfileJITEventListenerTest.cpp 36 37 # Link against the LLVM oprofile interface library 38 LINK_COMPONENTS += oprofilejit 39endif 40 41EXPORTED_SYMBOL_FILE = $(PROJ_OBJ_DIR)/JITTests.exports 42 43include $(LLVM_SRC_ROOT)/unittests/Makefile.unittest 44 45# Permit these tests to use the JIT's symbolic lookup. 46LD.Flags += $(RDYNAMIC) 47 48# Symbol exports are necessary (at least for now) when building with LTO. 49$(LLVMUnitTestExe): $(NativeExportsFile) 50$(PROJ_OBJ_DIR)/JITTests.exports: $(PROJ_SRC_DIR)/JITTests.def $(PROJ_OBJ_DIR)/.dir 51 tail -n +2 $< > $@ 52 53