summaryrefslogtreecommitdiff
path: root/unittests/Makefile.unittest
blob: 259e297cef7cc2f97b72ad0a15bf2c9b0a5b9d99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
##===- unittests/Makefile.unittest -------------------------*- Makefile -*-===##
#
#                     The LLVM Compiler Infrastructure
#
# This file is distributed under the University of Illinois Open Source
# License. See LICENSE.TXT for details.
#
##===----------------------------------------------------------------------===##
#
# This file is included by all of the unit test makefiles.
#
##===----------------------------------------------------------------------===##

# Set up variables for building a unit test.
ifdef TESTNAME

LLVMUnitTestDir := $(LLVM_OBJ_ROOT)/$(BuildMode)/unittests
LLVMUnitTestExe := $(LLVMUnitTestDir)/$(TESTNAME)Tests$(EXEEXT)

include $(LEVEL)/Makefile.common

CPP.Flags += -I$(LLVM_SRC_ROOT)/utils/unittest/googletest/include/
CPP.Flags += -Wno-variadic-macros
LD.Flags += -lGoogleTest -lUnitTestMain

$(LLVMUnitTestExe): $(ObjectsO) $(ProjLibsPaths) $(LLVMLibsPaths)
	$(Echo) Linking $(BuildMode) unit test $(TESTNAME) $(StripWarnMsg)
	$(Verb) $(LTLink) -o $@ $(TOOLLINKOPTS) $(ObjectsO) $(ProjLibsOptions) \
	$(LLVMLibsOptions) $(ExtraLibs) $(TOOLLINKOPTSB) $(LIBS)
	$(Echo) ======= Finished Linking $(BuildMode) Unit test $(TESTNAME) \
          $(StripWarnMsg)

all:: $(LLVMUnitTestExe)
	$(LLVMUnitTestExe)

endif