pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
libLLVM: add package containing LLVM shared library only
Module Name: pkgsrc-wip
Committed By: Tobias Nygren <tnn%NetBSD.org@localhost>
Pushed By: tnn
Date: Mon Feb 22 00:53:27 2016 +0100
Changeset: 014093e5f492573e8a1196ca434d3822fe78ce3c
Modified Files:
Makefile
Added Files:
libLLVM/DESCR
libLLVM/Makefile
libLLVM/PLIST
libLLVM/buildlink3.mk
libLLVM/distinfo
libLLVM/options.mk
libLLVM/patches/patch-CMakeLists.txt
libLLVM/patches/patch-cmake_modules_AddLLVM.cmake
libLLVM/patches/patch-cmake_modules_CMakeLists.txt
libLLVM/patches/patch-cmake_modules_TableGen.cmake
libLLVM/patches/patch-include_llvm_Support_Host.h
libLLVM/patches/patch-lib_Transforms_CMakeLists.txt
libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt
Log Message:
libLLVM: add package containing LLVM shared library only
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=014093e5f492573e8a1196ca434d3822fe78ce3c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
libLLVM/DESCR | 7 +
libLLVM/Makefile | 105 +++
libLLVM/PLIST | 829 +++++++++++++++++++++
libLLVM/buildlink3.mk | 18 +
libLLVM/distinfo | 13 +
libLLVM/options.mk | 38 +
libLLVM/patches/patch-CMakeLists.txt | 24 +
libLLVM/patches/patch-cmake_modules_AddLLVM.cmake | 29 +
libLLVM/patches/patch-cmake_modules_CMakeLists.txt | 12 +
libLLVM/patches/patch-cmake_modules_TableGen.cmake | 15 +
libLLVM/patches/patch-include_llvm_Support_Host.h | 28 +
.../patches/patch-lib_Transforms_CMakeLists.txt | 12 +
.../patches/patch-tools_llvm-shlib_CMakeLists.txt | 21 +
14 files changed, 1152 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 9e4b6a2..2a53361 100644
--- a/Makefile
+++ b/Makefile
@@ -1488,6 +1488,7 @@ SUBDIR+= leveldb
SUBDIR+= lgogdownloader-git
SUBDIR+= lhapdf
SUBDIR+= lhs2tex
+SUBDIR+= libLLVM
SUBDIR+= libGenome
SUBDIR+= libalkimia
SUBDIR+= libanimal
diff --git a/libLLVM/DESCR b/libLLVM/DESCR
new file mode 100644
index 0000000..c785317
--- /dev/null
+++ b/libLLVM/DESCR
@@ -0,0 +1,7 @@
+The LLVM Project is a collection of modular and reusable compiler and toolchain
+technologies. Despite its name, LLVM has little to do with traditional virtual
+machines, though it does provide helpful libraries that can be used to build
+them.
+
+This package contains the LLVM core shared libraries intended to be usable by
+packages built on an otherwise GCC-built system.
diff --git a/libLLVM/Makefile b/libLLVM/Makefile
new file mode 100644
index 0000000..a9af861
--- /dev/null
+++ b/libLLVM/Makefile
@@ -0,0 +1,105 @@
+# $NetBSD$
+
+DISTNAME= llvm-3.8.0rc1.src
+PKGNAME= ${DISTNAME:S/llvm/libLLVM/:S/.src//}
+CATEGORIES= lang devel
+MASTER_SITES= http://llvm.org/pre-releases/3.8.0/rc1/
+#MASTER_SITES= http://llvm.org/releases/${PKGVERSION_NOREV}/
+EXTRACT_SUFX= .tar.xz
+
+MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= http://llvm.org/
+COMMENT= Low Level Virtual Machine shared library
+LICENSE= modified-bsd
+
+USE_LANGUAGES= c c++
+USE_CMAKE= yes
+GCC_REQD+= 4.8
+PYTHON_FOR_BUILD_ONLY= yes
+
+CONFIGURE_DIRS= ${WRKDIR}/build
+CMAKE_ARG_PATH= ${WRKSRC}
+
+CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Release
+CMAKE_ARGS+= -DCMAKE_C_COMPILER=gcc
+CMAKE_ARGS+= -DCMAKE_CXX_COMPILER=g++
+CMAKE_ARGS+= -DLLVM_BUILD_LLVM_DYLIB=On
+
+.for tool in bugpoint bugpoint_passes dsymutil llc lli llvm_ar \
+ llvm_as llvm_bcanalyzer llvm_c_test llvm_cov llvm_cxxdump \
+ llvm_diff llvm_dis llvm_dwarfdump llvm_dwp llvm_extract llvm_go \
+ llvm_jitlistener llvm_link llvm_lto llvm_mc llvm_mcmarkup \
+ llvm_nm llvm_objdump llvm_pdbdump llvm_profdata llvm_readobj \
+ llvm_rtdyld llvm_size llvm_split llvm_stress llvm_symbolizer \
+ lto obj2yaml opt sancov verify_uselistorder yaml2obj
+CMAKE_ARGS+= -DLLVM_TOOL_${tool:tu}_BUILD=OFF
+.endfor
+
+SUBST_CLASSES+= fix-cnf
+SUBST_STAGE.fix-cnf= pre-configure
+SUBST_MESSAGE.fix-cnf= Fixing llvm-config paths
+SUBST_FILES.fix-cnf= tools/llvm-config/llvm-config.cpp
+SUBST_SED.fix-cnf= -e 's|ActivePrefix + "/include"|"${PREFIX}/include/libLLVM"|g'
+SUBST_SED.fix-cnf+= -e 's|ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX|"${PREFIX}/lib/libLLVM"|g'
+SUBST_SED.fix-cnf+= -e 's|"-L" << ActiveLibDir|"${COMPILER_RPATH_FLAG}" << ActiveLibDir << " " << &|g'
+
+CHECK_PORTABILITY_SKIP= utils/buildit/build_llvm
+
+# XXX perl is not added as a tool as it does not seem to be required
+REPLACE_PERL+= utils/GenLibDeps.pl
+REPLACE_PERL+= utils/UpdateCMakeLists.pl
+REPLACE_PERL+= utils/codegen-diff
+REPLACE_PERL+= utils/findsym.pl
+REPLACE_PERL+= utils/llvm-native-gxx
+REPLACE_PERL+= utils/test_debuginfo.pl
+
+REPLACE_PYTHON+= examples/Kaleidoscope/MCJIT/cached/genk-timing.py
+REPLACE_PYTHON+= examples/Kaleidoscope/MCJIT/cached/split-lib.py
+REPLACE_PYTHON+= examples/Kaleidoscope/MCJIT/complete/genk-timing.py
+REPLACE_PYTHON+= examples/Kaleidoscope/MCJIT/complete/split-lib.py
+REPLACE_PYTHON+= examples/Kaleidoscope/MCJIT/lazy/genk-timing.py
+REPLACE_PYTHON+= test/BugPoint/compile-custom.ll.py
+REPLACE_PYTHON+= test/tools/llvm-readobj/Inputs/relocs.py
+REPLACE_PYTHON+= utils/Misc/zkill
+REPLACE_PYTHON+= utils/Target/ARM/analyze-match-table.py
+REPLACE_PYTHON+= utils/bisect
+REPLACE_PYTHON+= utils/clang-parse-diagnostics-file
+REPLACE_PYTHON+= utils/create_ladder_graph.py
+REPLACE_PYTHON+= utils/git/find-rev
+REPLACE_PYTHON+= utils/lint/common_lint.py
+REPLACE_PYTHON+= utils/lint/cpp_lint.py
+REPLACE_PYTHON+= utils/lint/generic_lint.py
+REPLACE_PYTHON+= utils/lit/lit.py
+REPLACE_PYTHON+= utils/lit/lit/ProgressBar.py
+REPLACE_PYTHON+= utils/lit/lit/main.py
+REPLACE_PYTHON+= utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest
+REPLACE_PYTHON+= utils/llvm-build/llvm-build
+REPLACE_PYTHON+= utils/llvm-compilers-check
+REPLACE_PYTHON+= utils/llvm-lit/llvm-lit.in
+REPLACE_PYTHON+= utils/release/findRegressions-nightly.py
+REPLACE_PYTHON+= utils/release/findRegressions-simple.py
+REPLACE_PYTHON+= utils/schedcover.py
+REPLACE_PYTHON+= utils/shuffle_fuzz.py
+REPLACE_PYTHON+= utils/sort_includes.py
+REPLACE_PYTHON+= utils/testgen/mc-bundling-x86-gen.py
+REPLACE_PYTHON+= utils/update_llc_test_checks.py
+REPLACE_PYTHON+= utils/wciia.py
+
+TEST_TARGET= check
+TEST_ENV+= LD_LIBRARY_PATH=${WRKDIR}/build/lib
+
+.include "../../mk/bsd.prefs.mk"
+.include "options.mk"
+
+post-extract:
+ ${RUN} mkdir -p ${WRKDIR}/build
+
+post-install:
+ ${INSTALL_LIB_DIR} ${DESTDIR}${PREFIX}/lib/libLLVM
+ ${INSTALL_LIB} ${WRKDIR}/build/lib/libLLVM-3.8.so ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM-3.8.so
+ ${LN} -s libLLVM-3.8.so ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM.so
+ ${LN} -s libLLVM-3.8.so ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM-3.8.0.so
+
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../lang/python/tool.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/libLLVM/PLIST b/libLLVM/PLIST
new file mode 100644
index 0000000..97b7249
--- /dev/null
+++ b/libLLVM/PLIST
@@ -0,0 +1,829 @@
+@comment $NetBSD$
+include/libLLVM/llvm-c/Analysis.h
+include/libLLVM/llvm-c/BitReader.h
+include/libLLVM/llvm-c/BitWriter.h
+include/libLLVM/llvm-c/Core.h
+include/libLLVM/llvm-c/Disassembler.h
+include/libLLVM/llvm-c/ErrorHandling.h
+include/libLLVM/llvm-c/ExecutionEngine.h
+include/libLLVM/llvm-c/IRReader.h
+include/libLLVM/llvm-c/Initialization.h
+include/libLLVM/llvm-c/LinkTimeOptimizer.h
+include/libLLVM/llvm-c/Linker.h
+include/libLLVM/llvm-c/Object.h
+include/libLLVM/llvm-c/OrcBindings.h
+include/libLLVM/llvm-c/Support.h
+include/libLLVM/llvm-c/Target.h
+include/libLLVM/llvm-c/TargetMachine.h
+include/libLLVM/llvm-c/Transforms/IPO.h
+include/libLLVM/llvm-c/Transforms/PassManagerBuilder.h
+include/libLLVM/llvm-c/Transforms/Scalar.h
+include/libLLVM/llvm-c/Transforms/Vectorize.h
+include/libLLVM/llvm-c/Types.h
+include/libLLVM/llvm-c/lto.h
+include/libLLVM/llvm/ADT/APFloat.h
+include/libLLVM/llvm/ADT/APInt.h
+include/libLLVM/llvm/ADT/APSInt.h
+include/libLLVM/llvm/ADT/ArrayRef.h
+include/libLLVM/llvm/ADT/BitVector.h
+include/libLLVM/llvm/ADT/DAGDeltaAlgorithm.h
+include/libLLVM/llvm/ADT/DeltaAlgorithm.h
+include/libLLVM/llvm/ADT/DenseMap.h
+include/libLLVM/llvm/ADT/DenseMapInfo.h
+include/libLLVM/llvm/ADT/DenseSet.h
+include/libLLVM/llvm/ADT/DepthFirstIterator.h
+include/libLLVM/llvm/ADT/EpochTracker.h
+include/libLLVM/llvm/ADT/EquivalenceClasses.h
+include/libLLVM/llvm/ADT/FoldingSet.h
+include/libLLVM/llvm/ADT/GraphTraits.h
+include/libLLVM/llvm/ADT/Hashing.h
+include/libLLVM/llvm/ADT/ImmutableList.h
+include/libLLVM/llvm/ADT/ImmutableMap.h
+include/libLLVM/llvm/ADT/ImmutableSet.h
+include/libLLVM/llvm/ADT/IndexedMap.h
+include/libLLVM/llvm/ADT/IntEqClasses.h
+include/libLLVM/llvm/ADT/IntervalMap.h
+include/libLLVM/llvm/ADT/IntrusiveRefCntPtr.h
+include/libLLVM/llvm/ADT/MapVector.h
+include/libLLVM/llvm/ADT/None.h
+include/libLLVM/llvm/ADT/Optional.h
+include/libLLVM/llvm/ADT/PackedVector.h
+include/libLLVM/llvm/ADT/PointerEmbeddedInt.h
+include/libLLVM/llvm/ADT/PointerIntPair.h
+include/libLLVM/llvm/ADT/PointerSumType.h
+include/libLLVM/llvm/ADT/PointerUnion.h
+include/libLLVM/llvm/ADT/PostOrderIterator.h
+include/libLLVM/llvm/ADT/PriorityQueue.h
+include/libLLVM/llvm/ADT/SCCIterator.h
+include/libLLVM/llvm/ADT/STLExtras.h
+include/libLLVM/llvm/ADT/ScopedHashTable.h
+include/libLLVM/llvm/ADT/SetOperations.h
+include/libLLVM/llvm/ADT/SetVector.h
+include/libLLVM/llvm/ADT/SmallBitVector.h
+include/libLLVM/llvm/ADT/SmallPtrSet.h
+include/libLLVM/llvm/ADT/SmallSet.h
+include/libLLVM/llvm/ADT/SmallString.h
+include/libLLVM/llvm/ADT/SmallVector.h
+include/libLLVM/llvm/ADT/SparseBitVector.h
+include/libLLVM/llvm/ADT/SparseMultiSet.h
+include/libLLVM/llvm/ADT/SparseSet.h
+include/libLLVM/llvm/ADT/Statistic.h
+include/libLLVM/llvm/ADT/StringExtras.h
+include/libLLVM/llvm/ADT/StringMap.h
+include/libLLVM/llvm/ADT/StringRef.h
+include/libLLVM/llvm/ADT/StringSet.h
+include/libLLVM/llvm/ADT/StringSwitch.h
+include/libLLVM/llvm/ADT/TinyPtrVector.h
+include/libLLVM/llvm/ADT/Triple.h
+include/libLLVM/llvm/ADT/Twine.h
+include/libLLVM/llvm/ADT/UniqueVector.h
+include/libLLVM/llvm/ADT/VariadicFunction.h
+include/libLLVM/llvm/ADT/edit_distance.h
+include/libLLVM/llvm/ADT/ilist.h
+include/libLLVM/llvm/ADT/ilist_node.h
+include/libLLVM/llvm/ADT/iterator.h
+include/libLLVM/llvm/ADT/iterator_range.h
+include/libLLVM/llvm/Analysis/AliasAnalysis.h
+include/libLLVM/llvm/Analysis/AliasSetTracker.h
+include/libLLVM/llvm/Analysis/AssumptionCache.h
+include/libLLVM/llvm/Analysis/BasicAliasAnalysis.h
+include/libLLVM/llvm/Analysis/BlockFrequencyInfo.h
+include/libLLVM/llvm/Analysis/BlockFrequencyInfoImpl.h
+include/libLLVM/llvm/Analysis/BranchProbabilityInfo.h
+include/libLLVM/llvm/Analysis/CFG.h
+include/libLLVM/llvm/Analysis/CFGPrinter.h
+include/libLLVM/llvm/Analysis/CFLAliasAnalysis.h
+include/libLLVM/llvm/Analysis/CGSCCPassManager.h
+include/libLLVM/llvm/Analysis/CallGraph.h
+include/libLLVM/llvm/Analysis/CallGraphSCCPass.h
+include/libLLVM/llvm/Analysis/CallPrinter.h
+include/libLLVM/llvm/Analysis/CaptureTracking.h
+include/libLLVM/llvm/Analysis/CodeMetrics.h
+include/libLLVM/llvm/Analysis/ConstantFolding.h
+include/libLLVM/llvm/Analysis/DOTGraphTraitsPass.h
+include/libLLVM/llvm/Analysis/DemandedBits.h
+include/libLLVM/llvm/Analysis/DependenceAnalysis.h
+include/libLLVM/llvm/Analysis/DivergenceAnalysis.h
+include/libLLVM/llvm/Analysis/DomPrinter.h
+include/libLLVM/llvm/Analysis/DominanceFrontier.h
+include/libLLVM/llvm/Analysis/DominanceFrontierImpl.h
+include/libLLVM/llvm/Analysis/EHPersonalities.h
+include/libLLVM/llvm/Analysis/GlobalsModRef.h
+include/libLLVM/llvm/Analysis/IVUsers.h
+include/libLLVM/llvm/Analysis/InlineCost.h
+include/libLLVM/llvm/Analysis/InstructionSimplify.h
+include/libLLVM/llvm/Analysis/Interval.h
+include/libLLVM/llvm/Analysis/IntervalIterator.h
+include/libLLVM/llvm/Analysis/IntervalPartition.h
+include/libLLVM/llvm/Analysis/IteratedDominanceFrontier.h
+include/libLLVM/llvm/Analysis/LazyCallGraph.h
+include/libLLVM/llvm/Analysis/LazyValueInfo.h
+include/libLLVM/llvm/Analysis/Lint.h
+include/libLLVM/llvm/Analysis/Loads.h
+include/libLLVM/llvm/Analysis/LoopAccessAnalysis.h
+include/libLLVM/llvm/Analysis/LoopInfo.h
+include/libLLVM/llvm/Analysis/LoopInfoImpl.h
+include/libLLVM/llvm/Analysis/LoopIterator.h
+include/libLLVM/llvm/Analysis/LoopPass.h
+include/libLLVM/llvm/Analysis/MemoryBuiltins.h
+include/libLLVM/llvm/Analysis/MemoryDependenceAnalysis.h
+include/libLLVM/llvm/Analysis/MemoryLocation.h
+include/libLLVM/llvm/Analysis/ObjCARCAliasAnalysis.h
+include/libLLVM/llvm/Analysis/ObjCARCAnalysisUtils.h
+include/libLLVM/llvm/Analysis/ObjCARCInstKind.h
+include/libLLVM/llvm/Analysis/OrderedBasicBlock.h
+include/libLLVM/llvm/Analysis/PHITransAddr.h
+include/libLLVM/llvm/Analysis/Passes.h
+include/libLLVM/llvm/Analysis/PostDominators.h
+include/libLLVM/llvm/Analysis/PtrUseVisitor.h
+include/libLLVM/llvm/Analysis/RegionInfo.h
+include/libLLVM/llvm/Analysis/RegionInfoImpl.h
+include/libLLVM/llvm/Analysis/RegionIterator.h
+include/libLLVM/llvm/Analysis/RegionPass.h
+include/libLLVM/llvm/Analysis/RegionPrinter.h
+include/libLLVM/llvm/Analysis/ScalarEvolution.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionAliasAnalysis.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionExpander.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionExpressions.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionNormalization.h
+include/libLLVM/llvm/Analysis/ScopedNoAliasAA.h
+include/libLLVM/llvm/Analysis/SparsePropagation.h
+include/libLLVM/llvm/Analysis/TargetFolder.h
+include/libLLVM/llvm/Analysis/TargetLibraryInfo.def
+include/libLLVM/llvm/Analysis/TargetLibraryInfo.h
+include/libLLVM/llvm/Analysis/TargetTransformInfo.h
+include/libLLVM/llvm/Analysis/TargetTransformInfoImpl.h
+include/libLLVM/llvm/Analysis/Trace.h
+include/libLLVM/llvm/Analysis/TypeBasedAliasAnalysis.h
+include/libLLVM/llvm/Analysis/ValueTracking.h
+include/libLLVM/llvm/Analysis/VectorUtils.h
+include/libLLVM/llvm/AsmParser/Parser.h
+include/libLLVM/llvm/AsmParser/SlotMapping.h
+include/libLLVM/llvm/Bitcode/BitCodes.h
+include/libLLVM/llvm/Bitcode/BitcodeWriterPass.h
+include/libLLVM/llvm/Bitcode/BitstreamReader.h
+include/libLLVM/llvm/Bitcode/BitstreamWriter.h
+include/libLLVM/llvm/Bitcode/LLVMBitCodes.h
+include/libLLVM/llvm/Bitcode/ReaderWriter.h
+include/libLLVM/llvm/CodeGen/Analysis.h
+include/libLLVM/llvm/CodeGen/AsmPrinter.h
+include/libLLVM/llvm/CodeGen/AtomicExpandUtils.h
+include/libLLVM/llvm/CodeGen/BasicTTIImpl.h
+include/libLLVM/llvm/CodeGen/CalcSpillWeights.h
+include/libLLVM/llvm/CodeGen/CallingConvLower.h
+include/libLLVM/llvm/CodeGen/CommandFlags.h
+include/libLLVM/llvm/CodeGen/DAGCombine.h
+include/libLLVM/llvm/CodeGen/DFAPacketizer.h
+include/libLLVM/llvm/CodeGen/DIE.h
+include/libLLVM/llvm/CodeGen/DIEValue.def
+include/libLLVM/llvm/CodeGen/DwarfStringPoolEntry.h
+include/libLLVM/llvm/CodeGen/EdgeBundles.h
+include/libLLVM/llvm/CodeGen/FastISel.h
+include/libLLVM/llvm/CodeGen/FaultMaps.h
+include/libLLVM/llvm/CodeGen/FunctionLoweringInfo.h
+include/libLLVM/llvm/CodeGen/GCMetadata.h
+include/libLLVM/llvm/CodeGen/GCMetadataPrinter.h
+include/libLLVM/llvm/CodeGen/GCStrategy.h
+include/libLLVM/llvm/CodeGen/GCs.h
+include/libLLVM/llvm/CodeGen/ISDOpcodes.h
+include/libLLVM/llvm/CodeGen/IntrinsicLowering.h
+include/libLLVM/llvm/CodeGen/LatencyPriorityQueue.h
+include/libLLVM/llvm/CodeGen/LexicalScopes.h
+include/libLLVM/llvm/CodeGen/LinkAllAsmWriterComponents.h
+include/libLLVM/llvm/CodeGen/LinkAllCodegenComponents.h
+include/libLLVM/llvm/CodeGen/LiveInterval.h
+include/libLLVM/llvm/CodeGen/LiveIntervalAnalysis.h
+include/libLLVM/llvm/CodeGen/LiveIntervalUnion.h
+include/libLLVM/llvm/CodeGen/LivePhysRegs.h
+include/libLLVM/llvm/CodeGen/LiveRangeEdit.h
+include/libLLVM/llvm/CodeGen/LiveRegMatrix.h
+include/libLLVM/llvm/CodeGen/LiveStackAnalysis.h
+include/libLLVM/llvm/CodeGen/LiveVariables.h
+include/libLLVM/llvm/CodeGen/MIRParser/MIRParser.h
+include/libLLVM/llvm/CodeGen/MIRYamlMapping.h
+include/libLLVM/llvm/CodeGen/MachORelocation.h
+include/libLLVM/llvm/CodeGen/MachineBasicBlock.h
+include/libLLVM/llvm/CodeGen/MachineBlockFrequencyInfo.h
+include/libLLVM/llvm/CodeGen/MachineBranchProbabilityInfo.h
+include/libLLVM/llvm/CodeGen/MachineCombinerPattern.h
+include/libLLVM/llvm/CodeGen/MachineConstantPool.h
+include/libLLVM/llvm/CodeGen/MachineDominanceFrontier.h
+include/libLLVM/llvm/CodeGen/MachineDominators.h
+include/libLLVM/llvm/CodeGen/MachineFrameInfo.h
+include/libLLVM/llvm/CodeGen/MachineFunction.h
+include/libLLVM/llvm/CodeGen/MachineFunctionAnalysis.h
+include/libLLVM/llvm/CodeGen/MachineFunctionInitializer.h
+include/libLLVM/llvm/CodeGen/MachineFunctionPass.h
+include/libLLVM/llvm/CodeGen/MachineInstr.h
+include/libLLVM/llvm/CodeGen/MachineInstrBuilder.h
+include/libLLVM/llvm/CodeGen/MachineInstrBundle.h
+include/libLLVM/llvm/CodeGen/MachineJumpTableInfo.h
+include/libLLVM/llvm/CodeGen/MachineLoopInfo.h
+include/libLLVM/llvm/CodeGen/MachineMemOperand.h
+include/libLLVM/llvm/CodeGen/MachineModuleInfo.h
+include/libLLVM/llvm/CodeGen/MachineModuleInfoImpls.h
+include/libLLVM/llvm/CodeGen/MachineOperand.h
+include/libLLVM/llvm/CodeGen/MachinePassRegistry.h
+include/libLLVM/llvm/CodeGen/MachinePostDominators.h
+include/libLLVM/llvm/CodeGen/MachineRegionInfo.h
+include/libLLVM/llvm/CodeGen/MachineRegisterInfo.h
+include/libLLVM/llvm/CodeGen/MachineSSAUpdater.h
+include/libLLVM/llvm/CodeGen/MachineScheduler.h
+include/libLLVM/llvm/CodeGen/MachineTraceMetrics.h
+include/libLLVM/llvm/CodeGen/MachineValueType.h
+include/libLLVM/llvm/CodeGen/PBQP/CostAllocator.h
+include/libLLVM/llvm/CodeGen/PBQP/Graph.h
+include/libLLVM/llvm/CodeGen/PBQP/Math.h
+include/libLLVM/llvm/CodeGen/PBQP/ReductionRules.h
+include/libLLVM/llvm/CodeGen/PBQP/Solution.h
+include/libLLVM/llvm/CodeGen/PBQPRAConstraint.h
+include/libLLVM/llvm/CodeGen/ParallelCG.h
+include/libLLVM/llvm/CodeGen/Passes.h
+include/libLLVM/llvm/CodeGen/PseudoSourceValue.h
+include/libLLVM/llvm/CodeGen/RegAllocPBQP.h
+include/libLLVM/llvm/CodeGen/RegAllocRegistry.h
+include/libLLVM/llvm/CodeGen/RegisterClassInfo.h
+include/libLLVM/llvm/CodeGen/RegisterPressure.h
+include/libLLVM/llvm/CodeGen/RegisterScavenging.h
+include/libLLVM/llvm/CodeGen/ResourcePriorityQueue.h
+include/libLLVM/llvm/CodeGen/RuntimeLibcalls.h
+include/libLLVM/llvm/CodeGen/ScheduleDAG.h
+include/libLLVM/llvm/CodeGen/ScheduleDAGInstrs.h
+include/libLLVM/llvm/CodeGen/ScheduleDFS.h
+include/libLLVM/llvm/CodeGen/ScheduleHazardRecognizer.h
+include/libLLVM/llvm/CodeGen/SchedulerRegistry.h
+include/libLLVM/llvm/CodeGen/ScoreboardHazardRecognizer.h
+include/libLLVM/llvm/CodeGen/SelectionDAG.h
+include/libLLVM/llvm/CodeGen/SelectionDAGISel.h
+include/libLLVM/llvm/CodeGen/SelectionDAGNodes.h
+include/libLLVM/llvm/CodeGen/SlotIndexes.h
+include/libLLVM/llvm/CodeGen/StackMaps.h
+include/libLLVM/llvm/CodeGen/StackProtector.h
+include/libLLVM/llvm/CodeGen/TargetLoweringObjectFileImpl.h
+include/libLLVM/llvm/CodeGen/TargetSchedule.h
+include/libLLVM/llvm/CodeGen/ValueTypes.h
+include/libLLVM/llvm/CodeGen/ValueTypes.td
+include/libLLVM/llvm/CodeGen/VirtRegMap.h
+include/libLLVM/llvm/CodeGen/WinEHFuncInfo.h
+include/libLLVM/llvm/Config/AsmParsers.def
+include/libLLVM/llvm/Config/AsmPrinters.def
+include/libLLVM/llvm/Config/Disassemblers.def
+include/libLLVM/llvm/Config/Targets.def
+include/libLLVM/llvm/Config/llvm-config.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeView.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeViewOStream.h
+include/libLLVM/llvm/DebugInfo/CodeView/FieldListRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/FunctionId.h
+include/libLLVM/llvm/DebugInfo/CodeView/Line.h
+include/libLLVM/llvm/DebugInfo/CodeView/ListRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/MemoryTypeTableBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/MethodListRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeIndex.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeRecord.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeSymbolEmitter.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeTableBuilder.h
+include/libLLVM/llvm/DebugInfo/DIContext.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFCompileUnit.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFContext.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugAranges.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugLine.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugLoc.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugMacro.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFFormValue.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFRelocMap.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFSection.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFTypeUnit.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFUnit.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFUnitIndex.h
+include/libLLVM/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIADataStream.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumDebugStreams.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumLineNumbers.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumSourceFiles.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumSymbols.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIALineNumber.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIASession.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIASourceFile.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIASupport.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBDataStream.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBEnumChildren.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBLineNumber.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBRawSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBSession.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBSourceFile.h
+include/libLLVM/llvm/DebugInfo/PDB/PDB.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBContext.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBExtras.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymDumper.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolBlock.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCompiland.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCustom.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolData.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolExe.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolFunc.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolLabel.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolThunk.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolUnknown.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBTypes.h
+include/libLLVM/llvm/DebugInfo/Symbolize/DIPrinter.h
+include/libLLVM/llvm/DebugInfo/Symbolize/SymbolizableModule.h
+include/libLLVM/llvm/DebugInfo/Symbolize/Symbolize.h
+include/libLLVM/llvm/ExecutionEngine/ExecutionEngine.h
+include/libLLVM/llvm/ExecutionEngine/GenericValue.h
+include/libLLVM/llvm/ExecutionEngine/Interpreter.h
+include/libLLVM/llvm/ExecutionEngine/JITEventListener.h
+include/libLLVM/llvm/ExecutionEngine/JITSymbolFlags.h
+include/libLLVM/llvm/ExecutionEngine/MCJIT.h
+include/libLLVM/llvm/ExecutionEngine/OProfileWrapper.h
+include/libLLVM/llvm/ExecutionEngine/ObjectCache.h
+include/libLLVM/llvm/ExecutionEngine/ObjectMemoryBuffer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/CompileUtils.h
+include/libLLVM/llvm/ExecutionEngine/Orc/ExecutionUtils.h
+include/libLLVM/llvm/ExecutionEngine/Orc/GlobalMappingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/IRCompileLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/IRTransformLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/IndirectionUtils.h
+include/libLLVM/llvm/ExecutionEngine/Orc/JITSymbol.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LambdaResolver.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LogicalDylib.h
+include/libLLVM/llvm/ExecutionEngine/Orc/NullResolver.h
+include/libLLVM/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcArchitectureSupport.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcError.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/RPCChannel.h
+include/libLLVM/llvm/ExecutionEngine/Orc/RPCUtils.h
+include/libLLVM/llvm/ExecutionEngine/OrcMCJITReplacement.h
+include/libLLVM/llvm/ExecutionEngine/RTDyldMemoryManager.h
+include/libLLVM/llvm/ExecutionEngine/RuntimeDyld.h
+include/libLLVM/llvm/ExecutionEngine/RuntimeDyldChecker.h
+include/libLLVM/llvm/ExecutionEngine/SectionMemoryManager.h
+include/libLLVM/llvm/IR/Argument.h
+include/libLLVM/llvm/IR/AssemblyAnnotationWriter.h
+include/libLLVM/llvm/IR/Attributes.h
+include/libLLVM/llvm/IR/Attributes.inc
+include/libLLVM/llvm/IR/Attributes.td
+include/libLLVM/llvm/IR/AutoUpgrade.h
+include/libLLVM/llvm/IR/BasicBlock.h
+include/libLLVM/llvm/IR/CFG.h
+include/libLLVM/llvm/IR/CallSite.h
+include/libLLVM/llvm/IR/CallingConv.h
+include/libLLVM/llvm/IR/Comdat.h
+include/libLLVM/llvm/IR/Constant.h
+include/libLLVM/llvm/IR/ConstantFolder.h
+include/libLLVM/llvm/IR/ConstantRange.h
+include/libLLVM/llvm/IR/Constants.h
+include/libLLVM/llvm/IR/DIBuilder.h
+include/libLLVM/llvm/IR/DataLayout.h
+include/libLLVM/llvm/IR/DebugInfo.h
+include/libLLVM/llvm/IR/DebugInfoFlags.def
+include/libLLVM/llvm/IR/DebugInfoMetadata.h
+include/libLLVM/llvm/IR/DebugLoc.h
+include/libLLVM/llvm/IR/DerivedTypes.h
+include/libLLVM/llvm/IR/DiagnosticInfo.h
+include/libLLVM/llvm/IR/DiagnosticPrinter.h
+include/libLLVM/llvm/IR/Dominators.h
+include/libLLVM/llvm/IR/Function.h
+include/libLLVM/llvm/IR/FunctionInfo.h
+include/libLLVM/llvm/IR/GVMaterializer.h
+include/libLLVM/llvm/IR/GetElementPtrTypeIterator.h
+include/libLLVM/llvm/IR/GlobalAlias.h
+include/libLLVM/llvm/IR/GlobalObject.h
+include/libLLVM/llvm/IR/GlobalValue.h
+include/libLLVM/llvm/IR/GlobalVariable.h
+include/libLLVM/llvm/IR/IRBuilder.h
+include/libLLVM/llvm/IR/IRPrintingPasses.h
+include/libLLVM/llvm/IR/InlineAsm.h
+include/libLLVM/llvm/IR/InstIterator.h
+include/libLLVM/llvm/IR/InstVisitor.h
+include/libLLVM/llvm/IR/InstrTypes.h
+include/libLLVM/llvm/IR/Instruction.def
+include/libLLVM/llvm/IR/Instruction.h
+include/libLLVM/llvm/IR/Instructions.h
+include/libLLVM/llvm/IR/IntrinsicInst.h
+include/libLLVM/llvm/IR/Intrinsics.gen
+include/libLLVM/llvm/IR/Intrinsics.h
+include/libLLVM/llvm/IR/Intrinsics.td
+include/libLLVM/llvm/IR/IntrinsicsAArch64.td
+include/libLLVM/llvm/IR/IntrinsicsAMDGPU.td
+include/libLLVM/llvm/IR/IntrinsicsARM.td
+include/libLLVM/llvm/IR/IntrinsicsBPF.td
+include/libLLVM/llvm/IR/IntrinsicsHexagon.td
+include/libLLVM/llvm/IR/IntrinsicsMips.td
+include/libLLVM/llvm/IR/IntrinsicsNVVM.td
+include/libLLVM/llvm/IR/IntrinsicsPowerPC.td
+include/libLLVM/llvm/IR/IntrinsicsSystemZ.td
+include/libLLVM/llvm/IR/IntrinsicsWebAssembly.td
+include/libLLVM/llvm/IR/IntrinsicsX86.td
+include/libLLVM/llvm/IR/IntrinsicsXCore.td
+include/libLLVM/llvm/IR/LLVMContext.h
+include/libLLVM/llvm/IR/LegacyPassManager.h
+include/libLLVM/llvm/IR/LegacyPassManagers.h
+include/libLLVM/llvm/IR/LegacyPassNameParser.h
+include/libLLVM/llvm/IR/MDBuilder.h
+include/libLLVM/llvm/IR/Mangler.h
+include/libLLVM/llvm/IR/Metadata.def
+include/libLLVM/llvm/IR/Metadata.h
+include/libLLVM/llvm/IR/Module.h
+include/libLLVM/llvm/IR/ModuleSlotTracker.h
+include/libLLVM/llvm/IR/NoFolder.h
+include/libLLVM/llvm/IR/OperandTraits.h
+include/libLLVM/llvm/IR/Operator.h
+include/libLLVM/llvm/IR/PassManager.h
+include/libLLVM/llvm/IR/PassManagerInternal.h
+include/libLLVM/llvm/IR/PatternMatch.h
+include/libLLVM/llvm/IR/PredIteratorCache.h
+include/libLLVM/llvm/IR/Statepoint.h
+include/libLLVM/llvm/IR/SymbolTableListTraits.h
+include/libLLVM/llvm/IR/TrackingMDRef.h
+include/libLLVM/llvm/IR/Type.h
+include/libLLVM/llvm/IR/TypeBuilder.h
+include/libLLVM/llvm/IR/TypeFinder.h
+include/libLLVM/llvm/IR/Use.h
+include/libLLVM/llvm/IR/UseListOrder.h
+include/libLLVM/llvm/IR/User.h
+include/libLLVM/llvm/IR/Value.def
+include/libLLVM/llvm/IR/Value.h
+include/libLLVM/llvm/IR/ValueHandle.h
+include/libLLVM/llvm/IR/ValueMap.h
+include/libLLVM/llvm/IR/ValueSymbolTable.h
+include/libLLVM/llvm/IR/Verifier.h
+include/libLLVM/llvm/IRReader/IRReader.h
+include/libLLVM/llvm/InitializePasses.h
+include/libLLVM/llvm/LTO/LTOCodeGenerator.h
+include/libLLVM/llvm/LTO/LTOModule.h
+include/libLLVM/llvm/LibDriver/LibDriver.h
+include/libLLVM/llvm/LineEditor/LineEditor.h
+include/libLLVM/llvm/LinkAllIR.h
+include/libLLVM/llvm/LinkAllPasses.h
+include/libLLVM/llvm/Linker/IRMover.h
+include/libLLVM/llvm/Linker/Linker.h
+include/libLLVM/llvm/MC/ConstantPools.h
+include/libLLVM/llvm/MC/MCAsmBackend.h
+include/libLLVM/llvm/MC/MCAsmInfo.h
+include/libLLVM/llvm/MC/MCAsmInfoCOFF.h
+include/libLLVM/llvm/MC/MCAsmInfoDarwin.h
+include/libLLVM/llvm/MC/MCAsmInfoELF.h
+include/libLLVM/llvm/MC/MCAsmLayout.h
+include/libLLVM/llvm/MC/MCAssembler.h
+include/libLLVM/llvm/MC/MCCodeEmitter.h
+include/libLLVM/llvm/MC/MCCodeGenInfo.h
+include/libLLVM/llvm/MC/MCContext.h
+include/libLLVM/llvm/MC/MCDirectives.h
+include/libLLVM/llvm/MC/MCDisassembler.h
+include/libLLVM/llvm/MC/MCDwarf.h
+include/libLLVM/llvm/MC/MCELFObjectWriter.h
+include/libLLVM/llvm/MC/MCELFStreamer.h
+include/libLLVM/llvm/MC/MCExpr.h
+include/libLLVM/llvm/MC/MCExternalSymbolizer.h
+include/libLLVM/llvm/MC/MCFixedLenDisassembler.h
+include/libLLVM/llvm/MC/MCFixup.h
+include/libLLVM/llvm/MC/MCFixupKindInfo.h
+include/libLLVM/llvm/MC/MCFragment.h
+include/libLLVM/llvm/MC/MCInst.h
+include/libLLVM/llvm/MC/MCInstBuilder.h
+include/libLLVM/llvm/MC/MCInstPrinter.h
+include/libLLVM/llvm/MC/MCInstrAnalysis.h
+include/libLLVM/llvm/MC/MCInstrDesc.h
+include/libLLVM/llvm/MC/MCInstrInfo.h
+include/libLLVM/llvm/MC/MCInstrItineraries.h
+include/libLLVM/llvm/MC/MCLabel.h
+include/libLLVM/llvm/MC/MCLinkerOptimizationHint.h
+include/libLLVM/llvm/MC/MCMachObjectWriter.h
+include/libLLVM/llvm/MC/MCObjectFileInfo.h
+include/libLLVM/llvm/MC/MCObjectStreamer.h
+include/libLLVM/llvm/MC/MCObjectWriter.h
+include/libLLVM/llvm/MC/MCParser/AsmCond.h
+include/libLLVM/llvm/MC/MCParser/AsmLexer.h
+include/libLLVM/llvm/MC/MCParser/MCAsmLexer.h
+include/libLLVM/llvm/MC/MCParser/MCAsmParser.h
+include/libLLVM/llvm/MC/MCParser/MCAsmParserExtension.h
+include/libLLVM/llvm/MC/MCParser/MCAsmParserUtils.h
+include/libLLVM/llvm/MC/MCParser/MCParsedAsmOperand.h
+include/libLLVM/llvm/MC/MCRegisterInfo.h
+include/libLLVM/llvm/MC/MCRelocationInfo.h
+include/libLLVM/llvm/MC/MCSchedule.h
+include/libLLVM/llvm/MC/MCSection.h
+include/libLLVM/llvm/MC/MCSectionCOFF.h
+include/libLLVM/llvm/MC/MCSectionELF.h
+include/libLLVM/llvm/MC/MCSectionMachO.h
+include/libLLVM/llvm/MC/MCStreamer.h
+include/libLLVM/llvm/MC/MCSubtargetInfo.h
+include/libLLVM/llvm/MC/MCSymbol.h
+include/libLLVM/llvm/MC/MCSymbolCOFF.h
+include/libLLVM/llvm/MC/MCSymbolELF.h
+include/libLLVM/llvm/MC/MCSymbolMachO.h
+include/libLLVM/llvm/MC/MCSymbolizer.h
+include/libLLVM/llvm/MC/MCTargetAsmParser.h
+include/libLLVM/llvm/MC/MCTargetOptions.h
+include/libLLVM/llvm/MC/MCTargetOptionsCommandFlags.h
+include/libLLVM/llvm/MC/MCValue.h
+include/libLLVM/llvm/MC/MCWin64EH.h
+include/libLLVM/llvm/MC/MCWinCOFFObjectWriter.h
+include/libLLVM/llvm/MC/MCWinCOFFStreamer.h
+include/libLLVM/llvm/MC/MCWinEH.h
+include/libLLVM/llvm/MC/MachineLocation.h
+include/libLLVM/llvm/MC/SectionKind.h
+include/libLLVM/llvm/MC/StringTableBuilder.h
+include/libLLVM/llvm/MC/SubtargetFeature.h
+include/libLLVM/llvm/MC/YAML.h
+include/libLLVM/llvm/Object/Archive.h
+include/libLLVM/llvm/Object/ArchiveWriter.h
+include/libLLVM/llvm/Object/Binary.h
+include/libLLVM/llvm/Object/COFF.h
+include/libLLVM/llvm/Object/COFFImportFile.h
+include/libLLVM/llvm/Object/COFFYAML.h
+include/libLLVM/llvm/Object/ELF.h
+include/libLLVM/llvm/Object/ELFObjectFile.h
+include/libLLVM/llvm/Object/ELFTypes.h
+include/libLLVM/llvm/Object/ELFYAML.h
+include/libLLVM/llvm/Object/Error.h
+include/libLLVM/llvm/Object/FunctionIndexObjectFile.h
+include/libLLVM/llvm/Object/IRObjectFile.h
+include/libLLVM/llvm/Object/MachO.h
+include/libLLVM/llvm/Object/MachOUniversal.h
+include/libLLVM/llvm/Object/ObjectFile.h
+include/libLLVM/llvm/Object/RelocVisitor.h
+include/libLLVM/llvm/Object/StackMapParser.h
+include/libLLVM/llvm/Object/SymbolSize.h
+include/libLLVM/llvm/Object/SymbolicFile.h
+include/libLLVM/llvm/Option/Arg.h
+include/libLLVM/llvm/Option/ArgList.h
+include/libLLVM/llvm/Option/OptParser.td
+include/libLLVM/llvm/Option/OptSpecifier.h
+include/libLLVM/llvm/Option/OptTable.h
+include/libLLVM/llvm/Option/Option.h
+include/libLLVM/llvm/Pass.h
+include/libLLVM/llvm/PassAnalysisSupport.h
+include/libLLVM/llvm/PassInfo.h
+include/libLLVM/llvm/PassRegistry.h
+include/libLLVM/llvm/PassSupport.h
+include/libLLVM/llvm/Passes/PassBuilder.h
+include/libLLVM/llvm/ProfileData/CoverageMapping.h
+include/libLLVM/llvm/ProfileData/CoverageMappingReader.h
+include/libLLVM/llvm/ProfileData/CoverageMappingWriter.h
+include/libLLVM/llvm/ProfileData/InstrProf.h
+include/libLLVM/llvm/ProfileData/InstrProfData.inc
+include/libLLVM/llvm/ProfileData/InstrProfReader.h
+include/libLLVM/llvm/ProfileData/InstrProfWriter.h
+include/libLLVM/llvm/ProfileData/SampleProf.h
+include/libLLVM/llvm/ProfileData/SampleProfReader.h
+include/libLLVM/llvm/ProfileData/SampleProfWriter.h
+include/libLLVM/llvm/Support/AIXDataTypesFix.h
+include/libLLVM/llvm/Support/ARMBuildAttributes.h
+include/libLLVM/llvm/Support/ARMEHABI.h
+include/libLLVM/llvm/Support/ARMTargetParser.def
+include/libLLVM/llvm/Support/ARMWinEH.h
+include/libLLVM/llvm/Support/AlignOf.h
+include/libLLVM/llvm/Support/Allocator.h
+include/libLLVM/llvm/Support/ArrayRecycler.h
+include/libLLVM/llvm/Support/Atomic.h
+include/libLLVM/llvm/Support/BlockFrequency.h
+include/libLLVM/llvm/Support/BranchProbability.h
+include/libLLVM/llvm/Support/CBindingWrapping.h
+include/libLLVM/llvm/Support/COFF.h
+include/libLLVM/llvm/Support/COM.h
+include/libLLVM/llvm/Support/Capacity.h
+include/libLLVM/llvm/Support/Casting.h
+include/libLLVM/llvm/Support/CodeGen.h
+include/libLLVM/llvm/Support/CommandLine.h
+include/libLLVM/llvm/Support/Compiler.h
+include/libLLVM/llvm/Support/Compression.h
+include/libLLVM/llvm/Support/ConvertUTF.h
+include/libLLVM/llvm/Support/CrashRecoveryContext.h
+include/libLLVM/llvm/Support/DOTGraphTraits.h
+include/libLLVM/llvm/Support/DataExtractor.h
+include/libLLVM/llvm/Support/DataStream.h
+include/libLLVM/llvm/Support/DataTypes.h
+include/libLLVM/llvm/Support/Debug.h
+include/libLLVM/llvm/Support/Dwarf.def
+include/libLLVM/llvm/Support/Dwarf.h
+include/libLLVM/llvm/Support/DynamicLibrary.h
+include/libLLVM/llvm/Support/ELF.h
+include/libLLVM/llvm/Support/ELFRelocs/AArch64.def
+include/libLLVM/llvm/Support/ELFRelocs/ARM.def
+include/libLLVM/llvm/Support/ELFRelocs/AVR.def
+include/libLLVM/llvm/Support/ELFRelocs/Hexagon.def
+include/libLLVM/llvm/Support/ELFRelocs/Mips.def
+include/libLLVM/llvm/Support/ELFRelocs/PowerPC.def
+include/libLLVM/llvm/Support/ELFRelocs/PowerPC64.def
+include/libLLVM/llvm/Support/ELFRelocs/Sparc.def
+include/libLLVM/llvm/Support/ELFRelocs/SystemZ.def
+include/libLLVM/llvm/Support/ELFRelocs/WebAssembly.def
+include/libLLVM/llvm/Support/ELFRelocs/i386.def
+include/libLLVM/llvm/Support/ELFRelocs/x86_64.def
+include/libLLVM/llvm/Support/Endian.h
+include/libLLVM/llvm/Support/EndianStream.h
+include/libLLVM/llvm/Support/Errc.h
+include/libLLVM/llvm/Support/Errno.h
+include/libLLVM/llvm/Support/ErrorHandling.h
+include/libLLVM/llvm/Support/ErrorOr.h
+include/libLLVM/llvm/Support/FileOutputBuffer.h
+include/libLLVM/llvm/Support/FileSystem.h
+include/libLLVM/llvm/Support/FileUtilities.h
+include/libLLVM/llvm/Support/Format.h
+include/libLLVM/llvm/Support/FormattedStream.h
+include/libLLVM/llvm/Support/GCOV.h
+include/libLLVM/llvm/Support/GenericDomTree.h
+include/libLLVM/llvm/Support/GenericDomTreeConstruction.h
+include/libLLVM/llvm/Support/GraphWriter.h
+include/libLLVM/llvm/Support/Host.h
+include/libLLVM/llvm/Support/JamCRC.h
+include/libLLVM/llvm/Support/LEB128.h
+include/libLLVM/llvm/Support/LICENSE.TXT
+include/libLLVM/llvm/Support/LineIterator.h
+include/libLLVM/llvm/Support/Locale.h
+include/libLLVM/llvm/Support/LockFileManager.h
+include/libLLVM/llvm/Support/MD5.h
+include/libLLVM/llvm/Support/MachO.h
+include/libLLVM/llvm/Support/ManagedStatic.h
+include/libLLVM/llvm/Support/MathExtras.h
+include/libLLVM/llvm/Support/Memory.h
+include/libLLVM/llvm/Support/MemoryBuffer.h
+include/libLLVM/llvm/Support/MemoryObject.h
+include/libLLVM/llvm/Support/MipsABIFlags.h
+include/libLLVM/llvm/Support/Mutex.h
+include/libLLVM/llvm/Support/MutexGuard.h
+include/libLLVM/llvm/Support/OnDiskHashTable.h
+include/libLLVM/llvm/Support/Options.h
+include/libLLVM/llvm/Support/Path.h
+include/libLLVM/llvm/Support/PluginLoader.h
+include/libLLVM/llvm/Support/PointerLikeTypeTraits.h
+include/libLLVM/llvm/Support/PrettyStackTrace.h
+include/libLLVM/llvm/Support/Printable.h
+include/libLLVM/llvm/Support/Process.h
+include/libLLVM/llvm/Support/Program.h
+include/libLLVM/llvm/Support/RWMutex.h
+include/libLLVM/llvm/Support/RandomNumberGenerator.h
+include/libLLVM/llvm/Support/Recycler.h
+include/libLLVM/llvm/Support/RecyclingAllocator.h
+include/libLLVM/llvm/Support/Regex.h
+include/libLLVM/llvm/Support/Registry.h
+include/libLLVM/llvm/Support/RegistryParser.h
+include/libLLVM/llvm/Support/SMLoc.h
+include/libLLVM/llvm/Support/SaveAndRestore.h
+include/libLLVM/llvm/Support/ScaledNumber.h
+include/libLLVM/llvm/Support/Signals.h
+include/libLLVM/llvm/Support/Solaris.h
+include/libLLVM/llvm/Support/SourceMgr.h
+include/libLLVM/llvm/Support/SpecialCaseList.h
+include/libLLVM/llvm/Support/StreamingMemoryObject.h
+include/libLLVM/llvm/Support/StringPool.h
+include/libLLVM/llvm/Support/StringSaver.h
+include/libLLVM/llvm/Support/SwapByteOrder.h
+include/libLLVM/llvm/Support/SystemUtils.h
+include/libLLVM/llvm/Support/TargetParser.h
+include/libLLVM/llvm/Support/TargetRegistry.h
+include/libLLVM/llvm/Support/TargetSelect.h
+include/libLLVM/llvm/Support/ThreadLocal.h
+include/libLLVM/llvm/Support/ThreadPool.h
+include/libLLVM/llvm/Support/Threading.h
+include/libLLVM/llvm/Support/TimeValue.h
+include/libLLVM/llvm/Support/Timer.h
+include/libLLVM/llvm/Support/ToolOutputFile.h
+include/libLLVM/llvm/Support/TrailingObjects.h
+include/libLLVM/llvm/Support/Unicode.h
+include/libLLVM/llvm/Support/UnicodeCharRanges.h
+include/libLLVM/llvm/Support/UniqueLock.h
+include/libLLVM/llvm/Support/Valgrind.h
+include/libLLVM/llvm/Support/Watchdog.h
+include/libLLVM/llvm/Support/Win64EH.h
+include/libLLVM/llvm/Support/WindowsError.h
+include/libLLVM/llvm/Support/YAMLParser.h
+include/libLLVM/llvm/Support/YAMLTraits.h
+include/libLLVM/llvm/Support/circular_raw_ostream.h
+include/libLLVM/llvm/Support/raw_os_ostream.h
+include/libLLVM/llvm/Support/raw_ostream.h
+include/libLLVM/llvm/Support/thread.h
+include/libLLVM/llvm/Support/type_traits.h
+include/libLLVM/llvm/TableGen/Error.h
+include/libLLVM/llvm/TableGen/Main.h
+include/libLLVM/llvm/TableGen/Record.h
+include/libLLVM/llvm/TableGen/SetTheory.h
+include/libLLVM/llvm/TableGen/StringMatcher.h
+include/libLLVM/llvm/TableGen/StringToOffsetTable.h
+include/libLLVM/llvm/TableGen/TableGenBackend.h
+include/libLLVM/llvm/Target/CostTable.h
+include/libLLVM/llvm/Target/Target.td
+include/libLLVM/llvm/Target/TargetCallingConv.h
+include/libLLVM/llvm/Target/TargetCallingConv.td
+include/libLLVM/llvm/Target/TargetFrameLowering.h
+include/libLLVM/llvm/Target/TargetInstrInfo.h
+include/libLLVM/llvm/Target/TargetIntrinsicInfo.h
+include/libLLVM/llvm/Target/TargetItinerary.td
+include/libLLVM/llvm/Target/TargetLowering.h
+include/libLLVM/llvm/Target/TargetLoweringObjectFile.h
+include/libLLVM/llvm/Target/TargetMachine.h
+include/libLLVM/llvm/Target/TargetOpcodes.h
+include/libLLVM/llvm/Target/TargetOptions.h
+include/libLLVM/llvm/Target/TargetRecip.h
+include/libLLVM/llvm/Target/TargetRegisterInfo.h
+include/libLLVM/llvm/Target/TargetSchedule.td
+include/libLLVM/llvm/Target/TargetSelectionDAG.td
+include/libLLVM/llvm/Target/TargetSelectionDAGInfo.h
+include/libLLVM/llvm/Target/TargetSubtargetInfo.h
+include/libLLVM/llvm/Transforms/IPO.h
+include/libLLVM/llvm/Transforms/IPO/ForceFunctionAttrs.h
+include/libLLVM/llvm/Transforms/IPO/FunctionImport.h
+include/libLLVM/llvm/Transforms/IPO/InferFunctionAttrs.h
+include/libLLVM/llvm/Transforms/IPO/InlinerPass.h
+include/libLLVM/llvm/Transforms/IPO/LowerBitSets.h
+include/libLLVM/llvm/Transforms/IPO/PassManagerBuilder.h
+include/libLLVM/llvm/Transforms/IPO/StripDeadPrototypes.h
+include/libLLVM/llvm/Transforms/InstCombine/InstCombine.h
+include/libLLVM/llvm/Transforms/InstCombine/InstCombineWorklist.h
+include/libLLVM/llvm/Transforms/Instrumentation.h
+include/libLLVM/llvm/Transforms/ObjCARC.h
+include/libLLVM/llvm/Transforms/Scalar.h
+include/libLLVM/llvm/Transforms/Scalar/ADCE.h
+include/libLLVM/llvm/Transforms/Scalar/EarlyCSE.h
+include/libLLVM/llvm/Transforms/Scalar/LowerExpectIntrinsic.h
+include/libLLVM/llvm/Transforms/Scalar/SROA.h
+include/libLLVM/llvm/Transforms/Scalar/SimplifyCFG.h
+include/libLLVM/llvm/Transforms/Utils/ASanStackFrameLayout.h
+include/libLLVM/llvm/Transforms/Utils/BasicBlockUtils.h
+include/libLLVM/llvm/Transforms/Utils/BuildLibCalls.h
+include/libLLVM/llvm/Transforms/Utils/BypassSlowDivision.h
+include/libLLVM/llvm/Transforms/Utils/Cloning.h
+include/libLLVM/llvm/Transforms/Utils/CmpInstAnalysis.h
+include/libLLVM/llvm/Transforms/Utils/CodeExtractor.h
+include/libLLVM/llvm/Transforms/Utils/CtorUtils.h
+include/libLLVM/llvm/Transforms/Utils/GlobalStatus.h
+include/libLLVM/llvm/Transforms/Utils/IntegerDivision.h
+include/libLLVM/llvm/Transforms/Utils/Local.h
+include/libLLVM/llvm/Transforms/Utils/LoopUtils.h
+include/libLLVM/llvm/Transforms/Utils/LoopVersioning.h
+include/libLLVM/llvm/Transforms/Utils/ModuleUtils.h
+include/libLLVM/llvm/Transforms/Utils/PromoteMemToReg.h
+include/libLLVM/llvm/Transforms/Utils/SSAUpdater.h
+include/libLLVM/llvm/Transforms/Utils/SSAUpdaterImpl.h
+include/libLLVM/llvm/Transforms/Utils/SimplifyIndVar.h
+include/libLLVM/llvm/Transforms/Utils/SimplifyLibCalls.h
+include/libLLVM/llvm/Transforms/Utils/SplitModule.h
+include/libLLVM/llvm/Transforms/Utils/SymbolRewriter.h
+include/libLLVM/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
+include/libLLVM/llvm/Transforms/Utils/UnrollLoop.h
+include/libLLVM/llvm/Transforms/Utils/ValueMapper.h
+include/libLLVM/llvm/Transforms/Vectorize.h
+lib/libLLVM/libLLVM-3.8.so
+lib/libLLVM/libLLVM-3.8.0.so
+lib/libLLVM/libLLVM.so
+libexec/libLLVM/llvm-config
+share/libLLVM/cmake/AddLLVM.cmake
+share/libLLVM/cmake/AddLLVMDefinitions.cmake
+share/libLLVM/cmake/AddOCaml.cmake
+share/libLLVM/cmake/AddSphinxTarget.cmake
+share/libLLVM/cmake/ChooseMSVCCRT.cmake
+share/libLLVM/cmake/CrossCompile.cmake
+share/libLLVM/cmake/DetermineGCCCompatible.cmake
+share/libLLVM/cmake/FindOCaml.cmake
+share/libLLVM/cmake/FindSphinx.cmake
+share/libLLVM/cmake/GetSVN.cmake
+share/libLLVM/cmake/HandleLLVMOptions.cmake
+share/libLLVM/cmake/HandleLLVMStdlib.cmake
+share/libLLVM/cmake/LLVM-Config.cmake
+share/libLLVM/cmake/LLVMConfig.cmake
+share/libLLVM/cmake/LLVMConfigVersion.cmake
+share/libLLVM/cmake/LLVMExports-release.cmake
+share/libLLVM/cmake/LLVMExports.cmake
+share/libLLVM/cmake/LLVMExternalProjectUtils.cmake
+share/libLLVM/cmake/LLVMInstallSymlink.cmake
+share/libLLVM/cmake/LLVMProcessSources.cmake
+share/libLLVM/cmake/TableGen.cmake
diff --git a/libLLVM/buildlink3.mk b/libLLVM/buildlink3.mk
new file mode 100644
index 0000000..2491bd0
--- /dev/null
+++ b/libLLVM/buildlink3.mk
@@ -0,0 +1,18 @@
+# $NetBSD: buildlink3.mk,v 1.3 2015/09/26 08:42:19 tnn Exp $
+
+BUILDLINK_TREE+= libLLVM
+
+.if !defined(LIBLLVM_BUILDLINK3_MK)
+LIBLLVM_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.libLLVM+= libLLVM>=3.8.0rc1
+BUILDLINK_PKGSRCDIR.libLLVM?= ../../lang/libLLVM
+BUILDLINK_INCDIRS.libLLVM?= include/libLLVM
+BUILDLINK_LIBDIRS.libLLVM?= lib/libLLVM
+
+LLVM_CONFIG_PATH?= ${BUILDLINK_PREFIX.libLLVM}/libexec/libLLVM/llvm-config
+
+.include "../../devel/zlib/buildlink3.mk"
+.endif # LIBLLVM_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -libLLVM
diff --git a/libLLVM/distinfo b/libLLVM/distinfo
new file mode 100644
index 0000000..92cce90
--- /dev/null
+++ b/libLLVM/distinfo
@@ -0,0 +1,13 @@
+$NetBSD: distinfo,v 1.35 2015/09/11 01:21:57 tnn Exp $
+
+SHA1 (llvm-3.8.0rc1.src.tar.xz) = ba4574a9a6c6c68fe21c32dd4f74e037614c8259
+RMD160 (llvm-3.8.0rc1.src.tar.xz) = 89a530ba0b4c14422e87e7b556408bff2077aced
+SHA512 (llvm-3.8.0rc1.src.tar.xz) = 0fbb2a5c16aad989a00b0068ab094882eb6f945237f1b82e102835321dc74cdbdaaa2d16dbc73df93ad466b3221ad440c18bd79e70e1f3de92e0a11de717d20e
+Size (llvm-3.8.0rc1.src.tar.xz) = 16559376 bytes
+SHA1 (patch-CMakeLists.txt) = 770e0bc00a987430b6c6be7e4141f33e5be54a8f
+SHA1 (patch-cmake_modules_AddLLVM.cmake) = 66e1bddb986b23a87fa413e26119d676e396e658
+SHA1 (patch-cmake_modules_CMakeLists.txt) = 8297c4b9ddd3ac05a06d8a4a8040be46b5b8b39f
+SHA1 (patch-cmake_modules_TableGen.cmake) = 53be811936dd5157e6eb08db8cd51a7265bc8c7f
+SHA1 (patch-include_llvm_Support_Host.h) = 55a9fab6ee49ec09a2fd644747a6dddd6b39f942
+SHA1 (patch-lib_Transforms_CMakeLists.txt) = cafdd73a39574aa3a83db35997ff918f87191d18
+SHA1 (patch-tools_llvm-shlib_CMakeLists.txt) = 8f538db138219c2a3ce394b7a3c21f277d5544dd
diff --git a/libLLVM/options.mk b/libLLVM/options.mk
new file mode 100644
index 0000000..5dc7a4f
--- /dev/null
+++ b/libLLVM/options.mk
@@ -0,0 +1,38 @@
+# $NetBSD$
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.llvm
+
+LLVM_TARGETS= AArch64 AMDGPU ARM BPF CppBackend Hexagon MSP430 Mips NVPTX PowerPC Sparc SystemZ X86 XCore
+
+.for tgt in ${LLVM_TARGETS}
+PLIST_VARS+= ${tgt}
+PKG_SUPPORTED_OPTIONS+= llvm-target-${tgt:tl}
+.endfor
+
+# Probably safe to assume that only x86 users are interested in
+# cross-compilation for now. This saves some build time for everyone else.
+.if !empty(MACHINE_ARCH:Msparc*)
+PKG_SUGGESTED_OPTIONS+= llvm-target-sparc
+.elif !empty(MACHINE_ARCH:Mpowerpc*)
+PKG_SUGGESTED_OPTIONS+= llvm-target-powerpc
+.elif !empty(MACHINE_ARCH:Mearm*)
+PKG_SUGGESTED_OPTIONS+= llvm-target-arm
+.elif !empty(MACHINE_ARCH:M*mips*)
+PKG_SUGGESTED_OPTIONS+= llvm-target-mips
+.else
+# X86 and everyone else get all targets by default.
+. for tgt in ${LLVM_TARGETS}
+PKG_SUGGESTED_OPTIONS+= llvm-target-${tgt:tl}
+. endfor
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+.for tgt in ${LLVM_TARGETS}
+. if !empty(PKG_OPTIONS:Mllvm-target-${tgt:tl})
+PLIST.${tgt}= yes
+LLVM_TARGETS_TO_BUILD+= ${tgt}
+. endif
+.endfor
+
+CMAKE_ARGS+= -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS_TO_BUILD:ts;}"
diff --git a/libLLVM/patches/patch-CMakeLists.txt b/libLLVM/patches/patch-CMakeLists.txt
new file mode 100644
index 0000000..189b14a
--- /dev/null
+++ b/libLLVM/patches/patch-CMakeLists.txt
@@ -0,0 +1,24 @@
+$NetBSD$
+
+Put headers in subdirectory to avoid conflict with clang.
+
+--- CMakeLists.txt.orig 2016-01-13 19:03:44.000000000 +0000
++++ CMakeLists.txt
+@@ -728,7 +728,7 @@ add_subdirectory(cmake/modules)
+
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ install(DIRECTORY include/llvm include/llvm-c
+- DESTINATION include
++ DESTINATION include/libLLVM
+ COMPONENT llvm-headers
+ FILES_MATCHING
+ PATTERN "*.def"
+@@ -740,7 +740,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ )
+
+ install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm
+- DESTINATION include
++ DESTINATION include/libLLVM
+ COMPONENT llvm-headers
+ FILES_MATCHING
+ PATTERN "*.def"
diff --git a/libLLVM/patches/patch-cmake_modules_AddLLVM.cmake b/libLLVM/patches/patch-cmake_modules_AddLLVM.cmake
new file mode 100644
index 0000000..d3fd164
--- /dev/null
+++ b/libLLVM/patches/patch-cmake_modules_AddLLVM.cmake
@@ -0,0 +1,29 @@
+$NetBSD$
+
+Disable library install rules. Handled manually.
+Make sure llvm-config goes in libexec/libLLVM to avoid conflict.
+
+--- cmake/modules/AddLLVM.cmake.orig 2016-01-12 07:44:58.000000000 +0000
++++ cmake/modules/AddLLVM.cmake
+@@ -555,10 +555,12 @@ macro(add_llvm_library name)
+ set(install_type ARCHIVE)
+ endif()
+
++ if (false)
+ install(TARGETS ${name}
+ EXPORT LLVMExports
+ ${install_type} DESTINATION ${install_dir}
+ COMPONENT ${name})
++ endif()
+
+ if (NOT CMAKE_CONFIGURATION_TYPES)
+ add_custom_target(install-${name}
+@@ -699,7 +701,7 @@ macro(add_llvm_tool name)
+ if( LLVM_BUILD_TOOLS )
+ install(TARGETS ${name}
+ EXPORT LLVMExports
+- RUNTIME DESTINATION bin
++ RUNTIME DESTINATION libexec/libLLVM
+ COMPONENT ${name})
+
+ if (NOT CMAKE_CONFIGURATION_TYPES)
diff --git a/libLLVM/patches/patch-cmake_modules_CMakeLists.txt b/libLLVM/patches/patch-cmake_modules_CMakeLists.txt
new file mode 100644
index 0000000..319a24c
--- /dev/null
+++ b/libLLVM/patches/patch-cmake_modules_CMakeLists.txt
@@ -0,0 +1,12 @@
+$NetBSD$
+
+Make sure cmake rules go in own directory to avoid conflicts.
+
+--- cmake/modules/CMakeLists.txt.orig 2014-12-29 11:16:19.000000000 +0000
++++ cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR share/llvm/cmake)
++set(LLVM_INSTALL_PACKAGE_DIR share/libLLVM/cmake)
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+
+ get_property(LLVM_EXPORTS GLOBAL PROPERTY LLVM_EXPORTS)
diff --git a/libLLVM/patches/patch-cmake_modules_TableGen.cmake b/libLLVM/patches/patch-cmake_modules_TableGen.cmake
new file mode 100644
index 0000000..90f5f93
--- /dev/null
+++ b/libLLVM/patches/patch-cmake_modules_TableGen.cmake
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Disable install of llvm-tblgen, provided by lang/llvm.
+
+--- cmake/modules/TableGen.cmake.orig 2015-10-23 19:48:17.000000000 +0000
++++ cmake/modules/TableGen.cmake
+@@ -138,7 +138,7 @@ macro(add_tablegen target project)
+ set_target_properties(${target} PROPERTIES LINK_FLAGS -Wl,--stack,16777216)
+ endif(CMAKE_SIZEOF_VOID_P MATCHES "8")
+ endif( MINGW )
+- if (${project} STREQUAL LLVM AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
++ if (${project} STREQUAL LLVM AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND false)
+ install(TARGETS ${target}
+ EXPORT LLVMExports
+ RUNTIME DESTINATION bin)
diff --git a/libLLVM/patches/patch-include_llvm_Support_Host.h b/libLLVM/patches/patch-include_llvm_Support_Host.h
new file mode 100644
index 0000000..a533511
--- /dev/null
+++ b/libLLVM/patches/patch-include_llvm_Support_Host.h
@@ -0,0 +1,28 @@
+$NetBSD$
+
+Fix lack of machine/endian.h on solaris
+http://permalink.gmane.org/gmane.comp.compilers.llvm.devel/63225
+
+--- include/llvm/Support/Host.h.orig 2015-06-23 09:49:53.000000000 +0000
++++ include/llvm/Support/Host.h
+@@ -18,6 +18,20 @@
+
+ #if defined(__linux__) || defined(__GNU__)
+ #include <endian.h>
++#elif defined(__sun) & defined(__SVR4)
++# ifndef BYTE_ORDER
++# define LITTLE_ENDIAN 1234
++# define BIG_ENDIAN 4321
++# if defined(__sun) & defined(__SVR4)
++# include <sys/isa_defs.h>
++# ifdef _LITTLE_ENDIAN
++# define BYTE_ORDER LITTLE_ENDIAN
++# endif
++# ifdef _BIG_ENDIAN
++# define BYTE_ORDER BIG_ENDIAN
++# endif
++# endif /* sun */
++# endif /* BYTE_ORDER */
+ #else
+ #if !defined(BYTE_ORDER) && !defined(LLVM_ON_WIN32)
+ #include <machine/endian.h>
diff --git a/libLLVM/patches/patch-lib_Transforms_CMakeLists.txt b/libLLVM/patches/patch-lib_Transforms_CMakeLists.txt
new file mode 100644
index 0000000..6db96c3
--- /dev/null
+++ b/libLLVM/patches/patch-lib_Transforms_CMakeLists.txt
@@ -0,0 +1,12 @@
+$NetBSD$
+
+Disable "hello" module.
+
+--- lib/Transforms/CMakeLists.txt.orig 2013-01-28 01:35:51.000000000 +0000
++++ lib/Transforms/CMakeLists.txt
+@@ -4,5 +4,4 @@ add_subdirectory(InstCombine)
+ add_subdirectory(Scalar)
+ add_subdirectory(IPO)
+ add_subdirectory(Vectorize)
+-add_subdirectory(Hello)
+ add_subdirectory(ObjCARC)
diff --git a/libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt b/libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt
new file mode 100644
index 0000000..2b7d7b4
--- /dev/null
+++ b/libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt
@@ -0,0 +1,21 @@
+$NetBSD$
+
+Use the Linux style linking everywhere except Darwin.
+
+--- ./tools/llvm-shlib/CMakeLists.txt.orig 2015-11-04 23:11:12.000000000 +0000
++++ ./tools/llvm-shlib/CMakeLists.txt
+@@ -41,11 +41,10 @@ endif()
+ add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
+
+ list(REMOVE_DUPLICATES LIB_NAMES)
+-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf"
+- # GNU ld doesn't resolve symbols in the version script.
+- set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
+-elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
++if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
+ set(LIB_NAMES -Wl,-all_load ${LIB_NAMES})
++else()
++ set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
+ endif()
+
+ target_link_libraries(LLVM PRIVATE ${LIB_NAMES})
Home |
Main Index |
Thread Index |
Old Index