libclamav/c++/Makefile.am
2c7d5adc
 #  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 of the License, 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.
 
8449b08d
 LLVM_INCLUDES=-I$(top_srcdir)/llvm/include -I$(top_builddir)/llvm/include
 # TODO: _DEBUG should be defined for --enable-debug, and NDEBUG otherwise, but
 # keep it like this while I'm testing LLVM
 # TODO: HP-UX should have -D_REENTRANT -D_HPUX_SOURCE
 LLVM_DEFS=-D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D_DEBUG -D_GNU_SOURCE
 AM_CPPFLAGS = -I$(top_srcdir)/../.. -I$(top_srcdir)/.. -I$(top_builddir)/../../ $(LLVM_INCLUDES) $(LLVM_DEFS)
0380088f
 AM_CXXFLAGS = $(LLVM_CXXFLAGS) -fno-exceptions
2c7d5adc
 ACLOCAL_AMFLAGS=-I m4
 if DEBUG_BUILD
 LLVM_CONFIG=llvm/Debug/bin/llvm-config
 else
 LLVM_CONFIG=llvm/Release/bin/llvm-config
 endif
 
48b79163
 #$(LLVM_CONFIG): build-llvm
f51ae772
 # we know this will be built with GNU make, so its safe to use GNU make specific
 # $(shell ...)
48b79163
 #LLVM_DEPS=$(shell $(LLVM_CONFIG) --libfiles jit nativecodegen)
 #libclamavcxx_la_CPPFLAGS = $(AM_CPPFLAGS) `$(LLVM_CONFIG) --cppflags`
 #libclamavcxx_la_DEPENDENCIES = $(LLVM_DEPS)
 #libclamavcxx_la_LDFLAGS = `$(LLVM_CONFIG) --ldflags --libs jit nativecodegen`
8449b08d
 #libclamavcxx_la_CPPFLAGS = $(AM_CPPFLAGS) $(LLVM_INCLUDES) $(LLVM_DEFS)
48b79163
 #libclamavcxx_la_DEPENDENCIES = $(LLVM_DEPS)
29227461
 
f8058910
 noinst_LTLIBRARIES = libclamavcxx.la libllvmsystem.la\
8449b08d
 		     libllvmcodegen.la libllvmjit.la
5b91dc34
 lli_LDADD=libllvmbitreader.la libllvmfullcodegen.la libllvmjit.la
 libclamavcxx_la_LIBADD=libllvmjit.la
8449b08d
 libclamavcxx_la_DEPENDENCIES=libllvmjit.la libllvmcodegen.la libllvmsystem.la
 libclamavcxx_la_LDFLAGS=-no-undefined
0380088f
 libclamavcxx_la_CXXFLAGS = $(LLVM_CXXFLAGS)
4ce9811b
 libclamavcxx_la_SOURCES = bytecode2llvm.cpp\
 			  ClamBCRTChecks.cpp\
 			  ClamBCModule.h
29227461
 if BUILD_X86
8449b08d
 libclamavcxx_la_LIBADD+=libllvmx86codegen.la
 libclamavcxx_la_DEPENDENCIES+=libllvmx86codegen.la
5b91dc34
 lli_LDADD+=libllvmx86codegen.la
8449b08d
 noinst_LTLIBRARIES+=libllvmx86codegen.la
29227461
 endif
 if BUILD_PPC
8449b08d
 libclamavcxx_la_LIBADD+=libllvmpowerpccodegen.la
 libclamavcxx_la_DEPENDENCIES+=libllvmpowerpccodegen.la
5b91dc34
 lli_LDADD+=libllvmpowerpccodegen.la
8449b08d
 noinst_LTLIBRARIES+=libllvmpowerpccodegen.la
29227461
 endif
 if BUILD_ARM
8449b08d
 libclamavcxx_la_LIBADD+=libllvmarmcodegen.la
 libclamavcxx_la_DEPENDENCIES+=libllvmarmcodegen.la
5b91dc34
 lli_LDADD+=libllvmarmcodegen.la
8449b08d
 noinst_LTLIBRARIES+=libllvmarmcodegen.la
29227461
 endif
 
5b91dc34
 libclamavcxx_la_LIBADD+=libllvmcodegen.la libllvmsystem.la
48b79163
 
5b91dc34
 LLVM_CXXFLAGS=-Woverloaded-virtual -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -Wno-missing-field-initializers -Wno-variadic-macros
48b79163
 
f8058910
 TBLGENFILES=llvm/include/llvm/Intrinsics.gen X86GenRegisterInfo.h.inc X86GenRegisterNames.inc X86GenRegisterInfo.inc X86GenInstrNames.inc X86GenInstrInfo.inc\
     X86GenAsmWriter.inc X86GenAsmWriter1.inc X86GenAsmMatcher.inc X86GenDAGISel.inc X86GenFastISel.inc X86GenCallingConv.inc\
     X86GenSubtarget.inc PPCGenInstrNames.inc PPCGenRegisterNames.inc PPCGenAsmWriter.inc PPCGenCodeEmitter.inc PPCGenRegisterInfo.h.inc PPCGenRegisterInfo.inc\
     PPCGenInstrInfo.inc PPCGenDAGISel.inc PPCGenCallingConv.inc PPCGenSubtarget.inc ARMGenRegisterInfo.h.inc ARMGenRegisterNames.inc ARMGenRegisterInfo.inc ARMGenInstrNames.inc ARMGenInstrInfo.inc ARMGenCodeEmitter.inc\
     ARMGenAsmWriter.inc ARMGenDAGISel.inc ARMGenCallingConv.inc ARMGenSubtarget.inc
 
 BUILT_SOURCES=
4a9a7333
 EXTRA_DIST=$(top_srcdir)/llvm llvmcheck.sh $(TBLGENFILES)
0f505d61
 
0564234d
 libllvmsystem_la_LDFLAGS=@THREAD_LIBS@
ec32c565
 libllvmsystem_la_LIBADD=
8449b08d
 libllvmsystem_la_SOURCES=\
 	llvm/lib/System/Alarm.cpp\
 	llvm/lib/System/Atomic.cpp\
 	llvm/lib/System/Disassembler.cpp\
 	llvm/lib/System/DynamicLibrary.cpp\
 	llvm/lib/System/Errno.cpp\
 	llvm/lib/System/Host.cpp\
 	llvm/lib/System/IncludeFile.cpp\
 	llvm/lib/System/Memory.cpp\
 	llvm/lib/System/Mutex.cpp\
 	llvm/lib/System/Path.cpp\
 	llvm/lib/System/Process.cpp\
 	llvm/lib/System/Program.cpp\
 	llvm/lib/System/RWMutex.cpp\
 	llvm/lib/System/Signals.cpp\
 	llvm/lib/System/ThreadLocal.cpp\
 	llvm/lib/System/Threading.cpp\
 	llvm/lib/System/TimeValue.cpp
 
df476c79
 # support is split into 2:
 # a full llvmsupport, and another that contains only objs
 # that aren't already contained in llvmjit
48b79163
 libllvmsupport_la_SOURCES=\
8449b08d
 	llvm/lib/Support/APFloat.cpp\
 	llvm/lib/Support/APInt.cpp\
 	llvm/lib/Support/APSInt.cpp\
 	llvm/lib/Support/Allocator.cpp\
 	llvm/lib/Support/CommandLine.cpp\
 	llvm/lib/Support/ConstantRange.cpp\
 	llvm/lib/Support/Debug.cpp\
 	llvm/lib/Support/DeltaAlgorithm.cpp\
 	llvm/lib/Support/Dwarf.cpp\
 	llvm/lib/Support/ErrorHandling.cpp\
 	llvm/lib/Support/FileUtilities.cpp\
 	llvm/lib/Support/FoldingSet.cpp\
 	llvm/lib/Support/FormattedStream.cpp\
 	llvm/lib/Support/GraphWriter.cpp\
 	llvm/lib/Support/IsInf.cpp\
 	llvm/lib/Support/IsNAN.cpp\
 	llvm/lib/Support/ManagedStatic.cpp\
 	llvm/lib/Support/MemoryBuffer.cpp\
 	llvm/lib/Support/MemoryObject.cpp\
 	llvm/lib/Support/PluginLoader.cpp\
 	llvm/lib/Support/PrettyStackTrace.cpp\
 	llvm/lib/Support/Regex.cpp\
 	llvm/lib/Support/SlowOperationInformer.cpp\
 	llvm/lib/Support/SmallPtrSet.cpp\
b8fd8f07
 	llvm/lib/Support/SmallVector.cpp\
8449b08d
 	llvm/lib/Support/SourceMgr.cpp\
 	llvm/lib/Support/Statistic.cpp\
 	llvm/lib/Support/StringExtras.cpp\
 	llvm/lib/Support/StringMap.cpp\
 	llvm/lib/Support/StringPool.cpp\
 	llvm/lib/Support/StringRef.cpp\
 	llvm/lib/Support/SystemUtils.cpp\
 	llvm/lib/Support/TargetRegistry.cpp\
 	llvm/lib/Support/Timer.cpp\
 	llvm/lib/Support/Triple.cpp\
 	llvm/lib/Support/Twine.cpp\
b8fd8f07
 	llvm/lib/Support/circular_raw_ostream.cpp\
8449b08d
 	llvm/lib/Support/raw_os_ostream.cpp\
 	llvm/lib/Support/raw_ostream.cpp\
 	llvm/lib/Support/regcomp.c\
 	llvm/lib/Support/regerror.c\
 	llvm/lib/Support/regexec.c\
 	llvm/lib/Support/regfree.c\
 	llvm/lib/Support/regstrlcpy.c
df476c79
 
 libllvmsupport_nodups_la_SOURCES=\
 	llvm/lib/Support/APSInt.cpp\
 	llvm/lib/Support/DeltaAlgorithm.cpp\
 	llvm/lib/Support/FileUtilities.cpp\
 	llvm/lib/Support/IsInf.cpp\
 	llvm/lib/Support/IsNAN.cpp\
 	llvm/lib/Support/MemoryObject.cpp\
 	llvm/lib/Support/PluginLoader.cpp\
 	llvm/lib/Support/Regex.cpp\
 	llvm/lib/Support/SlowOperationInformer.cpp\
 	llvm/lib/Support/SystemUtils.cpp\
 	llvm/lib/Support/raw_os_ostream.cpp\
 	llvm/lib/Support/regcomp.c\
 	llvm/lib/Support/regerror.c\
 	llvm/lib/Support/regexec.c\
 	llvm/lib/Support/regfree.c\
 	llvm/lib/Support/regstrlcpy.c
 
f8058910
 if MAINTAINER_MODE
 BUILT_SOURCES+=$(TBLGENFILES)
 noinst_PROGRAMS = tblgen
48b79163
 tblgen_CXXFLAGS=$(LLVM_CXXFLAGS)
b1249c5e
 tblgen_CFLAGS=
48b79163
 #TODO: if VERSIONSCRIPT
0564234d
 tblgen_LDFLAGS=@THREAD_LIBS@ -Wl,--version-script,@top_srcdir@/llvm/autoconf/ExportMap.map
b1249c5e
 # tblgen needs rtti (for now), and we build everything else with -fno-rtti
 # since tblgen is only a maintainer-mode tool, build these files twice (once for
 # libllvmsupport.la -fno-rtti, and once here, with defaults (rtti)).
48b79163
 tblgen_SOURCES=\
   llvm/utils/TableGen/AsmMatcherEmitter.cpp\
   llvm/utils/TableGen/AsmWriterEmitter.cpp\
f728ee7f
   llvm/utils/TableGen/AsmWriterInst.cpp\
48b79163
   llvm/utils/TableGen/CallingConvEmitter.cpp\
   llvm/utils/TableGen/ClangDiagnosticsEmitter.cpp\
   llvm/utils/TableGen/CodeEmitterGen.cpp\
   llvm/utils/TableGen/CodeGenDAGPatterns.cpp\
   llvm/utils/TableGen/CodeGenInstruction.cpp\
   llvm/utils/TableGen/CodeGenTarget.cpp\
   llvm/utils/TableGen/DAGISelEmitter.cpp\
f728ee7f
   llvm/utils/TableGen/DAGISelMatcher.cpp\
   llvm/utils/TableGen/DAGISelMatcherEmitter.cpp\
   llvm/utils/TableGen/DAGISelMatcherGen.cpp\
5f42f863
   llvm/utils/TableGen/DAGISelMatcherOpt.cpp\
f728ee7f
   llvm/utils/TableGen/DisassemblerEmitter.cpp\
   llvm/utils/TableGen/EDEmitter.cpp\
48b79163
   llvm/utils/TableGen/FastISelEmitter.cpp\
   llvm/utils/TableGen/InstrEnumEmitter.cpp\
   llvm/utils/TableGen/InstrInfoEmitter.cpp\
   llvm/utils/TableGen/IntrinsicEmitter.cpp\
   llvm/utils/TableGen/LLVMCConfigurationEmitter.cpp\
6bd85866
   llvm/utils/TableGen/OptParserEmitter.cpp\
48b79163
   llvm/utils/TableGen/Record.cpp\
   llvm/utils/TableGen/RegisterInfoEmitter.cpp\
   llvm/utils/TableGen/SubtargetEmitter.cpp\
   llvm/utils/TableGen/TGLexer.cpp\
   llvm/utils/TableGen/TGParser.cpp\
   llvm/utils/TableGen/TGValueTypes.cpp\
   llvm/utils/TableGen/TableGen.cpp\
b8fd8f07
   llvm/utils/TableGen/TableGenBackend.cpp\
   llvm/utils/TableGen/X86DisassemblerTables.cpp\
b1249c5e
   llvm/utils/TableGen/X86RecognizableInstr.cpp \
   llvm/lib/System/Alarm.cpp\
   llvm/lib/System/Atomic.cpp\
   llvm/lib/System/Disassembler.cpp\
   llvm/lib/System/DynamicLibrary.cpp\
   llvm/lib/System/Errno.cpp\
   llvm/lib/System/Host.cpp\
   llvm/lib/System/IncludeFile.cpp\
   llvm/lib/System/Memory.cpp\
   llvm/lib/System/Mutex.cpp\
   llvm/lib/System/Path.cpp\
   llvm/lib/System/Process.cpp\
   llvm/lib/System/Program.cpp\
   llvm/lib/System/RWMutex.cpp\
   llvm/lib/System/Signals.cpp\
   llvm/lib/System/ThreadLocal.cpp\
   llvm/lib/System/Threading.cpp\
   llvm/lib/System/TimeValue.cpp\
   llvm/lib/Support/APFloat.cpp\
   llvm/lib/Support/APInt.cpp\
   llvm/lib/Support/APSInt.cpp\
   llvm/lib/Support/Allocator.cpp\
   llvm/lib/Support/CommandLine.cpp\
   llvm/lib/Support/ConstantRange.cpp\
   llvm/lib/Support/Debug.cpp\
   llvm/lib/Support/DeltaAlgorithm.cpp\
   llvm/lib/Support/Dwarf.cpp\
   llvm/lib/Support/ErrorHandling.cpp\
   llvm/lib/Support/FileUtilities.cpp\
   llvm/lib/Support/FoldingSet.cpp\
   llvm/lib/Support/FormattedStream.cpp\
   llvm/lib/Support/GraphWriter.cpp\
   llvm/lib/Support/IsInf.cpp\
   llvm/lib/Support/IsNAN.cpp\
   llvm/lib/Support/ManagedStatic.cpp\
   llvm/lib/Support/MemoryBuffer.cpp\
   llvm/lib/Support/MemoryObject.cpp\
   llvm/lib/Support/PluginLoader.cpp\
   llvm/lib/Support/PrettyStackTrace.cpp\
   llvm/lib/Support/Regex.cpp\
   llvm/lib/Support/SlowOperationInformer.cpp\
   llvm/lib/Support/SmallPtrSet.cpp\
   llvm/lib/Support/SmallVector.cpp\
   llvm/lib/Support/SourceMgr.cpp\
   llvm/lib/Support/Statistic.cpp\
   llvm/lib/Support/StringExtras.cpp\
   llvm/lib/Support/StringMap.cpp\
   llvm/lib/Support/StringPool.cpp\
   llvm/lib/Support/StringRef.cpp\
   llvm/lib/Support/SystemUtils.cpp\
   llvm/lib/Support/TargetRegistry.cpp\
   llvm/lib/Support/Timer.cpp\
   llvm/lib/Support/Triple.cpp\
   llvm/lib/Support/Twine.cpp\
   llvm/lib/Support/circular_raw_ostream.cpp\
   llvm/lib/Support/raw_os_ostream.cpp\
   llvm/lib/Support/raw_ostream.cpp\
   llvm/lib/Support/regcomp.c\
   llvm/lib/Support/regerror.c\
   llvm/lib/Support/regexec.c\
   llvm/lib/Support/regfree.c\
   llvm/lib/Support/regstrlcpy.c
48b79163
 
29227461
 TBLGEN=$(top_builddir)/tblgen
 TBLGEN_V=$(AM_V_GEN)$(TBLGEN)
5f42f863
 TBLGEN_FLAGS=-I$(top_srcdir)/llvm/include -I$(top_srcdir)/llvm/lib/Target -omit-comments
29227461
 
c558f46f
 llvm/include/llvm/Intrinsics.gen: llvm/include/llvm/Intrinsics.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS) -gen-intrinsic -o $@ $<
 
29227461
 # X86 Target
 TBLGEN_FLAGS_X86= $(TBLGEN_FLAGS) -I$(top_srcdir)/llvm/lib/Target/X86
 X86GenRegisterInfo.h.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-register-desc-header -o $@ $<
 
 X86GenRegisterNames.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-register-enums -o $@ $<
 
 X86GenRegisterInfo.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-register-desc -o $@ $<
 
 X86GenInstrNames.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-instr-enums -o $@ $<
 
 X86GenInstrInfo.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-instr-desc -o $@ $<
 
 X86GenAsmWriter.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-asm-writer -o $@ $<
 
 X86GenAsmWriter1.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-asm-writer -asmwriternum=1 -o $@ $<
 
 X86GenAsmMatcher.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-asm-matcher -o $@ $<
 
 X86GenDAGISel.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-dag-isel -o $@ $<
 
 X86GenFastISel.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-fast-isel -o $@ $<
 
 X86GenCallingConv.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-callingconv -o $@ $<
 
 X86GenSubtarget.inc: llvm/lib/Target/X86/X86.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_X86) -gen-subtarget -o $@ $<
 
 # PPC Target
 TBLGEN_FLAGS_PPC= $(TBLGEN_FLAGS) -I$(top_srcdir)/llvm/lib/Target/PowerPC
 PPCGenInstrNames.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-instr-enums -o $@ $<
 
 PPCGenRegisterNames.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-register-enums -o $@ $<
 
 PPCGenAsmWriter.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-asm-writer -o $@ $<
 
 PPCGenCodeEmitter.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-emitter -o $@ $<
 
 PPCRegisterInfo.h.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-register-desc-header -o $@ $<
 
 PPCGenRegisterInfo.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-register-desc -o $@ $<
 
 PPCGenRegisterInfo.h.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-register-desc-header -o $@ $<
 
 PPCGenInstrInfo.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-instr-desc -o $@ $<
 
 PPCGenDAGISel.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-dag-isel -o $@ $<
 
 PPCGenCallingConv.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-callingconv -o $@ $<
 
 PPCGenSubtarget.inc: llvm/lib/Target/PowerPC/PPC.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_PPC) -gen-subtarget -o $@ $<
 
 # ARM Target
 TBLGEN_FLAGS_ARM= $(TBLGEN_FLAGS) -I$(top_srcdir)/llvm/lib/Target/ARM
 ARMGenRegisterInfo.h.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-register-desc-header -o $@ $<
 
 ARMGenRegisterNames.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-register-enums -o $@ $<
 
 ARMGenRegisterInfo.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-register-desc -o $@ $<
 
 ARMGenInstrNames.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-instr-enums -o $@ $<
 
 ARMGenInstrInfo.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-instr-desc -o $@ $<
 
 ARMGenCodeEmitter.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-emitter -o $@ $<
 
 ARMGenAsmWriter.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-asm-writer -o $@ $<
 
 ARMGenDAGISel.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-dag-isel -o $@ $<
 
 ARMGenCallingConv.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-callingconv -o $@ $<
 
 ARMGenSubtarget.inc: llvm/lib/Target/ARM/ARM.td $(TBLGEN)
 	$(TBLGEN_V) $(TBLGEN_FLAGS_ARM) -gen-subtarget -o $@ $<
f8058910
 endif
29227461
 
f8058910
 if BUILD_X86
 libllvmx86codegen_la_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_builddir) -I$(top_srcdir)/llvm/lib/Target/X86
 libllvmx86codegen_la_SOURCES=\
 	llvm/lib/MC/MCAsmInfoCOFF.cpp\
 	llvm/lib/MC/MCCodeEmitter.cpp\
5f42f863
 	llvm/lib/MC/TargetAsmBackend.cpp\
f8058910
 	llvm/lib/Target/TargetELFWriterInfo.cpp\
 	llvm/lib/Target/X86/TargetInfo/X86TargetInfo.cpp\
5f42f863
 	llvm/lib/Target/X86/X86AsmBackend.cpp\
f8058910
 	llvm/lib/Target/X86/X86COFFMachineModuleInfo.cpp\
 	llvm/lib/Target/X86/X86CodeEmitter.cpp\
 	llvm/lib/Target/X86/X86ELFWriterInfo.cpp\
 	llvm/lib/Target/X86/X86FastISel.cpp\
 	llvm/lib/Target/X86/X86FloatingPoint.cpp\
 	llvm/lib/Target/X86/X86FloatingPointRegKill.cpp\
 	llvm/lib/Target/X86/X86ISelDAGToDAG.cpp\
 	llvm/lib/Target/X86/X86ISelLowering.cpp\
 	llvm/lib/Target/X86/X86InstrInfo.cpp\
 	llvm/lib/Target/X86/X86JITInfo.cpp\
 	llvm/lib/Target/X86/X86MCAsmInfo.cpp\
f728ee7f
 	llvm/lib/Target/X86/X86MCCodeEmitter.cpp\
 	llvm/lib/Target/X86/X86MCTargetExpr.cpp\
f8058910
 	llvm/lib/Target/X86/X86RegisterInfo.cpp\
 	llvm/lib/Target/X86/X86Subtarget.cpp\
 	llvm/lib/Target/X86/X86TargetMachine.cpp\
 	llvm/lib/Target/X86/X86TargetObjectFile.cpp
 endif
 
 if BUILD_PPC
 libllvmpowerpccodegen_la_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_builddir) -I$(top_srcdir)/llvm/lib/Target/PowerPC
 libllvmpowerpccodegen_la_SOURCES=\
 	llvm/lib/Target/PowerPC/PPCBranchSelector.cpp\
 	llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp\
 	llvm/lib/Target/PowerPC/PPCHazardRecognizers.cpp\
 	llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp\
 	llvm/lib/Target/PowerPC/PPCISelLowering.cpp\
 	llvm/lib/Target/PowerPC/PPCInstrInfo.cpp\
 	llvm/lib/Target/PowerPC/PPCJITInfo.cpp\
 	llvm/lib/Target/PowerPC/PPCMCAsmInfo.cpp\
 	llvm/lib/Target/PowerPC/PPCPredicates.cpp\
 	llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp\
 	llvm/lib/Target/PowerPC/PPCSubtarget.cpp\
 	llvm/lib/Target/PowerPC/PPCTargetMachine.cpp\
4ce9811b
 	llvm/lib/Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp
f8058910
 endif
 
 if BUILD_ARM
29227461
 
f8058910
 libllvmarmcodegen_la_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_builddir) -I$(top_srcdir)/llvm/lib/Target/ARM
8449b08d
 libllvmarmcodegen_la_SOURCES=\
 	llvm/lib/CodeGen/IfConversion.cpp\
 	llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp\
 	llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp\
 	llvm/lib/Target/ARM/ARMCodeEmitter.cpp\
 	llvm/lib/Target/ARM/ARMConstantIslandPass.cpp\
 	llvm/lib/Target/ARM/ARMConstantPoolValue.cpp\
 	llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp\
 	llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp\
 	llvm/lib/Target/ARM/ARMISelLowering.cpp\
 	llvm/lib/Target/ARM/ARMInstrInfo.cpp\
 	llvm/lib/Target/ARM/ARMJITInfo.cpp\
 	llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp\
 	llvm/lib/Target/ARM/ARMMCAsmInfo.cpp\
 	llvm/lib/Target/ARM/ARMRegisterInfo.cpp\
 	llvm/lib/Target/ARM/ARMSubtarget.cpp\
 	llvm/lib/Target/ARM/ARMTargetMachine.cpp\
 	llvm/lib/Target/ARM/NEONMoveFix.cpp\
 	llvm/lib/Target/ARM/NEONPreAllocPass.cpp\
 	llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp\
 	llvm/lib/Target/ARM/Thumb1InstrInfo.cpp\
 	llvm/lib/Target/ARM/Thumb1RegisterInfo.cpp\
 	llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp\
 	llvm/lib/Target/ARM/Thumb2InstrInfo.cpp\
 	llvm/lib/Target/ARM/Thumb2RegisterInfo.cpp\
 	llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
29227461
 endif
 
 # End of Targets
48b79163
 
8449b08d
 libllvmjit_la_SOURCES=\
556eaf04
 	llvm/lib/Analysis/IPA/CallGraph.cpp\
5b91dc34
 	llvm/lib/Analysis/AliasAnalysis.cpp\
 	llvm/lib/Analysis/BasicAliasAnalysis.cpp\
 	llvm/lib/Analysis/CaptureTracking.cpp\
 	llvm/lib/Analysis/DebugInfo.cpp\
 	llvm/lib/Analysis/MemoryBuiltins.cpp\
1e30496d
 	llvm/lib/Analysis/PointerTracking.cpp\
5b91dc34
 	llvm/lib/Analysis/ValueTracking.cpp\
 	llvm/lib/CodeGen/ELFCodeEmitter.cpp\
8449b08d
 	llvm/lib/CodeGen/ELFWriter.cpp\
5b91dc34
 	llvm/lib/CodeGen/MachineBasicBlock.cpp\
8449b08d
 	llvm/lib/CodeGen/MachineFunction.cpp\
5b91dc34
 	llvm/lib/CodeGen/MachineFunctionAnalysis.cpp\
 	llvm/lib/CodeGen/MachineFunctionPass.cpp\
8449b08d
 	llvm/lib/CodeGen/MachineInstr.cpp\
 	llvm/lib/CodeGen/MachineModuleInfo.cpp\
5b91dc34
 	llvm/lib/CodeGen/MachineRegisterInfo.cpp\
 	llvm/lib/CodeGen/ObjectCodeEmitter.cpp\
 	llvm/lib/CodeGen/PseudoSourceValue.cpp\
 	llvm/lib/CodeGen/TargetInstrInfoImpl.cpp\
8449b08d
 	llvm/lib/ExecutionEngine/ExecutionEngine.cpp\
 	llvm/lib/ExecutionEngine/JIT/Intercept.cpp\
 	llvm/lib/ExecutionEngine/JIT/JIT.cpp\
 	llvm/lib/ExecutionEngine/JIT/JITDebugRegisterer.cpp\
 	llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp\
 	llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp\
 	llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp\
 	llvm/lib/ExecutionEngine/JIT/OProfileJITEventListener.cpp\
 	llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp\
 	llvm/lib/MC/MCAsmInfo.cpp\
5b91dc34
 	llvm/lib/MC/MCContext.cpp\
 	llvm/lib/MC/MCExpr.cpp\
 	llvm/lib/MC/MCSection.cpp\
 	llvm/lib/MC/MCSectionELF.cpp\
 	llvm/lib/MC/MCSymbol.cpp\
8449b08d
 	llvm/lib/Support/APFloat.cpp\
 	llvm/lib/Support/APInt.cpp\
 	llvm/lib/Support/Allocator.cpp\
 	llvm/lib/Support/CommandLine.cpp\
 	llvm/lib/Support/ConstantRange.cpp\
 	llvm/lib/Support/Debug.cpp\
 	llvm/lib/Support/Dwarf.cpp\
 	llvm/lib/Support/ErrorHandling.cpp\
 	llvm/lib/Support/FoldingSet.cpp\
 	llvm/lib/Support/FormattedStream.cpp\
5b91dc34
 	llvm/lib/Support/GraphWriter.cpp\
8449b08d
 	llvm/lib/Support/ManagedStatic.cpp\
 	llvm/lib/Support/MemoryBuffer.cpp\
 	llvm/lib/Support/PrettyStackTrace.cpp\
 	llvm/lib/Support/SmallPtrSet.cpp\
b8fd8f07
 	llvm/lib/Support/SmallVector.cpp\
5b91dc34
 	llvm/lib/Support/SourceMgr.cpp\
8449b08d
 	llvm/lib/Support/Statistic.cpp\
 	llvm/lib/Support/StringExtras.cpp\
 	llvm/lib/Support/StringMap.cpp\
 	llvm/lib/Support/StringPool.cpp\
5b91dc34
 	llvm/lib/Support/StringRef.cpp\
8449b08d
 	llvm/lib/Support/TargetRegistry.cpp\
 	llvm/lib/Support/Timer.cpp\
 	llvm/lib/Support/Triple.cpp\
 	llvm/lib/Support/Twine.cpp\
b8fd8f07
 	llvm/lib/Support/circular_raw_ostream.cpp\
8449b08d
 	llvm/lib/Support/raw_ostream.cpp\
b1249c5e
 	llvm/lib/Target/Mangler.cpp\
8449b08d
 	llvm/lib/Target/SubtargetFeature.cpp\
 	llvm/lib/Target/TargetData.cpp\
5b91dc34
 	llvm/lib/Target/TargetInstrInfo.cpp\
 	llvm/lib/Target/TargetLoweringObjectFile.cpp\
8449b08d
 	llvm/lib/Target/TargetMachine.cpp\
5b91dc34
 	llvm/lib/Target/TargetRegisterInfo.cpp\
aa745db7
 	llvm/lib/Transforms/Scalar/DCE.cpp\
8449b08d
 	llvm/lib/VMCore/AsmWriter.cpp\
 	llvm/lib/VMCore/Attributes.cpp\
 	llvm/lib/VMCore/AutoUpgrade.cpp\
 	llvm/lib/VMCore/BasicBlock.cpp\
 	llvm/lib/VMCore/ConstantFold.cpp\
 	llvm/lib/VMCore/Constants.cpp\
 	llvm/lib/VMCore/Core.cpp\
 	llvm/lib/VMCore/Dominators.cpp\
 	llvm/lib/VMCore/Function.cpp\
f728ee7f
 	llvm/lib/VMCore/GVMaterializer.cpp\
8449b08d
 	llvm/lib/VMCore/Globals.cpp\
b1249c5e
 	llvm/lib/VMCore/IRBuilder.cpp\
8449b08d
 	llvm/lib/VMCore/InlineAsm.cpp\
 	llvm/lib/VMCore/Instruction.cpp\
 	llvm/lib/VMCore/Instructions.cpp\
 	llvm/lib/VMCore/IntrinsicInst.cpp\
 	llvm/lib/VMCore/LLVMContext.cpp\
3504bd0e
 	llvm/lib/VMCore/LLVMContextImpl.cpp\
8449b08d
 	llvm/lib/VMCore/LeakDetector.cpp\
 	llvm/lib/VMCore/Metadata.cpp\
 	llvm/lib/VMCore/Module.cpp\
 	llvm/lib/VMCore/Pass.cpp\
 	llvm/lib/VMCore/PassManager.cpp\
 	llvm/lib/VMCore/PrintModulePass.cpp\
 	llvm/lib/VMCore/Type.cpp\
 	llvm/lib/VMCore/TypeSymbolTable.cpp\
 	llvm/lib/VMCore/Use.cpp\
 	llvm/lib/VMCore/Value.cpp\
 	llvm/lib/VMCore/ValueSymbolTable.cpp\
 	llvm/lib/VMCore/ValueTypes.cpp\
 	llvm/lib/VMCore/Verifier.cpp
b1249c5e
 
48b79163
 libllvmcodegen_la_SOURCES=\
5b91dc34
 	llvm/lib/Analysis/AliasSetTracker.cpp\
 	llvm/lib/Analysis/ConstantFolding.cpp\
 	llvm/lib/Analysis/IVUsers.cpp\
 	llvm/lib/Analysis/InstructionSimplify.cpp\
 	llvm/lib/Analysis/LoopInfo.cpp\
 	llvm/lib/Analysis/LoopPass.cpp\
 	llvm/lib/Analysis/MemoryDependenceAnalysis.cpp\
 	llvm/lib/Analysis/PHITransAddr.cpp\
 	llvm/lib/Analysis/ProfileInfo.cpp\
 	llvm/lib/Analysis/ScalarEvolution.cpp\
 	llvm/lib/Analysis/ScalarEvolutionExpander.cpp\
 	llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp\
 	llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp\
 	llvm/lib/CodeGen/AsmPrinter/DIE.cpp\
 	llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp\
 	llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp\
 	llvm/lib/CodeGen/AsmPrinter/DwarfLabel.cpp\
 	llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp\
 	llvm/lib/CodeGen/AsmPrinter/DwarfWriter.cpp\
 	llvm/lib/CodeGen/BranchFolding.cpp\
 	llvm/lib/CodeGen/CalcSpillWeights.cpp\
 	llvm/lib/CodeGen/CodePlacementOpt.cpp\
 	llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp\
f728ee7f
 	llvm/lib/CodeGen/DeadMachineInstructionElim.cpp\
5b91dc34
 	llvm/lib/CodeGen/DwarfEHPrepare.cpp\
 	llvm/lib/CodeGen/ExactHazardRecognizer.cpp\
 	llvm/lib/CodeGen/GCMetadata.cpp\
 	llvm/lib/CodeGen/GCStrategy.cpp\
8449b08d
 	llvm/lib/CodeGen/LLVMTargetMachine.cpp\
5b91dc34
 	llvm/lib/CodeGen/LatencyPriorityQueue.cpp\
 	llvm/lib/CodeGen/LiveInterval.cpp\
 	llvm/lib/CodeGen/LiveIntervalAnalysis.cpp\
 	llvm/lib/CodeGen/LiveStackAnalysis.cpp\
8449b08d
 	llvm/lib/CodeGen/LiveVariables.cpp\
5b91dc34
 	llvm/lib/CodeGen/LowerSubregs.cpp\
5f42f863
 	llvm/lib/CodeGen/MachineCSE.cpp\
5b91dc34
 	llvm/lib/CodeGen/MachineDominators.cpp\
 	llvm/lib/CodeGen/MachineLICM.cpp\
 	llvm/lib/CodeGen/MachineLoopInfo.cpp\
5f42f863
 	llvm/lib/CodeGen/MachineModuleInfoImpls.cpp\
5b91dc34
 	llvm/lib/CodeGen/MachinePassRegistry.cpp\
 	llvm/lib/CodeGen/MachineSSAUpdater.cpp\
 	llvm/lib/CodeGen/MachineSink.cpp\
 	llvm/lib/CodeGen/MachineVerifier.cpp\
b1249c5e
 	llvm/lib/CodeGen/OptimizeExts.cpp\
f728ee7f
 	llvm/lib/CodeGen/OptimizePHIs.cpp\
5b91dc34
 	llvm/lib/CodeGen/PHIElimination.cpp\
 	llvm/lib/CodeGen/Passes.cpp\
 	llvm/lib/CodeGen/PostRASchedulerList.cpp\
 	llvm/lib/CodeGen/PreAllocSplitting.cpp\
 	llvm/lib/CodeGen/ProcessImplicitDefs.cpp\
 	llvm/lib/CodeGen/PrologEpilogInserter.cpp\
 	llvm/lib/CodeGen/RegAllocLinearScan.cpp\
 	llvm/lib/CodeGen/RegisterCoalescer.cpp\
8449b08d
 	llvm/lib/CodeGen/RegisterScavenging.cpp\
5b91dc34
 	llvm/lib/CodeGen/ScheduleDAG.cpp\
 	llvm/lib/CodeGen/ScheduleDAGEmit.cpp\
 	llvm/lib/CodeGen/ScheduleDAGInstrs.cpp\
 	llvm/lib/CodeGen/ScheduleDAGPrinter.cpp\
8449b08d
 	llvm/lib/CodeGen/SelectionDAG/CallingConvLower.cpp\
 	llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp\
5b91dc34
 	llvm/lib/CodeGen/SelectionDAG/FastISel.cpp\
 	llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp\
 	llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp\
 	llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp\
 	llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp\
 	llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp\
 	llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp\
 	llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp\
 	llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp\
 	llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp\
 	llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp\
 	llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp\
 	llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp\
 	llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp\
8449b08d
 	llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp\
 	llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp\
 	llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp\
5b91dc34
 	llvm/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp\
8449b08d
 	llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp\
5b91dc34
 	llvm/lib/CodeGen/ShrinkWrapping.cpp\
 	llvm/lib/CodeGen/SimpleRegisterCoalescing.cpp\
 	llvm/lib/CodeGen/SjLjEHPrepare.cpp\
 	llvm/lib/CodeGen/SlotIndexes.cpp\
 	llvm/lib/CodeGen/Spiller.cpp\
 	llvm/lib/CodeGen/StackProtector.cpp\
 	llvm/lib/CodeGen/StackSlotColoring.cpp\
 	llvm/lib/CodeGen/StrongPHIElimination.cpp\
 	llvm/lib/CodeGen/TailDuplication.cpp\
5f42f863
 	llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp\
5b91dc34
 	llvm/lib/CodeGen/TwoAddressInstructionPass.cpp\
 	llvm/lib/CodeGen/UnreachableBlockElim.cpp\
 	llvm/lib/CodeGen/VirtRegMap.cpp\
 	llvm/lib/CodeGen/VirtRegRewriter.cpp\
8449b08d
 	llvm/lib/MC/MCAsmInfoDarwin.cpp\
5b91dc34
 	llvm/lib/MC/MCAsmStreamer.cpp\
b1249c5e
 	llvm/lib/MC/MCAssembler.cpp\
5b91dc34
 	llvm/lib/MC/MCInst.cpp\
b1249c5e
 	llvm/lib/MC/MCMachOStreamer.cpp\
f728ee7f
 	llvm/lib/MC/MCNullStreamer.cpp\
5f42f863
 	llvm/lib/MC/MCSectionMachO.cpp\
5b91dc34
 	llvm/lib/MC/MCStreamer.cpp\
8449b08d
 	llvm/lib/Target/TargetFrameInfo.cpp\
5b91dc34
 	llvm/lib/Target/TargetSubtarget.cpp\
 	llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp\
 	llvm/lib/Transforms/Scalar/GEPSplitter.cpp\
 	llvm/lib/Transforms/Scalar/GVN.cpp\
 	llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp\
 	llvm/lib/Transforms/Utils/AddrModeMatcher.cpp\
 	llvm/lib/Transforms/Utils/BasicBlockUtils.cpp\
 	llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp\
 	llvm/lib/Transforms/Utils/DemoteRegToStack.cpp\
 	llvm/lib/Transforms/Utils/LCSSA.cpp\
 	llvm/lib/Transforms/Utils/Local.cpp\
 	llvm/lib/Transforms/Utils/LoopSimplify.cpp\
 	llvm/lib/Transforms/Utils/LowerInvoke.cpp\
 	llvm/lib/Transforms/Utils/LowerSwitch.cpp\
 	llvm/lib/Transforms/Utils/Mem2Reg.cpp\
 	llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp\
 	llvm/lib/Transforms/Utils/SSAUpdater.cpp\
 	llvm/lib/Transforms/Utils/SimplifyCFG.cpp\
 	llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
48b79163
 
b1249c5e
 
f728ee7f
 
1b506b82
 # Used only by make check
 
 libllvmbitreader_la_SOURCES=\
  llvm/lib/Bitcode/Reader/BitReader.cpp\
3aece397
  llvm/lib/Bitcode/Reader/BitcodeReader.cpp
1b506b82
 
 libllvmbitwriter_la_SOURCES=\
  llvm/lib/Bitcode/Writer/BitWriter.cpp\
  llvm/lib/Bitcode/Writer/BitcodeWriter.cpp\
  llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp\
  llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
 
 libllvmasmparser_la_SOURCES=\
  llvm/lib/AsmParser/LLLexer.cpp\
  llvm/lib/AsmParser/LLParser.cpp\
  llvm/lib/AsmParser/Parser.cpp
 
 libllvminterpreter_la_SOURCES=\
     llvm/lib/ExecutionEngine/Interpreter/Execution.cpp\
     llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp\
     llvm/lib/ExecutionEngine/Interpreter/Interpreter.cpp
 
5b91dc34
 libgoogletest_la_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_srcdir)/llvm/utils/unittest/googletest/include
1b506b82
 libgoogletest_la_SOURCES=\
     llvm/utils/unittest/googletest/gtest-death-test.cc\
     llvm/utils/unittest/googletest/gtest-filepath.cc\
     llvm/utils/unittest/googletest/gtest-port.cc\
     llvm/utils/unittest/googletest/gtest-test-part.cc\
     llvm/utils/unittest/googletest/gtest-typed-test.cc\
     llvm/utils/unittest/googletest/gtest.cc\
0db26493
     llvm/utils/unittest/UnitTestMain/TestMain.cpp
1b506b82
 
6d52179a
 #-Wno-variadic-macros
5b91dc34
 llvmunittest_ADT_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_srcdir)/llvm/utils/unittest/googletest/include
df476c79
 llvmunittest_ADT_LDADD=libgoogletest.la libllvmsupport_nodups.la libllvmjit.la libllvmsystem.la
1b506b82
 llvmunittest_ADT_SOURCES=\
     llvm/unittests/ADT/APFloatTest.cpp\
     llvm/unittests/ADT/APIntTest.cpp\
     llvm/unittests/ADT/DenseMapTest.cpp\
     llvm/unittests/ADT/DenseSetTest.cpp\
     llvm/unittests/ADT/ImmutableSetTest.cpp\
     llvm/unittests/ADT/SmallStringTest.cpp\
     llvm/unittests/ADT/SmallVectorTest.cpp\
     llvm/unittests/ADT/SparseBitVectorTest.cpp\
     llvm/unittests/ADT/StringMapTest.cpp\
     llvm/unittests/ADT/StringRefTest.cpp\
     llvm/unittests/ADT/TripleTest.cpp\
     llvm/unittests/ADT/TwineTest.cpp
 
 llvmunittest_Support_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_srcdir)/llvm/utils/unittest/googletest/include
6d52179a
 #-Wno-variadic-macros
df476c79
 llvmunittest_Support_LDADD=libgoogletest.la libllvmsupport_nodups.la libllvmjit.la libllvmsystem.la
1b506b82
 llvmunittest_Support_SOURCES=\
     llvm/unittests/Support/AllocatorTest.cpp\
     llvm/unittests/Support/ConstantRangeTest.cpp\
     llvm/unittests/Support/MathExtrasTest.cpp\
     llvm/unittests/Support/RegexTest.cpp\
     llvm/unittests/Support/TypeBuilderTest.cpp\
     llvm/unittests/Support/ValueHandleTest.cpp\
     llvm/unittests/Support/raw_ostream_test.cpp
 
 llvmunittest_VMCore_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_srcdir)/llvm/utils/unittest/googletest/include
6d52179a
 #-Wno-variadic-macros
df476c79
 llvmunittest_VMCore_LDADD=libgoogletest.la libllvmsupport_nodups.la libllvmjit.la libllvmsystem.la
1b506b82
 llvmunittest_VMCore_SOURCES=\
     llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp\
5b91dc34
     llvm/lib/Analysis/LoopInfo.cpp\
     llvm/lib/Analysis/LoopPass.cpp\
1b506b82
     llvm/unittests/VMCore/ConstantsTest.cpp\
     llvm/unittests/VMCore/MetadataTest.cpp\
     llvm/unittests/VMCore/PassManagerTest.cpp
 
 llvmunittest_JIT_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_srcdir)/llvm/utils/unittest/googletest/include
6d52179a
 #-Wno-variadic-macros
5b91dc34
 llvmunittest_JIT_LDADD=libgoogletest.la libllvmasmparser.la $(lli_LDADD)
1b506b82
 llvmunittest_JIT_SOURCES=\
     llvm/unittests/ExecutionEngine/JIT/JITEventListenerTest.cpp\
     llvm/unittests/ExecutionEngine/JIT/JITMemoryManagerTest.cpp\
     llvm/unittests/ExecutionEngine/JIT/JITTest.cpp
 
 llvmunittest_ExecutionEngine_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_srcdir)/llvm/utils/unittest/googletest/include
6d52179a
 #-Wno-variadic-macros
df476c79
 llvmunittest_ExecutionEngine_LDADD=libgoogletest.la libllvminterpreter.la libllvmsupport_nodups.la $(libclamavcxx_la_LIBADD) libllvmsystem.la
1b506b82
 llvmunittest_ExecutionEngine_SOURCES=\
5b91dc34
     llvm/lib/CodeGen/IntrinsicLowering.cpp\
1b506b82
     llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp
 
0db26493
 count_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS)
 count_SOURCES=llvm/utils/count/count.c
 count_LDADD=libllvmsystem.la
 not_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS)
 not_CXXFLAGS=$(LLVM_CXXFLAGS)
 not_SOURCES=llvm/utils/not/not.cpp
 not_LDADD=libllvmsystem.la
 
 FileCheck_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS)
 FileCheck_CXXFLAGS=$(LLVM_CXXFLAGS)
df476c79
 FileCheck_LDADD=libllvmsupport.la libllvmsystem.la
0db26493
 FileCheck_SOURCES=llvm/utils/FileCheck/FileCheck.cpp
 
df476c79
 check_LTLIBRARIES=libllvmbitreader.la libllvmsupport_nodups.la libllvmsupport.la libllvmfullcodegen.la libllvmasmprinter.la libllvmbitwriter.la libllvmasmparser.la libgoogletest.la libllvminterpreter.la
6bd85866
 check_PROGRAMS=count not lli llc llvm-as llvm-dis llvmunittest_ADT llvmunittest_Support llvmunittest_VMCore llvmunittest_ExecutionEngine llvmunittest_JIT FileCheck
4a9a7333
 check_SCRIPTS=llvmcheck.sh
c22a7a16
 TESTS_ENVIRONMENT=export GMAKE=@GMAKE@;
 TESTS=llvmunittest_ADT llvmunittest_Support llvmunittest_VMCore llvmunittest_ExecutionEngine llvmunittest_JIT
5167de75
 # Disable LLVM make check for now, there are some things to fix first:
 #   - check python version (2.4 doesn't work, needs 2.5+)
 #   - run llvm's make check after clamav's was run
 #   - have a way to run only clamav's make check and not llvm's
4a9a7333
 @ifGNUmake@ TESTS+=llvmcheck.sh
1b506b82
 
 libllvmasmprinter_la_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS) -I$(top_srcdir)/llvm/lib/Target/X86 \
 			      -I$(top_srcdir)/llvm/lib/Target/PowerPC -I$(top_srcdir)/llvm/lib/Target/ARM
 libllvmasmprinter_la_SOURCES=\
     llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp\
     llvm/lib/CodeGen/ELFCodeEmitter.cpp\
4ce9811b
     llvm/lib/CodeGen/ELFWriter.cpp
1b506b82
 
 if BUILD_X86
 libllvmasmprinter_la_SOURCES+=llvm/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp\
     llvm/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp\
0db26493
     llvm/lib/Target/X86/AsmPrinter/X86IntelInstPrinter.cpp\
     llvm/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp\
     llvm/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp\
     llvm/lib/Target/X86/X86COFFMachineModuleInfo.cpp
1b506b82
 endif
 
 if BUILD_PPC
 libllvmasmprinter_la_SOURCES+= llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
 endif
 
 if BUILD_ARM
6bd85866
 libllvmasmprinter_la_SOURCES+= llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp \
     llvm/lib/Target/ARM/AsmPrinter/ARMInstPrinter.cpp\
     llvm/lib/Target/ARM/AsmPrinter/ARMMCInstLower.cpp
1b506b82
 endif
 
5b91dc34
 libllvmfullcodegen_la_SOURCES=\
 	llvm/lib/CodeGen/GCMetadataPrinter.cpp\
 	llvm/lib/CodeGen/IfConversion.cpp\
 	llvm/lib/CodeGen/IntrinsicLowering.cpp\
 	llvm/lib/CodeGen/OcamlGC.cpp\
 	llvm/lib/CodeGen/RegAllocLocal.cpp\
 	llvm/lib/CodeGen/RegAllocPBQP.cpp\
 	llvm/lib/CodeGen/ShadowStackGC.cpp\
 	llvm/lib/ExecutionEngine/Interpreter/Execution.cpp\
 	llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp\
 	llvm/lib/ExecutionEngine/Interpreter/Interpreter.cpp\
 	llvm/lib/Target/Target.cpp\
b1249c5e
 	llvm/lib/Target/TargetAsmLexer.cpp\
5b91dc34
 	llvm/lib/Target/TargetELFWriterInfo.cpp\
f728ee7f
 	llvm/lib/Target/TargetIntrinsicInfo.cpp
5b91dc34
 
df476c79
 lli_LDADD+=libllvmfullcodegen.la libllvmcodegen.la libllvmsupport_nodups.la libllvmjit.la libllvmsystem.la
1b506b82
 lli_SOURCES=\
     llvm/tools/lli/lli.cpp
 
 llc_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS)
0380088f
 llc_CXXFLAGS=$(LLVM_CXXFLAGS)
5b91dc34
 llc_LDADD=libllvmbitreader.la libllvmasmprinter.la libllvmasmparser.la $(lli_LDADD)
1b506b82
 llc_SOURCES=\
0db26493
     llvm/lib/MC/MCInstPrinter.cpp\
1b506b82
     llvm/tools/llc/llc.cpp
 
 llvm_as_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS)
 llvm_as_CXXFLAGS=$(LLVM_CXXFLAGS)
df476c79
 llvm_as_LDADD=libllvmasmparser.la libllvmbitwriter.la libllvmsupport_nodups.la libllvmjit.la libllvmsystem.la
1b506b82
 llvm_as_SOURCES=\
     llvm/tools/llvm-as/llvm-as.cpp
29227461
 
6bd85866
 llvm_dis_CPPFLAGS=$(LLVM_INCLUDES) $(LLVM_DEFS)
 llvm_dis_CXXFLAGS=$(LLVM_CXXFLAGS)
df476c79
 llvm_dis_LDADD=libllvmasmparser.la libllvmbitreader.la libllvmsupport_nodups.la libllvmjit.la libllvmsystem.la
6bd85866
 llvm_dis_SOURCES=\
     llvm/tools/llvm-dis/llvm-dis.cpp
 
48b79163
 #bytecode2llvm.cpp: build-llvm
2c7d5adc
 
 build-llvm:
 	+$(GMAKE) -C llvm OPTIMIZE_OPTION=-O2 libs-only
 
 build-llvm-for-check:
 	+$(GMAKE) -C llvm OPTIMIZE_OPTION=-O2 tools-only
 
41423d38
 # Don't use make -C here, otherwise there's a racecondition between distclean
 # and clean (distclean removes all Makefiles in llvm/)
2c7d5adc
 clean-local:
41423d38
 	rm -rf `find llvm/test -name Output -type d -print`
8e61d24a
 	rm -rf llvm/Release llvm/Debug
f8058910
 if MAINTAINER_MODE
8e61d24a
 	rm -f *.inc
 	rm -f llvm/include/llvm/Intrinsics.gen
f8058910
 endif
8e61d24a
 	rm -f llvm/test/site.exp llvm/test/site.bak llvm/test/*.out llvm/test/*.sum llvm/test/*.log
2c7d5adc
 
41423d38
 distclean-local:
3f277918
 	rm -f llvm/docs/doxygen.cfg llvm/test/Unit/.dir llvm/test/Unit/lit.site.cfg
 	rm -f llvm/test/lit.site.cfg llvm/config.status
 	rm -f llvm/mklib llvm/tools/llvmc/llvm-config.in
 	rm -f llvm/Makefile.config llvm/config.log
41423d38
 	rm -f llvm/llvm.spec llvm/include/llvm/Config/AsmPrinters.def llvm/include/llvm/Config/config.h
d0934caf
 	rm -f llvm/include/llvm/Config/Disassemblers.def
 	rm -f llvm/include/llvm/System/DataTypes.h llvm/include/llvm/Config/Targets.def
41423d38
 	rm -f llvm/tools/llvmc/plugins/Base/Base.td llvm/tools/llvm-config/llvm-config.in
 	rm -f llvm/include/llvm/Config/AsmParsers.def
07c85f37
 	if test $(abs_srcdir) != $(abs_builddir); then\
4f0d6540
 	    rm -f llvm/Makefile llvm/lib/Makefile llvm/test/Makefile\
07c85f37
 	    llvm/test/Makefile.tests llvm/tools/Makefile llvm/utils/Makefile\
 	    llvm/Makefile.common llvm/unittests/Makefile;\
 	fi
41423d38
 
2c7d5adc
 check-llvm: build-llvm-for-check
 	+$(GMAKE) -C llvm check
 	+$(GMAKE) -C llvm unittests
 
629ae7ab
 # Rule to rerun LLVM's configure if it changed, before building anything else
 # LLVM
 BUILT_SOURCES += llvm/config.status
 libllvmsystem_la_SOURCES += llvm/config.status
6bd85866
 $(top_builddir)/llvm/config.status: llvm/configure
629ae7ab
 	(cd llvm; ./config.status --recheck; ./config.status)
6bd85866
 
29227461
 # rm configure generated files
 dist-hook:
8e61d24a
 	make -C llvm dist-hook
 	rm -f $(distdir)/llvm/include/llvm/Config/*.h $(distdir)/llvm/include/llvm/Config/*.def $(distdir)/llvm/Makefile.config $(distdir)/llvm/llvm.spec
 	rm -f $(distdir)/llvm/docs/doxygen.cfg $(distdir)/llvm/tools/llvmc/plugins/Base/Base.td $(distdir)/llvm/tools/llvm-config/llvm-config.in
 	rm -f $(distdir)/llvm/include/llvm/Support/DataTypes.h $(distdir)/llvm/config.log $(distdir)/llvm/config.status
f75ba68c