debian/0000755000000000000000000000000012305653673007200 5ustar debian/llvm-priv-dev.dirs0000644000000000000000000000003012245123017012543 0ustar /usr/lib/llvm-3.1/build debian/man/0000755000000000000000000000000012257344662007754 5ustar debian/man/cpp11-migrate-3.4.10000644000000000000000000002162112243332436012703 0ustar .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.41.2. .TH LLVM "1" "June 2013" "LLVM (http://llvm.org/):" "User Commands" .SH NAME LLVM \- manual page for LLVM (http://llvm.org/): .SH DESCRIPTION USAGE: cpp11\-migrate [options] [... ] .SS "OPTIONS:" .HP \fB\-add\-override\fR \- Make use of override specifier where possible .HP \fB\-asm\-verbose\fR \- Add comments to directives. .HP \fB\-bounds\-checking\-single\-trap\fR \- Use one trap block per function .HP \fB\-cppfname=\fR \- Specify the name of the generated function .HP \fB\-cppfor=\fR \- Specify the name of the thing to generate .HP \fB\-cppgen\fR \- Choose what kind of output to generate .TP =program \- Generate a complete program .TP =module \- Generate a module definition .TP =contents \- Generate contents of a module .TP =function \- Generate a function definition .TP =functions \- Generate all function definitions .TP =inline \- Generate an inline function .TP =variable \- Generate a variable definition .TP =type \- Generate a type definition .HP \fB\-disable\-spill\-fusing\fR \- Disable fusing of spill code into instructions .IP Choose driver interface: .HP \fB\-drvnvcl\fR \- Nvidia OpenCL driver .HP \fB\-drvcuda\fR \- Nvidia CUDA driver .HP \fB\-drvtest\fR \- Plain Test .HP \fB\-enable\-correct\-eh\-support\fR \- Make the \fB\-lowerinvoke\fR pass insert expensive, but correct, EH code .HP \fB\-enable\-load\-pre\fR \- .HP \fB\-enable\-objc\-arc\-opts\fR \- enable/disable all ARC Optimizations .HP \fB\-enable\-tbaa\fR \- .HP \fB\-fatal\-assembler\-warnings\fR \- Consider warnings as error .HP \fB\-fdata\-sections\fR \- Emit data into separate sections .HP \fB\-ffunction\-sections\fR \- Emit functions into separate sections .HP \fB\-final\-syntax\-check\fR \- Check for correct syntax after applying transformations .HP \fB\-help\fR \- Display available options (\fB\-help\-hidden\fR for more) .HP \fB\-internalize\-public\-api\-file=\fR \- A file containing list of symbol names to preserve .HP \fB\-internalize\-public\-api\-list=\fR \- A list of symbol names to preserve .HP \fB\-join\-liveintervals\fR \- Coalesce copies (default=true) .HP \fB\-limit\-float\-precision=\fR \- Generate low\-precision inline sequences for some float libcalls .HP \fB\-loop\-convert\fR \- Make use of range\-based for loops where possible .HP \fB\-mc\-x86\-disable\-arith\-relaxation\fR \- Disable relaxation of arithmetic instruction for X86 .HP \fB\-mips16\-hard\-float\fR \- MIPS: mips16 hard float enable. .HP \fB\-msp430\-hwmult\-mode\fR \- Hardware multiplier use mode .TP =no \- Do not use hardware multiplier .TP =interrupts \- Assume hardware multiplier can be used inside interrupts .TP =use \- Assume hardware multiplier cannot be used inside interrupts .HP \fB\-nvptx\-emit\-line\-numbers\fR \- NVPTX Specific: Emit Line numbers even without \fB\-G\fR .HP \fB\-nvptx\-emit\-src\fR \- NVPTX Specific: Emit source line in ptx file .TP \fB\-nvptx\-fma\-level=\fR \- NVPTX Specific: FMA contraction (0: don't do it 1: do it 2: do it aggressively .HP \fB\-nvptx\-mad\-enable\fR \- NVPTX Specific: Enable generating FMAD instructions .HP \fB\-nvptx\-prec\-divf32=\fR \- NVPTX Specifies: 0 use div.approx, 1 use div.full, 2 use IEEE Compliant F32 div.rnd if avaiable. .HP \fB\-nvptx\-sched4reg\fR \- NVPTX Specific: schedule for register pressue .HP \fB\-nvvm\-reflect\-enable\fR \- NVVM reflection, enabled by default .HP \fB\-nvvm\-reflect\-list=\fR> \- A list of string=num assignments .HP \fB\-p=\fR \- Build path .HP \fB\-pre\-RA\-sched\fR \- Instruction schedulers available (before register allocation): .TP =vliw\-td \- VLIW scheduler .TP =list\-ilp \- Bottom\-up register pressure aware list scheduling which tries to balance ILP and register pressure .TP =list\-hybrid \- Bottom\-up register pressure aware list scheduling which tries to balance latency and register pressure .TP =source \- Similar to list\-burr but schedules in source order when possible .TP =list\-burr \- Bottom\-up register reduction list scheduling .TP =linearize \- Linearize DAG, no scheduling .TP =fast \- Fast suboptimal list scheduling .TP =default \- Best scheduler for the target .HP \fB\-print\-after\-all\fR \- Print IR after each pass .HP \fB\-print\-before\-all\fR \- Print IR before each pass .HP \fB\-print\-machineinstrs=\fR \- Print machine instrs .HP \fB\-profile\-estimator\-loop\-weight=\fR \- Number of loop executions used for profile\-estimator .HP \fB\-profile\-file=\fR \- Profile file loaded by \fB\-profile\-metadata\-loader\fR .HP \fB\-profile\-info\-file=\fR \- Profile file loaded by \fB\-profile\-loader\fR .HP \fB\-profile\-verifier\-noassert\fR \- Disable assertions .HP \fB\-regalloc\fR \- Register allocator to use .TP =default \- pick register allocator based on \fB\-O\fR option .TP =basic \- basic register allocator .TP =fast \- fast register allocator .TP =greedy \- greedy register allocator .TP =pbqp \- PBQP register allocator .HP \fB\-risk\fR \- Select a maximum risk level: .TP =safe \- Only safe transformations .TP =reasonable \- Enable transformations that might change semantics (default) .TP =risky \- Enable transformations that are likely to change semantics .HP \fB\-shrink\-wrap\fR \- Shrink wrap callee\-saved register spills/restores .HP \fB\-spiller\fR \- Spiller to use: (default: standard) .TP =trivial \- trivial spiller .TP =inline \- inline spiller .HP \fB\-stats\fR \- Enable statistics output from program (available with Asserts) .HP \fB\-struct\-path\-tbaa\fR \- .HP \fB\-summary\fR \- Print transform summary .HP \fB\-time\-passes\fR \- Time each pass, printing elapsed time for each on exit .HP \fB\-use\-auto\fR \- Use of 'auto' type specifier .HP \fB\-use\-nullptr\fR \- Make use of nullptr keyword where possible .HP \fB\-user\-null\-macros=\fR \- Comma\-separated list of user\-defined macro names that behave like NULL .HP \fB\-vectorize\-loops\fR \- Run the Loop vectorization passes .HP \fB\-vectorize\-slp\fR \- Run the SLP vectorization passes .HP \fB\-vectorize\-slp\-aggressive\fR \- Run the BB vectorization passes .HP \fB\-verify\-dom\-info\fR \- Verify dominator info (time consuming) .HP \fB\-verify\-loop\-info\fR \- Verify loop info (time consuming) .HP \fB\-verify\-regalloc\fR \- Verify during register allocation .HP \fB\-verify\-region\-info\fR \- Verify region info (time consuming) .HP \fB\-verify\-scev\fR \- Verify ScalarEvolution's backedge taken counts (slow) .HP \fB\-version\fR \- Display the version of this program .HP \fB\-x86\-asm\-syntax\fR \- Choose style of code to emit from X86 backend: .TP =att \- Emit AT&T\-style assembly .TP =intel \- Emit Intel\-style assembly .HP \fB\-x86\-early\-ifcvt\fR \- Enable early if\-conversion on X86 .HP \fB\-x86\-use\-vzeroupper\fR \- Minimize AVX to SSE transition penalty .IP LLVM version 3.3 .IP Optimized build. Built May 7 2013 (21:07:59). Default target: x86_64\-pc\-linux\-gnu Host CPU: corei7\-avx .SH "SEE ALSO" The full documentation for .B LLVM is maintained as a Texinfo manual. If the .B info and .B LLVM programs are properly installed at your site, the command .IP .B info LLVM .PP should give you access to the complete manual. debian/man/clang-format-diff-3.4.10000644000000000000000000000153212243332436013610 0ustar .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.41.2. .TH CLANG-FORMAT-DIFF-3.3 "1" "June 2013" "clang-format-diff-3.3 3.3" "User Commands" .SH NAME clang-format-diff-3.3 \- manual page for clang-format-diff-3.3 3.3 .SH DESCRIPTION usage: clang\-format\-diff\-3.3 [\-h] [\-p P] [\-style STYLE] .PP Reformat changed lines in diff .SS "optional arguments:" .TP \fB\-h\fR, \fB\-\-help\fR show this help message and exit .TP \fB\-p\fR P strip the smallest prefix containing P slashes .TP \fB\-style\fR STYLE formatting style to apply (LLVM, Google, Chromium) .SH "SEE ALSO" The full documentation for .B clang-format-diff-3.3 is maintained as a Texinfo manual. If the .B info and .B clang-format-diff-3.3 programs are properly installed at your site, the command .IP .B info clang-format-diff-3.3 .PP should give you access to the complete manual. debian/watch0000644000000000000000000000037512245123017010221 0ustar version=3 opts=uversionmangle=s/\.(tar.*|tgz|zip|gz|bz2)$//i,dversionmangle=s/[-.+~]?(cvs|svn|git|snapshot|pre|hg)(.*)$//i,pasv \ http://llvm.org/releases/download.html (?:.*/)?clang-?_?([\d+\.]+|\d+)\.(tar.*|tgz|zip|gz|bz2|) debian debian/orig-tar.sh debian/lldb-3.4.links.in0000644000000000000000000000027612245123017012056 0ustar usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so.1 usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so usr/lib/python2.7/dist-packages/lldb/_lldb.so debian/libllvm-3.4-ocaml-dev.dirs.in0000644000000000000000000000003212245123017014256 0ustar @OCAML_STDLIB_DIR@/META/ debian/llvm-3.4-doc.install0000644000000000000000000000005512245123017012572 0ustar docs/_build/html usr/share/doc/llvm-3.4-doc/ debian/libclang-common-3.4-dev.links0000644000000000000000000000027712247133532014357 0ustar usr/lib/llvm-3.4/lib/clang/3.4/include usr/include/clang/3.4/include usr/lib/llvm-3.4/lib/clang/3.4/include usr/lib/clang/3.4/include usr/lib/llvm-3.4/lib/clang/3.4/lib usr/lib/clang/3.4/lib debian/libclang1-3.4.symbols0000644000000000000000000002521512245123017012740 0ustar libclang.so.1 libclang1-3.4 #MINVER# clang_BlockCommandComment_getArgText@Base 3.2 clang_BlockCommandComment_getCommandName@Base 3.2 clang_BlockCommandComment_getNumArgs@Base 3.2 clang_BlockCommandComment_getParagraph@Base 3.2 clang_CXCursorSet_contains@Base 3.2 clang_CXCursorSet_insert@Base 3.2 clang_CXIndex_getGlobalOptions@Base 3.2 clang_CXIndex_setGlobalOptions@Base 3.2 clang_CXXMethod_isPureVirtual@Base 1:3.4~+rc1 clang_CXXMethod_isStatic@Base 3.2 clang_CXXMethod_isVirtual@Base 3.2 clang_Comment_getChild@Base 3.2 clang_Comment_getKind@Base 3.2 clang_Comment_getNumChildren@Base 3.2 clang_Comment_isWhitespace@Base 3.2 clang_CompilationDatabase_dispose@Base 3.2 clang_CompilationDatabase_fromDirectory@Base 3.2 clang_CompilationDatabase_getAllCompileCommands@Base 1:3.4~+rc1 clang_CompilationDatabase_getCompileCommands@Base 3.2 clang_CompileCommand_getArg@Base 3.2 clang_CompileCommand_getDirectory@Base 3.2 clang_CompileCommand_getNumArgs@Base 3.2 clang_CompileCommands_dispose@Base 3.2 clang_CompileCommands_getCommand@Base 3.2 clang_CompileCommands_getSize@Base 3.2 clang_Cursor_getArgument@Base 3.2 clang_Cursor_getBriefCommentText@Base 3.2 clang_Cursor_getCommentRange@Base 3.2 clang_Cursor_getModule@Base 3.2 clang_Cursor_getNumArguments@Base 3.2 clang_Cursor_getObjCDeclQualifiers@Base 1:3.4~+rc1 clang_Cursor_getObjCPropertyAttributes@Base 1:3.4~+rc1 clang_Cursor_getObjCSelectorIndex@Base 3.2 clang_Cursor_getParsedComment@Base 3.2 clang_Cursor_getRawCommentText@Base 3.2 clang_Cursor_getReceiverType@Base 3.2 clang_Cursor_getSpellingNameRange@Base 3.2 clang_Cursor_getTranslationUnit@Base 3.2 clang_Cursor_isBitField@Base 1:3.4~+rc1 clang_Cursor_isDynamicCall@Base 3.2 clang_Cursor_isNull@Base 3.2 clang_Cursor_isObjCOptional@Base 1:3.4~+rc1 clang_Cursor_isVariadic@Base 1:3.4~+rc1 clang_FullComment_getAsHTML@Base 3.2 clang_FullComment_getAsXML@Base 3.2 clang_HTMLStartTagComment_isSelfClosing@Base 3.2 clang_HTMLStartTag_getAttrName@Base 3.2 clang_HTMLStartTag_getAttrValue@Base 3.2 clang_HTMLStartTag_getNumAttrs@Base 3.2 clang_HTMLTagComment_getAsString@Base 3.2 clang_HTMLTagComment_getTagName@Base 3.2 clang_IndexAction_create@Base 3.2 clang_IndexAction_dispose@Base 3.2 clang_InlineCommandComment_getArgText@Base 3.2 clang_InlineCommandComment_getCommandName@Base 3.2 clang_InlineCommandComment_getNumArgs@Base 3.2 clang_InlineCommandComment_getRenderKind@Base 3.2 clang_InlineContentComment_hasTrailingNewline@Base 3.2 clang_Location_isFromMainFile@Base 1:3.4~+rc1 clang_Location_isInSystemHeader@Base 1:3.4~+rc1 clang_Module_getASTFile@Base 1:3.4~+rc1 clang_Module_getFullName@Base 3.2 clang_Module_getName@Base 3.2 clang_Module_getNumTopLevelHeaders@Base 3.2 clang_Module_getParent@Base 3.2 clang_Module_getTopLevelHeader@Base 3.2 clang_ParamCommandComment_getDirection@Base 3.2 clang_ParamCommandComment_getParamIndex@Base 3.2 clang_ParamCommandComment_getParamName@Base 3.2 clang_ParamCommandComment_isDirectionExplicit@Base 3.2 clang_ParamCommandComment_isParamIndexValid@Base 3.2 clang_Range_isNull@Base 3.2 clang_TParamCommandComment_getDepth@Base 3.2 clang_TParamCommandComment_getIndex@Base 3.2 clang_TParamCommandComment_getParamName@Base 3.2 clang_TParamCommandComment_isParamPositionValid@Base 3.2 clang_TextComment_getText@Base 3.2 clang_Type_getAlignOf@Base 1:3.4~+rc1 clang_Type_getCXXRefQualifier@Base 1:3.4~+rc1 clang_Type_getClassType@Base 1:3.4~+rc1 clang_Type_getOffsetOf@Base 1:3.4~+rc1 clang_Type_getSizeOf@Base 1:3.4~+rc1 clang_VerbatimBlockLineComment_getText@Base 3.2 clang_VerbatimLineComment_getText@Base 3.2 clang_annotateTokens@Base 3.2 clang_codeCompleteAt@Base 3.2 clang_codeCompleteGetContainerKind@Base 3.2 clang_codeCompleteGetContainerUSR@Base 3.2 clang_codeCompleteGetContexts@Base 3.2 clang_codeCompleteGetDiagnostic@Base 3.2 clang_codeCompleteGetNumDiagnostics@Base 3.2 clang_codeCompleteGetObjCSelector@Base 3.2 clang_constructUSR_ObjCCategory@Base 3.2 clang_constructUSR_ObjCClass@Base 3.2 clang_constructUSR_ObjCIvar@Base 3.2 clang_constructUSR_ObjCMethod@Base 3.2 clang_constructUSR_ObjCProperty@Base 3.2 clang_constructUSR_ObjCProtocol@Base 3.2 clang_createCXCursorSet@Base 3.2 clang_createIndex@Base 3.2 clang_createTranslationUnit@Base 3.2 clang_createTranslationUnitFromSourceFile@Base 3.2 clang_defaultCodeCompleteOptions@Base 3.2 clang_defaultDiagnosticDisplayOptions@Base 3.2 clang_defaultEditingTranslationUnitOptions@Base 3.2 clang_defaultReparseOptions@Base 3.2 clang_defaultSaveOptions@Base 3.2 clang_disposeCXCursorSet@Base 3.2 clang_disposeCXPlatformAvailability@Base 3.2 clang_disposeCXTUResourceUsage@Base 3.2 clang_disposeCodeCompleteResults@Base 3.2 clang_disposeDiagnostic@Base 3.2 clang_disposeDiagnosticSet@Base 3.2 clang_disposeIndex@Base 3.2 clang_disposeOverriddenCursors@Base 3.2 clang_disposeString@Base 3.2 clang_disposeTokens@Base 3.2 clang_disposeTranslationUnit@Base 3.2 clang_enableStackTraces@Base 3.2 clang_equalCursors@Base 3.2 clang_equalLocations@Base 3.2 clang_equalRanges@Base 3.2 clang_equalTypes@Base 3.2 clang_executeOnThread@Base 3.2 clang_findIncludesInFile@Base 1:3.4~+rc1 clang_findIncludesInFileWithBlock@Base 1:3.4~+rc1 clang_findReferencesInFile@Base 3.2 clang_findReferencesInFileWithBlock@Base 3.2 clang_formatDiagnostic@Base 3.2 clang_getArgType@Base 3.2 clang_getArrayElementType@Base 3.2 clang_getArraySize@Base 3.2 clang_getCString@Base 3.2 clang_getCXTUResourceUsage@Base 3.2 clang_getCXXAccessSpecifier@Base 3.2 clang_getCanonicalCursor@Base 3.2 clang_getCanonicalType@Base 3.2 clang_getChildDiagnostics@Base 3.2 clang_getClangVersion@Base 3.2 clang_getCompletionAnnotation@Base 3.2 clang_getCompletionAvailability@Base 3.2 clang_getCompletionBriefComment@Base 3.2 clang_getCompletionChunkCompletionString@Base 3.2 clang_getCompletionChunkKind@Base 3.2 clang_getCompletionChunkText@Base 3.2 clang_getCompletionNumAnnotations@Base 3.2 clang_getCompletionParent@Base 3.2 clang_getCompletionPriority@Base 3.2 clang_getCursor@Base 3.2 clang_getCursorAvailability@Base 3.2 clang_getCursorCompletionString@Base 3.2 clang_getCursorDefinition@Base 3.2 clang_getCursorDisplayName@Base 3.2 clang_getCursorExtent@Base 3.2 clang_getCursorKind@Base 3.2 clang_getCursorKindSpelling@Base 3.2 clang_getCursorLanguage@Base 3.2 clang_getCursorLexicalParent@Base 3.2 clang_getCursorLinkage@Base 3.2 clang_getCursorLocation@Base 3.2 clang_getCursorPlatformAvailability@Base 3.2 clang_getCursorReferenceNameRange@Base 3.2 clang_getCursorReferenced@Base 3.2 clang_getCursorResultType@Base 3.2 clang_getCursorSemanticParent@Base 3.2 clang_getCursorSpelling@Base 3.2 clang_getCursorType@Base 3.2 clang_getCursorUSR@Base 3.2 clang_getDeclObjCTypeEncoding@Base 3.2 clang_getDefinitionSpellingAndExtent@Base 3.2 clang_getDiagnostic@Base 3.2 clang_getDiagnosticCategory@Base 3.2 clang_getDiagnosticCategoryName@Base 3.2 clang_getDiagnosticCategoryText@Base 3.2 clang_getDiagnosticFixIt@Base 3.2 clang_getDiagnosticInSet@Base 3.2 clang_getDiagnosticLocation@Base 3.2 clang_getDiagnosticNumFixIts@Base 3.2 clang_getDiagnosticNumRanges@Base 3.2 clang_getDiagnosticOption@Base 3.2 clang_getDiagnosticRange@Base 3.2 clang_getDiagnosticSetFromTU@Base 3.2 clang_getDiagnosticSeverity@Base 3.2 clang_getDiagnosticSpelling@Base 3.2 clang_getElementType@Base 3.2 clang_getEnumConstantDeclUnsignedValue@Base 3.2 clang_getEnumConstantDeclValue@Base 3.2 clang_getEnumDeclIntegerType@Base 3.2 clang_getExpansionLocation@Base 3.2 clang_getFieldDeclBitWidth@Base 1:3.4~+rc1 clang_getFile@Base 3.2 clang_getFileLocation@Base 1:3.4~+rc1 clang_getFileName@Base 3.2 clang_getFileTime@Base 3.2 clang_getFileUniqueID@Base 1:3.4~+rc1 clang_getFunctionTypeCallingConv@Base 3.2 clang_getIBOutletCollectionType@Base 3.2 clang_getIncludedFile@Base 3.2 clang_getInclusions@Base 3.2 clang_getInstantiationLocation@Base 3.2 clang_getLocation@Base 3.2 clang_getLocationForOffset@Base 3.2 clang_getNullCursor@Base 3.2 clang_getNullLocation@Base 3.2 clang_getNullRange@Base 3.2 clang_getNumArgTypes@Base 3.2 clang_getNumCompletionChunks@Base 3.2 clang_getNumDiagnostics@Base 3.2 clang_getNumDiagnosticsInSet@Base 3.2 clang_getNumElements@Base 3.2 clang_getNumOverloadedDecls@Base 3.2 clang_getOverloadedDecl@Base 3.2 clang_getOverriddenCursors@Base 3.2 clang_getPointeeType@Base 3.2 clang_getPresumedLocation@Base 3.2 clang_getRange@Base 3.2 clang_getRangeEnd@Base 3.2 clang_getRangeStart@Base 3.2 clang_getRemappings@Base 3.2 clang_getRemappingsFromFileList@Base 3.2 clang_getResultType@Base 3.2 clang_getSpecializedCursorTemplate@Base 3.2 clang_getSpellingLocation@Base 3.2 clang_getTUResourceUsageName@Base 3.2 clang_getTemplateCursorKind@Base 3.2 clang_getTokenExtent@Base 3.2 clang_getTokenKind@Base 3.2 clang_getTokenLocation@Base 3.2 clang_getTokenSpelling@Base 3.2 clang_getTranslationUnitCursor@Base 3.2 clang_getTranslationUnitSpelling@Base 3.2 clang_getTypeDeclaration@Base 3.2 clang_getTypeKindSpelling@Base 3.2 clang_getTypeSpelling@Base 1:3.4~+rc1 clang_getTypedefDeclUnderlyingType@Base 3.2 clang_hashCursor@Base 3.2 clang_indexLoc_getCXSourceLocation@Base 3.2 clang_indexLoc_getFileLocation@Base 3.2 clang_indexSourceFile@Base 3.2 clang_indexTranslationUnit@Base 3.2 clang_index_getCXXClassDeclInfo@Base 3.2 clang_index_getClientContainer@Base 3.2 clang_index_getClientEntity@Base 3.2 clang_index_getIBOutletCollectionAttrInfo@Base 3.2 clang_index_getObjCCategoryDeclInfo@Base 3.2 clang_index_getObjCContainerDeclInfo@Base 3.2 clang_index_getObjCInterfaceDeclInfo@Base 3.2 clang_index_getObjCPropertyDeclInfo@Base 3.2 clang_index_getObjCProtocolRefListInfo@Base 3.2 clang_index_isEntityObjCContainerKind@Base 3.2 clang_index_setClientContainer@Base 3.2 clang_index_setClientEntity@Base 3.2 clang_isAttribute@Base 3.2 clang_isConstQualifiedType@Base 3.2 clang_isCursorDefinition@Base 3.2 clang_isDeclaration@Base 3.2 clang_isExpression@Base 3.2 clang_isFileMultipleIncludeGuarded@Base 3.2 clang_isFunctionTypeVariadic@Base 3.2 clang_isInvalid@Base 3.2 clang_isPODType@Base 3.2 clang_isPreprocessing@Base 3.2 clang_isReference@Base 3.2 clang_isRestrictQualifiedType@Base 3.2 clang_isStatement@Base 3.2 clang_isTranslationUnit@Base 3.2 clang_isUnexposed@Base 3.2 clang_isVirtualBase@Base 3.2 clang_isVolatileQualifiedType@Base 3.2 clang_loadDiagnostics@Base 3.2 clang_parseTranslationUnit@Base 3.2 clang_remap_dispose@Base 3.2 clang_remap_getFilenames@Base 3.2 clang_remap_getNumFiles@Base 3.2 clang_reparseTranslationUnit@Base 3.2 clang_saveTranslationUnit@Base 3.2 clang_sortCodeCompletionResults@Base 3.2 clang_toggleCrashRecovery@Base 3.2 clang_tokenize@Base 3.2 clang_visitChildren@Base 3.2 clang_visitChildrenWithBlock@Base 3.2 debian/llvm-3.4.lintian-overrides0000644000000000000000000000125412245123017014021 0ustar # I know but well... llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-dwarfdump-3.4.1.gz llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-mc-3.4.1.gz llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-mcmarkup-3.4.1.gz llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-objdump-3.4.1.gz llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-rtdyld-3.4.1.gz llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-size-3.4.1.gz llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-tblgen-3.4.1.gz llvm-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/macho-dump-3.4.1.gz debian/llvm-3.4.links0000644000000000000000000000005512245123017011501 0ustar # AUTOGENERATED in debian/rules.d/binary.mk. debian/README.source0000644000000000000000000000025112245123017011340 0ustar Repack of the snapshot release are done with orig-tar.sh which will checkout the sources. -- Sylvestre Ledru , Tue, 26 Feb 2013 14:57:56 +0100 debian/libllvm-3.4-ocaml-dev.lintian-overrides0000644000000000000000000000021512245123017016351 0ustar # It is in the section ocaml which is fine. libllvm-3.4-ocaml-dev: wrong-section-according-to-package-name libllvm-3.4-ocaml-dev => libdevel debian/clang-3.4.postinst0000644000000000000000000000063412245123017012361 0ustar #! /bin/sh -e prio=10 update-alternatives --quiet \ --install /usr/bin/c++ \ c++ \ /usr/bin/clang++ \ $prio update-alternatives --quiet \ --install /usr/bin/cc \ cc \ /usr/bin/clang \ $prio update-alternatives --quiet \ --install /usr/bin/c89 \ c89 \ /usr/bin/clang \ $prio update-alternatives --quiet \ --install /usr/bin/c99 \ c99 \ /usr/bin/clang \ $prio #DEBHELPER# exit 0 debian/libllvm3.4.lintian-overrides0000644000000000000000000000017412245123017014433 0ustar # That is normal. Upstream does not match the debian convention libllvm3.4: package-name-doesnt-match-sonames libLLVM-3.4-1 debian/TODO0000644000000000000000000000057612245123017007663 0ustar * add the support of libclang in llvm default (for now, it is called libclang1-3.3.so) * add a symbol file for libclang.so in llvm default * check if we should use alternatives * remove of clang & llvm 3.2 * look at the bugs of llvm 3.2 * move the header at the right place in libclang-dev * bootstrap of clang with itself * update of the soname * man page for clang-format debian/llvm-3.4-runtime.binfmt.in0000644000000000000000000000012512245123017013724 0ustar package llvm-@LLVM_VERSION@-runtime interpreter /usr/bin/lli-@LLVM_VERSION@ magic BC debian/clang-modernize-3.4.install0000644000000000000000000000010112245123017014123 0ustar usr/lib/llvm-3.4/bin/clang-modernize usr/bin/clang-modernize-3.4 debian/llvm-3.4.install0000644000000000000000000000033712245123017012032 0ustar usr/lib/llvm-3.4/bin/llvm-* usr/lib/llvm-3.4/bin/opt* usr/lib/llvm-3.4/bin/macho-dump* usr/lib/llvm-3.4/bin/bugpoint* usr/lib/llvm-3.4/bin/llc* usr/bin/llvm-* usr/bin/opt* usr/bin/macho-dump* usr/bin/bugpoint* usr/bin/llc* debian/llvm-3.4-dev.install0000644000000000000000000000163312245123017012606 0ustar usr/lib/llvm-3.4/lib/libLLVM*.a usr/lib/llvm-3.4/lib/libllvm*.a usr/lib/llvm-3.4/lib/LLVM*.so usr/lib/llvm-3.4/lib/libLTO.* usr/lib/llvm-3.4/include/llvm/ usr/include/llvm-3.4/ usr/lib/llvm-3.4/include/llvm-c/ usr/include/llvm-c-3.4/ cmake/modules/*.cmake usr/share/llvm-3.4/cmake/ build-llvm/Makefile.common /usr/lib/llvm-3.4/build/ build-llvm/Makefile.config /usr/lib/llvm-3.4/build/ build-llvm/config.status /usr/lib/llvm-3.4/build/ Makefile.rules /usr/lib/llvm-3.4/build/ configure /usr/lib/llvm-3.4/build/ autoconf/ /usr/lib/llvm-3.4/build/ utils/vim/llvm-3.4.vim usr/share/vim/addons/syntax/ utils/vim/tablegen-3.4.vim usr/share/vim/addons/syntax/ utils/emacs/emacs.el usr/share/emacs/site-lisp/llvm-3.4/ utils/emacs/llvm-mode.el usr/share/emacs/site-lisp/llvm-3.4/ utils/emacs/tablegen-mode.el usr/share/emacs/site-lisp/llvm-3.4/ debian/llvm-3.4.dirs0000644000000000000000000000010012245123017011311 0ustar /usr/lib/llvm-3.4/bin usr/share/man/man1 usr/share/doc/llvm-3.4 debian/llvm-3.4-examples.links0000644000000000000000000000040612245123017013315 0ustar /usr/lib/llvm-3.4/build/Makefile.common usr/share/doc/llvm-3.4-examples/Makefile.common /usr/lib/llvm-3.4/build/Makefile.config usr/share/doc/llvm-3.4-examples/Makefile.config /usr/lib/llvm-3.4/build/Makefile.rules usr/share/doc/llvm-3.4-examples/Makefile.rules debian/orig-tar.sh0000755000000000000000000000745212247640736011274 0ustar #!/bin/sh # This script will create the following tarballs: # llvm-toolchain-snapshot-3.2_3.2repack.orig-clang.tar.bz2 # llvm-toolchain-snapshot-3.2_3.2repack.orig-clang-extra.tar.bz2 # llvm-toolchain-snapshot-3.2_3.2repack.orig-compiler-rt.tar.bz2 # llvm-toolchain-snapshot-3.2_3.2repack.orig-lldb.tar.bz2 # llvm-toolchain-snapshot-3.2_3.2repack.orig-polly.tar.bz2 # llvm-toolchain-snapshot-3.2_3.2repack.orig.tar.bz2 set -e # TODO rest of the options # To create an rc1 release: # sh 3.4/debian/orig-tar.sh RELEASE_34 rc1 SVN_BASE_URL=http://llvm.org/svn/llvm-project/ MAJOR_VERSION=3.4 if test -n "$1"; then # http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/branches/google/stable/ # For example: sh 3.4/debian/orig-tar.sh release_34 BRANCH=$1 RCRELEASE="true" fi if test -n "$1" -a -n "$2"; then # http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/tags/RELEASE_34/rc1/ # For example: sh 3.4/debian/orig-tar.sh RELEASE_34 rc2 BRANCH=$1 TAG=$2 RCRELEASE="true" fi get_svn_url() { MODULE=$1 BRANCH=$2 TAG=$3 if test -n "$TAG"; then SVN_URL="$SVN_BASE_URL/$MODULE/tags/$BRANCH/$TAG" else if test -n "$BRANCH"; then SVN_URL="$SVN_BASE_URL/$MODULE/branches/$BRANCH" else SVN_URL="$SVN_BASE_URL/$MODULE/trunk/" fi fi echo $SVN_URL } get_higher_revision() { PROJECTS="llvm cfe compiler-rt polly lldb clang-tools-extra" REVISION_MAX=0 for f in $PROJECTS; do REVISION=$(LANG=C svn info $(get_svn_url $f $BRANCH $TAG)|grep "^Last Changed Rev:"|awk '{print $4}') if test $REVISION -gt $REVISION_MAX; then REVISION_MAX=$REVISION fi done echo $REVISION_MAX } if test -n "$BRANCH"; then REVISION=$(get_higher_revision) # Do not use the revision when exporting branch. We consider that all the # branch are sync SVN_CMD="svn export" else REVISION=$(LANG=C svn info $(get_svn_url llvm)|grep "^Revision:"|awk '{print $2}') SVN_CMD="svn export -r $REVISION" fi if test -n "$RCRELEASE"; then VERSION=$MAJOR_VERSION"~+"$TAG FULL_VERSION="llvm-toolchain-"$MAJOR_VERSION"_"$VERSION else VERSION=$MAJOR_VERSION"~svn"$REVISION FULL_VERSION="llvm-toolchain-snapshot_"$VERSION fi # LLVM LLVM_TARGET=$FULL_VERSION $SVN_CMD $(get_svn_url llvm $BRANCH $TAG) $LLVM_TARGET tar jcvf $FULL_VERSION.orig.tar.bz2 $LLVM_TARGET rm -rf $LLVM_TARGET # Clang CLANG_TARGET=clang_$VERSION $SVN_CMD $(get_svn_url cfe $BRANCH $TAG) $CLANG_TARGET tar jcvf $FULL_VERSION.orig-clang.tar.bz2 $CLANG_TARGET rm -rf $CLANG_TARGET # Clang extra CLANG_TARGET=clang-tools-extra_$VERSION $SVN_CMD $(get_svn_url clang-tools-extra $BRANCH $TAG) $CLANG_TARGET tar jcvf $FULL_VERSION.orig-clang-tools-extra.tar.bz2 $CLANG_TARGET rm -rf $CLANG_TARGET # Compiler-rt COMPILER_RT_TARGET=compiler-rt_$VERSION $SVN_CMD $(get_svn_url compiler-rt $BRANCH $TAG) $COMPILER_RT_TARGET tar jcvf $FULL_VERSION.orig-compiler-rt.tar.bz2 $COMPILER_RT_TARGET rm -rf $COMPILER_RT_TARGET # Polly POLLY_TARGET=polly_$VERSION $SVN_CMD $(get_svn_url polly $BRANCH $TAG) $POLLY_TARGET rm -rf $POLLY_TARGET/www tar jcvf $FULL_VERSION.orig-polly.tar.bz2 $POLLY_TARGET rm -rf $POLLY_TARGET # LLDB LLDB_TARGET=lldb_$VERSION $SVN_CMD $(get_svn_url lldb $BRANCH $TAG) $LLDB_TARGET rm -rf $LLDB_TARGET/www/ tar jcvf $FULL_VERSION.orig-lldb.tar.bz2 $LLDB_TARGET rm -rf $LLDB_TARGET PATH_DEBIAN="$(pwd)/$(dirname $0)/../" echo "going into $PATH_DEBIAN" export DEBFULLNAME="Sylvestre Ledru" export DEBEMAIL="sylvestre@debian.org" cd $PATH_DEBIAN if test -z "$DISTRIBUTION"; then DISTRIBUTION="experimental" fi if test -n "$RCRELEASE"; then EXTRA_DCH_FLAGS="--force-bad-version --allow-lower-version" fi dch $EXTRA_DCH_FLAGS --distribution $DISTRIBUTION --newversion 1:$VERSION-1~exp1 "New snapshot release" exit 0 debian/llvm-3.4-runtime.postinst0000644000000000000000000000026412245123017013727 0ustar #!/bin/sh -e if test "$1" = "configure"; then if test -x /usr/sbin/update-binfmts; then update-binfmts --import llvm-3.4-runtime.binfmt || true fi fi #DEBHELPER# debian/llvm-3.4.manpages0000644000000000000000000000037212245123017012156 0ustar docs/_build/man/* debian/man/llvm-dwarfdump-3.4.1 debian/man/llvm-mc-3.4.1 debian/man/llvm-mcmarkup-3.4.1 debian/man/llvm-objdump-3.4.1 debian/man/llvm-rtdyld-3.4.1 debian/man/llvm-size-3.4.1 debian/man/llvm-tblgen-3.4.1 debian/man/macho-dump-3.4.1 debian/libclang-3.4-dev.links.in0000644000000000000000000000040012245123017013455 0ustar usr/lib/@DEB_HOST_MULTIARCH@/libclang-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libclang-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libclang-3.4.so.1 usr/lib/llvm-3.4/lib/libclang-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libclang-3.4.so.1 usr/lib/llvm-3.4/lib/libclang.so debian/rules0000755000000000000000000003603712257345173010270 0ustar #!/usr/bin/make -f TARGET_BUILD := build-llvm # Force the version of gcc. Some archs are still using gcc 4.6 GCC_VERSION := $(shell dpkg-query -W -f '$${Version}' g++ | sed -rne 's,^([0-9]+:)?([0-9]+\.[0-9]+).*$$,\2,p') LLVM_VERSION := 3.4 SONAME_EXT := 1 DEBIAN_REVISION := $(shell dpkg-parsechangelog | sed -rne 's,^Version: .*-(.*),\1,p') ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) NJOBS := -j $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) endif VENDOR=$(shell lsb_release -is) DEB_HOST_MULTIARCH = $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_HOST_ARCH_BITS = $(shell dpkg-architecture -qDEB_HOST_ARCH_BITS) DEB_HOST_ARCH = $(shell dpkg-architecture -qDEB_HOST_ARCH) OCAML_STDLIB_DIR ?= $(shell ocamlc -where) export CC=gcc-$(GCC_VERSION) export CXX=g++-$(GCC_VERSION) LDFLAGS_EXTRA= CXXFLAGS_EXTRA= CONFIGURE_EXTRA= confargs := \ --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) ifeq ($(shell dpkg-architecture -qDEB_HOST_ARCH_BITS),64) confargs += --with-cxx-include-32bit-dir=32 else confargs += --with-cxx-include-64bit-dir=64 endif opt_flags = -g -O2 ifneq (,$(findstring $(DEB_HOST_ARCH),armel)) opt_flags += -marm endif ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) ge 4.8-20121128-1~ ; echo $$?),0) control_vars = '-Vdep:devlibs=libstdc++-$(GCC_VERSION)-dev, libgcc-$(GCC_VERSION)-dev, libobjc-$(GCC_VERSION)-dev' else ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) ge 4.7.2-10~ ; echo $$?),0) control_vars = '-Vdep:devlibs=libstdc++6-$(GCC_VERSION)-dev, libgcc-$(GCC_VERSION)-dev, libobjc-$(GCC_VERSION)-dev' else control_vars = '-Vdep:devlibs=libstdc++6-$(GCC_VERSION)-dev' endif BINUTILS_GOLD_ARCHS := amd64 armhf i386 powerpc powerpcspe ppc64 sparc sparc64 x32 ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' binutils) ge 2.23.1-1~exp3 ; echo $$?),0) ifneq (,$(findstring $(DEB_HOST_ARCH),$(BINUTILS_GOLD_ARCHS))) # -fused-ld=gold enables the gold linker (but is not supported by all archs / distro) LDFLAGS_EXTRA += -fuse-ld=gold endif endif # Enable polly (or not) POLLY_ENABLE=no ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' libisl-dev) ge 0.12.1; echo $$?),0) ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' libcloog-isl-dev) ge 0.18.1; echo $$?),0) POLLY_ENABLE=yes endif endif ifneq (,$(filter codecoverage,$(DEB_BUILD_OPTIONS))) # no-op on Ubuntu to avoid pulling lcov into main: # CODECOVERAGE=yes # for -fvisibility-inlines-hidden see http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130729/183016.html # CXXFLAGS_EXTRA += -fprofile-arcs -ftest-coverage # LDFLAGS_EXTRA += -coverage -lgcov # confargs += llvm_cv_cxx_visibility_inlines_hidden=no endif ifneq (,$(filter scan-build,$(DEB_BUILD_OPTIONS))) # enable the build using scan-build # The package are installed through the variable declarations: # OTHERMIRROR="deb http://llvm.org/apt/unstable/ llvm-toolchain main" # EXTRAPACKAGES="clang-3.4" PRE_PROCESS=scan-build PRE_PROCESS_CONF=scan-build # no need to run tests in this case DEB_BUILD_OPTIONS+=" nocheck" CONFIGURE_EXTRA += --enable-assertions endif ifneq (,$(filter coverity,$(DEB_BUILD_OPTIONS))) # enable the build using coverity # pbuilder contains BINDMOUNTS="/opt/cov-analysis/" # And we have some pbuilder hooks to configure and pack the result # Where the binaries are installed on the jenkins instance PRE_PROCESS=PATH=$$PATH:/opt/cov-analysis/bin/ cov-build --dir cov-int # We don't want to check the temporary files produced by the configure PRE_PROCESS_CONF= COVERITY_ENABLE=1 CONFIGURE_EXTRA += --enable-assertions # no need to run tests in this case DEB_BUILD_OPTIONS+=" nocheck" else COVERITY_ENABLE=0 endif LLDB_ENABLE=yes LLDB_DISABLE_ARCHS := arm64 hurd-i386 mips mipsel ia64 # hurd has threading issues # mips* fails with "undefined references to `__atomic_load_8'" ifeq (,$(filter-out $(LLDB_DISABLE_ARCHS), $(DEB_HOST_ARCH))) # Disable LLDB for this arch. LLDB_ENABLE=no endif %: dh $@ --with ocaml debian/%: debian/%.in sed -e 's|@DEB_HOST_MULTIARCH@|$(DEB_HOST_MULTIARCH)|g' -e "s|@OCAML_STDLIB_DIR@|$(OCAML_STDLIB_DIR)|g" -e "s|@LLVM_VERSION@|$(LLVM_VERSION)|g" $< > $@ # Override this two targets. They are trying to manage the .in conversion for me override_dh_ocamlinit: override_dh_ocamlclean: override_dh_auto_configure: debian/lldb-$(LLVM_VERSION).install debian/lldb-$(LLVM_VERSION).links debian/libllvm$(LLVM_VERSION).install debian/llvm-$(LLVM_VERSION)-dev.links debian/libllvm-$(LLVM_VERSION)-ocaml-dev.install debian/libllvm-$(LLVM_VERSION)-ocaml-dev.dirs debian/llvm-$(LLVM_VERSION)-runtime.binfmt debian/llvm-$(LLVM_VERSION)-runtime.prerm debian/libclang1-$(LLVM_VERSION).links debian/libclang-$(LLVM_VERSION)-dev.links debian/libclang1-$(LLVM_VERSION).install debian/pollycc echo "Using gcc: " $(CC) -v mkdir -p $(TARGET_BUILD) mkdir -p clang/include/clang/Debian sed -e "s|@DEB_PATCHSETVERSION@|$(DEBIAN_REVISION)|" \ debian/debian_path.h > clang/include/clang/Debian/debian_path.h # Remove some old symlinks cd tools/ && \ if test -h clang; then \ rm clang; \ fi; \ ln -s ../clang .; \ readlink clang if test $(POLLY_ENABLE) = yes; then \ cd tools/ && \ if test -h polly; then \ rm polly; \ fi; \ ln -s ../polly .; \ fi if test $(LLDB_ENABLE) = yes; then \ cd tools/ && \ if test -h lldb; then \ rm lldb; \ fi; \ ln -s ../lldb .; \ fi cd projects/ && \ if test -h compiler-rt; then \ rm compiler-rt; \ fi; \ ln -s ../compiler-rt .; \ readlink compiler-rt # Configure coverity (we need the compilers) -(if test $(COVERITY_ENABLE) -eq 1; then \ export PATH=$$PATH:/opt/cov-analysis/bin/; \ cov-configure --compiler clang --comptype gcc; \ cov-configure --compiler gcc-4.8 --comptype gcc; \ cov-configure --compiler g++-4.8 --comptype gcc; \ fi) # Due to bug upstream, no symlink here cp -R -H clang-tools-extra tools/clang/tools/extra # Start the actual configure cd $(TARGET_BUILD) && $(PRE_PROCESS_CONF) \ ../configure $(confargs) \ --prefix=/usr/lib/llvm-$(LLVM_VERSION) \ --bindir=\$${prefix}/bin/ \ --disable-assertions \ --enable-shared \ --enable-optimized \ --with-optimize-option=' $(opt_flags)' \ --enable-pic \ --enable-libffi \ --with-ocaml-libdir=/usr/lib/ocaml/llvm-$(LLVM_VERSION) \ --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \ --with-binutils-include=/usr/include \ --with-cloog --with-isl \ --with-bug-report-url=http://bugs.debian.org/ \ --enable-shared \ $(CONFIGURE_EXTRA) \ CLANG_VENDOR=$(VENDOR) || { cat config.log tools/polly/config.log; exit 1; } # cd $(TARGET_BUILD) && cmake ../ -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON # mkdir build-compiler-rt && cd build-compiler-rt && cmake ../compiler-rt override_dh_auto_build: $(PRE_PROCESS) $(MAKE) $(NJOBS) -C $(TARGET_BUILD) VERBOSE=1 CLANG_VENDOR=$(VENDOR) CXXFLAGS="$(CXXFLAGS_EXTRA) -std=c++0x" LDFLAGS="$(LDFLAGS_EXTRA)" REQUIRES_RTTI=1 DEBUGMAKE=1 # We run the build with the Asserts, new directory, make a symlink to make # sure the rest still work cd $(TARGET_BUILD) \ if test -d Release+Asserts -a ! -d Release; then \ ln -s Release+Asserts Release; \ fi override_dh_prep: build_doc dh_prep build_doc: cd $(CURDIR)/docs && make -f Makefile.sphinx && make -f Makefile.sphinx man cd $(CURDIR)/tools/clang/docs && make -f Makefile.sphinx # Rename manpages d=$(CURDIR)/docs/_build/man/; \ cd $$d; \ for f in *.1; do \ echo "$$f"|grep $(LLVM_VERSION) || mv $$f `echo $$f|sed "s|\.1|-$(LLVM_VERSION).1|"`; \ done # Remove the copy of jquery. See bug #701087 for d in $(CURDIR)/clang/docs/_build/html/_static/ $(CURDIR)/docs/_build/html/_static/; do \ cd $$d && rm -f jquery.js && ln -s /usr/share/javascript/jquery/jquery.js; \ cd $$d && rm -f underscore.js && ln -s /usr/share/javascript/underscore/underscore.js; \ done help2man --version-string=$(LLVM_VERSION) clang/tools/scan-view/scan-view > debian/man/scan-view.1 help2man --version-string=$(LLVM_VERSION) clang/tools/clang-format/clang-format-diff.py > debian/man/clang-format-diff-$(LLVM_VERSION).1 for f in clang clang-tblgen clang-check; do \ help2man --version-string=$(LLVM_VERSION) $(TARGET_BUILD)/Release/bin/$$f > debian/man/$$f.1; \ done for f in llvm-dwarfdump llvm-mc llvm-mcmarkup llvm-objdump llvm-rtdyld llvm-size llvm-tblgen macho-dump lldb clang-format clang-modernize; do \ help2man --version-string=$(LLVM_VERSION) $(TARGET_BUILD)/Release/bin/$$f > debian/man/$$f-$(LLVM_VERSION).1; \ done override_dh_auto_install: $(MAKE) -C $(TARGET_BUILD) VERBOSE=1 install DESTDIR=$(CURDIR)/debian/tmp/ chrpath -d $(TARGET_BUILD)/Release/bin/clang chrpath -d `find $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/bin/ -type f -executable` mv $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION)*.so $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) if test $(LLDB_ENABLE) = yes; then \ mv $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/liblldb.so $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/liblldb.so.$(SONAME_EXT); \ fi cd debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/ && \ if test ! -f libclang-$(LLVM_VERSION).so.$(SONAME_EXT); then \ mv libclang.so libclang-$(LLVM_VERSION).so.$(SONAME_EXT) && \ ln -s libclang-$(LLVM_VERSION).so.$(SONAME_EXT) libclang.so.$(SONAME_EXT); \ fi # cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/ && rm -rf $$(find . -iname "SubDir.lib*" -o -iname .dir) && rm -rf $$(find -empty) mkdir -p $(CURDIR)/debian/clang-$(LLVM_VERSION)/usr/bin/ cp compiler-rt/lib/asan/scripts/asan_symbolize.py $(CURDIR)/debian/clang-$(LLVM_VERSION)/usr/bin/asan_symbolize # Create this fake directory to make the install libclang-common-dev happy # under the unsupported archs of compiler-rt mkdir -p $(CURDIR)/debian/tmp/usr/lib/clang/$(LLVM_VERSION)/lib mkdir -p $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)/lib/ # Rename binaries mkdir -p $(CURDIR)/debian/tmp/usr/bin/ cd $(CURDIR)/debian/tmp/usr/bin/; rm -f *; \ for f in ../lib/llvm-$(LLVM_VERSION)/bin/*; do \ ln -s $$f `basename $$f`-$(LLVM_VERSION); \ echo "Link $$f to `basename $$f`-$(LLVM_VERSION)"; \ done # Rename some stuff with the version name # WILL DO when we can install several clang versions together #mv $(CURDIR)/$(TARGET_BUILD)/tools/clang/docs/tools/clang.1 $(CURDIR)/$(TARGET_BUILD)/tools/clang/docs/tools/clang-$(LLVM_VERSION).1 cp -f $(CURDIR)/utils/vim/llvm.vim $(CURDIR)/utils/vim/llvm-$(LLVM_VERSION).vim cp -f $(CURDIR)/utils/vim/tablegen.vim $(CURDIR)/utils/vim/tablegen-$(LLVM_VERSION).vim cp -f $(CURDIR)/clang/tools/clang-format/clang-format-diff.py $(CURDIR)/clang/tools/clang-format/clang-format-diff-$(LLVM_VERSION) cp -f $(CURDIR)/clang/tools/clang-format/clang-format.py clang/tools/clang-format/clang-format-$(LLVM_VERSION).py # Remove some license files rm -f $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/include/llvm/Support/LICENSE.TXT \ $(CURDIR)/debian/llvm-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/build/autoconf/LICENSE.TXT # Managed in lldb-X.Y.links.in rm -f $(CURDIR)/$(TARGET_BUILD)/Release/lib/python*/site-packages/lldb/_lldb.so override_dh_installman: dh_installman # Make sure that lli manpage is only in llvm-3.2-runtime (See #697117) rm -f $(CURDIR)/debian/llvm-$(LLVM_VERSION)/usr/share/man/man1/lli* .PHONY: override_dh_strip override_dh_strip: dh_strip -p libclang$(SONAME_EXT)-$(LLVM_VERSION) --dbg-package=libclang$(SONAME_EXT)-$(LLVM_VERSION)-dbg dh_strip -p libllvm$(LLVM_VERSION) --dbg-package=libllvm$(LLVM_VERSION)-dbg dh_strip -a override_dh_shlibdeps: LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/ dh_shlibdeps override_dh_installdeb: # Managed by the package dh_installdeb -a rm -f $(CURDIR)/debian/lldb-$(LLVM_VERSION)/usr/lib/python*/dist-packages/lldb/__init__.pyc rm -f $(CURDIR)/debian/clang-$(LLVM_VERSION)-examples/usr/share/doc/clang-$(LLVM_VERSION)-examples/examples/*Make* rm -f $(CURDIR)//debian/llvm-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/build/autoconf/LICENSE.TXT ifeq (,$(filter nocheck, $(DEB_BUILD_OPTIONS))) # List of the archs we know we have 100 % tests working ARCH_LLVM_TEST_OK := amd64 i386 override_dh_auto_test: # LLVM tests ifneq (,$(findstring $(DEB_HOST_ARCH),$(ARCH_LLVM_TEST_OK))) # Fail the build if the test fails LD_LIBRARY_PATH=$(CURDIR)/$(TARGET_BUILD)/Release/lib/ $(MAKE) -C $(TARGET_BUILD) check else LD_LIBRARY_PATH=$(CURDIR)/$(TARGET_BUILD)/Release/lib/ $(MAKE) -C $(TARGET_BUILD) check || true endif # clang tests # setup the env cd $(TARGET_BUILD)/Release/lib/ && ln -s libclang.so libclang.so.1 cd $(TARGET_BUILD)/ && $(MAKE) -C tools/clang/ test || true rm -f $(TARGET_BUILD)/Release/lib/libclang.so.1 # lldb tests ifeq (,$(filter $(DEB_HOST_ARCH), $(LLDB_DISABLE_ARCHS) armhf)) if test $(LLDB_ENABLE) = yes; then \ cd $(TARGET_BUILD)/Release/lib/python2.7/site-packages/lldb && if test ! -h _lldb.so -o ! -f _lldb.so; then ln -s ../../../liblldb.so _lldb.so; fi; \ if test ! -h libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) -o ! -f _lldb.so; then ln -s ../../../libLLVM-$(LLVM_VERSION).so libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT); fi; \ fi cd $(TARGET_BUILD)/ && $(MAKE) -C tools/lldb/test || true if test -d $(TARGET_BUILD)/tools/lldb/test/lldb-test-traces/; then \ cat $(TARGET_BUILD)/tools/lldb/test/lldb-test-traces/*; \ fi endif # Managed by debian build system rm -f $(CURDIR)/$(TARGET_BUILD)/Release/lib/python*/site-packages/lldb/_lldb.so # polly tests cd $(TARGET_BUILD)/ && $(MAKE) -C tools/polly/test/ check-polly || true # The compression of the code coverage report is done in the # hook B21GetCoverageResults on the server if test "$(CODECOVERAGE)" = "yes"; then \ REPORT=reports/llvm-toolchain.info; \ mkdir -p reports/; \ lcov --directory $(TARGET_BUILD)/ --capture --ignore-errors source --output-file $$REPORT; \ lcov --remove $$REPORT "/usr*" -o $$REPORT; \ genhtml -o reports/coverage --show-details --highlight --legend $$REPORT; \ fi else override_dh_auto_test: endif override_dh_gencontrol: dh_gencontrol -- $(control_vars) override_dh_auto_clean: rm -rf $(TARGET_BUILD) tools/clang/include/clang/Debian/debian_path.h docs/_build/ clang/docs/_build tools/clang/docs/_html/ # QA tools rm -rf cov-int/ reports/ rm -f `ls debian/*.in|sed -e "s|.in$$||g"` find utils -name '*.pyc' | xargs -r rm -f # Use -I because a test has a space in its name find lldb/test -iname '*.pyc' | xargs -I{} -r rm -f {} find test -name '*.pyc' -o -name '*.cm[ix]' | xargs -r rm -f find test/Bindings -name '*.o' | xargs -r rm -f rm -f tools/clang tools/polly tools/lldb projects/compiler-rt rm -rf tools/clang/tools/extra clang/tools/extra/ rm -f $(CURDIR)/utils/vim/llvm-$(LLVM_VERSION).vim $(CURDIR)/utils/vim/tablegen-$(LLVM_VERSION).vim rm -f $(CURDIR)/clang/tools/clang-format/clang-format-diff-$(LLVM_VERSION) rm -f $(CURDIR)/clang/tools/clang-format/clang-format-$(LLVM_VERSION).py debian/clang-format-3.4.lintian-overrides0000644000000000000000000000032312245123017015415 0ustar # I know but well... clang-format-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/clang-format-diff-3.4.1.gz clang-format-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/clang-format-3.4.1.gz debian/libllvm3.4.install.in0000644000000000000000000000010512245123017013042 0ustar usr/lib/llvm-3.4/lib/libLLVM-3.4.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ debian/lldb-3.4.lintian-overrides0000644000000000000000000000045112245123017013762 0ustar # That is normal. The lib is not shipped as a new package lldb-3.4: package-name-doesnt-match-sonames liblldb lldb-3.4: non-dev-pkg-with-shlib-symlink usr/lib/*/liblldb.so.1 usr/lib/*/liblldb.so # Does not really matter lldb-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/lldb-3.4.1.gz debian/clang-modernize-3.4.lintian-overrides0000644000000000000000000000016712245123017016127 0ustar # I know but well... clang-modernize-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/clang-modernize-3.4.1.gz debian/llvm-3.4-runtime.install0000644000000000000000000000022612245123017013510 0ustar debian/tmp/usr/lib/llvm-3.4/bin/lli /usr/lib/llvm-3.4/bin/ debian/tmp/usr/bin/lli-3.4 /usr/bin/ debian/llvm-3.4-runtime.binfmt usr/share/binfmts/ debian/libclang1-3.4.links.in0000644000000000000000000000012212245123017012763 0ustar usr/lib/@DEB_HOST_MULTIARCH@/libclang-3.4.so.1 usr/lib/llvm-3.4/lib/libclang.so.1 debian/clang-format-3.4.manpages0000644000000000000000000000004412245123017013552 0ustar debian/man/clang-format-diff-3.4.1 debian/lldb-3.4.postinst0000644000000000000000000000011612245123017012205 0ustar #!/bin/sh -e if [ "$1" = "configure" ] then ldconfig fi #DEBHELPER# debian/prepare-new-release.sh0000644000000000000000000000073712245123017013371 0ustar #!/bin/sh ORIG_VERSION=3.3 TARGET_VERSION=3.4 ORIG_VERSION_2=3_3 TARGET_VERSION_2=3_4 LIST=`ls debian/*$ORIG_VERSION*` for F in $LIST; do TARGET=`echo $F|sed -e "s|$ORIG_VERSION|$TARGET_VERSION|g"` svn mv $F $TARGET done LIST=`ls debian/*$TARGET_VERSION* debian/control debian/*.install debian/*.links debian/orig-tar.sh debian/rules` for F in $LIST; do sed -i -e "s|$ORIG_VERSION_2|$TARGET_VERSION_2|g" $F sed -i -e "s|$ORIG_VERSION|$TARGET_VERSION|g" $F done debian/clang-3.4.prerm0000644000000000000000000000052512245123017011622 0ustar #!/bin/sh set -e if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ]; then update-alternatives --quiet --remove cc /usr/bin/clang update-alternatives --quiet --remove c89 /usr/bin/clang update-alternatives --quiet --remove c99 /usr/bin/clang update-alternatives --quiet --remove c++ /usr/bin/clang++ fi #DEBHELPER# exit 0 debian/libllvm-3.4-ocaml-dev.doc-base0000644000000000000000000000050012245123017014365 0ustar Document: libllvm-3.4-ocaml-dev-ocamldoc-api-reference Title: Llvm OCamldoc API Reference Abstract: API reference manual for libllvm-ocaml-dev (generated via OCamldoc) Section: Programming/OCaml Format: HTML Index: /usr/share/doc/libllvm-3.4-ocaml-dev/html/index.html Files: /usr/share/doc/libllvm-3.4-ocaml-dev/html/* debian/llvm-3.4-dev.links.in0000644000000000000000000000045112245123017012662 0ustar usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.so usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/include/llvm-c usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/include/llvm debian/llvm-3.4-doc.dirs0000644000000000000000000000003312245123017012061 0ustar usr/share/doc/llvm-3.4-doc debian/copyright0000644000000000000000000003262412245123017011125 0ustar This package was debianized by Sylvestre Ledru . It was downloaded from http://llvm.org/releases/download.html Debian package is released under the same license as LLVM/Clang ============================================================================== LLVM Release License ============================================================================== University of Illinois/NCSA Open Source License Copyright (c) 2003-2007 University of Illinois at Urbana-Champaign. All rights reserved. Developed by: LLVM Team University of Illinois at Urbana-Champaign http://llvm.org Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal with the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimers. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimers in the documentation and/or other materials provided with the distribution. * Neither the names of the LLVM Team, University of Illinois at Urbana-Champaign, nor the names of its contributors may be used to endorse or promote products derived from this Software without specific prior written permission. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE. ============================================================================== Copyrights and Licenses for Third Party Software Distributed with LLVM: ============================================================================== The LLVM software contains code written by third parties. Such software will have its own individual LICENSE.TXT file in the directory in which it appears. This file will describe the copyrights, license, and restrictions which apply to that code. The disclaimer of warranty in the University of Illinois Open Source License applies to all code in the LLVM Distribution, and nothing in any of the other licenses gives permission to use the names of the LLVM Team or the University of Illinois to endorse or promote products derived from this Software. The following pieces of software have additional or alternate copyrights, licenses, and/or restrictions: Program Directory ------- --------- System Library llvm/lib/System Compiler Driver llvm/tools/llvmc Autoconf llvm/autoconf llvm/projects/ModuleMaker/autoconf llvm/projects/sample/autoconf ----- Files: lib/Support/regutils.h lib/Support/regexec.c lib/Support/regstrlcpy.c lib/Support/regex_impl.h lib/Support/regcclass.h lib/Support/regerror.c lib/Support/regengine.inc lib/Support/regex2.h lib/Support/regcomp.c lib/Support/regcname.h lib/Support/regfree.c License: * This code is derived from OpenBSD's libc/regex, original license follows: * * Copyright (c) 1992, 1993, 1994 Henry Spencer. * Copyright (c) 1992, 1993, 1994 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Henry Spencer. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. ----- Files: tools/clang/lib/Headers/limits.h tools/clang/lib/Headers/lzcntintrin.h tools/clang/lib/Headers/rtmintrin.h tools/clang/lib/Headers/immintrin.h tools/clang/lib/Headers/stdbool.h tools/clang/lib/Headers/cpuid.h tools/clang/lib/Headers/fmaintrin.h tools/clang/lib/Headers/iso646.h tools/clang/lib/Headers/x86intrin.h tools/clang/lib/Headers/mm_malloc.h tools/clang/lib/Headers/ammintrin.h tools/clang/lib/Headers/emmintrin.h tools/clang/lib/Headers/float.h tools/clang/lib/Headers/stdarg.h tools/clang/lib/Headers/popcntintrin.h tools/clang/lib/Headers/tgmath.h tools/clang/lib/Headers/mmintrin.h tools/clang/lib/Headers/unwind.h tools/clang/lib/Headers/stdalign.h tools/clang/lib/Headers/xopintrin.h tools/clang/lib/Headers/stddef.h tools/clang/lib/Headers/bmi2intrin.h tools/clang/lib/Headers/wmmintrin.h tools/clang/lib/Headers/stdint.h tools/clang/lib/Headers/smmintrin.h tools/clang/lib/Headers/__wmmintrin_aes.h tools/clang/lib/Headers/fma4intrin.h tools/clang/lib/Headers/altivec.h tools/clang/lib/Headers/tmmintrin.h tools/clang/lib/Headers/xmmintrin.h tools/clang/lib/Headers/varargs.h tools/clang/lib/Headers/avx2intrin.h tools/clang/lib/Headers/mm3dnow.h tools/clang/lib/Headers/__wmmintrin_pclmul.h tools/clang/lib/Headers/pmmintrin.h tools/clang/lib/Headers/nmmintrin.h tools/clang/lib/Headers/bmiintrin.h tools/clang/lib/Headers/f16cintrin.h tools/clang/lib/Headers/avxintrin.h License: * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. ----- Files: utils/unittest/googletest/gtest.cc utils/unittest/googletest/include/gtest/internal/gtest-filepath.h utils/unittest/googletest/include/gtest/internal/gtest-port.h utils/unittest/googletest/include/gtest/internal/gtest-death-test-internal.h utils/unittest/googletest/include/gtest/internal/gtest-internal.h utils/unittest/googletest/include/gtest/internal/gtest-string.h utils/unittest/googletest/include/gtest/internal/gtest-param-util.h utils/unittest/googletest/include/gtest/internal/gtest-linked_ptr.h utils/unittest/googletest/include/gtest/internal/gtest-internal-inl.h utils/unittest/googletest/include/gtest/gtest-message.h utils/unittest/googletest/include/gtest/gtest-spi.h utils/unittest/googletest/include/gtest/gtest-test-part.h utils/unittest/googletest/include/gtest/gtest.h utils/unittest/googletest/include/gtest/gtest-printers.h utils/unittest/googletest/include/gtest/gtest_prod.h utils/unittest/googletest/include/gtest/gtest-death-test.h utils/unittest/googletest/include/gtest/gtest-typed-test.h utils/unittest/googletest/gtest-typed-test.cc utils/unittest/googletest/gtest-port.cc utils/unittest/googletest/gtest-printers.cc utils/unittest/googletest/gtest-all.cc utils/unittest/googletest/gtest-filepath.cc utils/unittest/googletest/gtest-death-test.cc utils/unittest/googletest/gtest-test-part.cc License: * Copyright 2007, Google Inc. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following disclaimer * in the documentation and/or other materials provided with the * distribution. * * Neither the name of Google Inc. nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ----- Files: tools/lldb/test/pexpect-2.4/pexpect.py tools/lldb/test/pexpect-2.4/screen.py tools/lldb/test/pexpect-2.4/PKG-INFO tools/lldb/test/pexpect-2.4/doc tools/lldb/test/pexpect-2.4/doc/index.html tools/lldb/test/pexpect-2.4/doc/index.template.html tools/lldb/test/pexpect-2.4/doc/clean.css tools/lldb/test/pexpect-2.4/doc/examples.html tools/lldb/test/pexpect-2.4/doc/email.png tools/lldb/test/pexpect-2.4/FSM.py tools/lldb/test/pexpect-2.4/pxssh.py tools/lldb/test/pexpect-2.4/INSTALL tools/lldb/test/pexpect-2.4/setup.py tools/lldb/test/pexpect-2.4/README tools/lldb/test/pexpect-2.4/LICENSE tools/lldb/test/pexpect-2.4/fdpexpect.py tools/lldb/test/pexpect-2.4/ANSI.py tools/lldb/test/pexpect-2.4/examples tools/lldb/test/pexpect-2.4/examples/df.py tools/lldb/test/pexpect-2.4/examples/ssh_session.py tools/lldb/test/pexpect-2.4/examples/astat.py tools/lldb/test/pexpect-2.4/examples/fix_cvs_files.py tools/lldb/test/pexpect-2.4/examples/bd_serv.py tools/lldb/test/pexpect-2.4/examples/chess3.py tools/lldb/test/pexpect-2.4/examples/hive.py tools/lldb/test/pexpect-2.4/examples/rippy.py tools/lldb/test/pexpect-2.4/examples/topip.py tools/lldb/test/pexpect-2.4/examples/README tools/lldb/test/pexpect-2.4/examples/table_test.html tools/lldb/test/pexpect-2.4/examples/ssh_tunnel.py tools/lldb/test/pexpect-2.4/examples/ftp.py tools/lldb/test/pexpect-2.4/examples/chess.py tools/lldb/test/pexpect-2.4/examples/sshls.py tools/lldb/test/pexpect-2.4/examples/chess2.py tools/lldb/test/pexpect-2.4/examples/cgishell.cgi tools/lldb/test/pexpect-2.4/examples/passmass.py tools/lldb/test/pexpect-2.4/examples/python.py tools/lldb/test/pexpect-2.4/examples/monitor.py tools/lldb/test/pexpect-2.4/examples/script.py tools/lldb/test/pexpect-2.4/examples/bd_client.py tools/lldb/test/pexpect-2.4/examples/uptime.py License: Free, open source, and all that good stuff. Pexpect Copyright (c) 2008 Noah Spurrier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. debian/llvm-3.4-runtime.prerm.in0000644000000000000000000000102512245123017013572 0ustar #!/bin/sh -e if test "$1" = "remove"; then if test -x /usr/sbin/update-binfmts; then update-binfmts --package llvm-@LLVM_VERSION@-runtime \ --remove llvm-@LLVM_VERSION@-runtime.binfmt /usr/bin/lli-@LLVM_VERSION@ || true if test -f /var/lib/binfmts/llvm-@LLVM_VERSION@.binfmt; then # Purge old file update-binfmts --package llvm-@LLVM_VERSION@-runtime \ --remove llvm-@LLVM_VERSION@.binfmt /usr/bin/lli-@LLVM_VERSION@ || true fi fi fi #DEBHELPER# debian/clang-3.4.lintian-overrides0000644000000000000000000000040412245123017014127 0ustar # I know but well... clang-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/clang-check.1.gz clang-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/clang-tblgen.1.gz clang-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/scan-view.1.gz debian/python-clang-3.4.install0000644000000000000000000000010512245123017013454 0ustar tools/clang/bindings/python/clang/ /usr/lib/python2.7/dist-packages/ debian/lldb-3.4.manpages0000644000000000000000000000002712245123017012116 0ustar debian/man/lldb-3.4.1 debian/libclang-3.4-dev.install0000644000000000000000000000044012245123017013402 0ustar usr/lib/llvm-3.4/include/clang usr/lib/llvm-3.4/include/clang-c #usr/include/clang /usr/include/ #usr/include/clang-c /usr/include/ #usr/lib/libclang.so /usr/lib/ usr/lib/llvm-3.4/lib/libclang*a #usr/lib/libclang*a /usr/lib/ debian/llvm-3.4-examples.dirs0000644000000000000000000000004012245123017013130 0ustar usr/share/doc/llvm-3.4-examples debian/clang-3.4-doc.docs0000644000000000000000000000003712245123017012166 0ustar tools/clang/docs/_build/html/ debian/clang-3.4.links0000644000000000000000000000044212245123017011613 0ustar usr/share/man/man1/clang-3.4.1.gz usr/share/man/man1/llvm-clang.1.gz usr/share/man/man1/clang-3.4.1.gz usr/share/man/man1/clang++.1.gz /usr/share/clang/scan-build/scan-build /usr/bin/scan-build /usr/share/clang/scan-view/scan-view /usr/bin/scan-view /usr/bin/clang /usr/bin/llvm-clang debian/libclang1-3.4.install.in0000644000000000000000000000010612245123017013313 0ustar usr/lib/llvm-3.4/lib/libclang-3.4.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ debian/lldb-3.4-dev.install0000644000000000000000000000003712245123017012546 0ustar /usr/lib/llvm-3.4/include/lldb debian/debian_path.h0000644000000000000000000000071712247136574011615 0ustar //===----------------------------------------------------------------------===// // // Debian paths declaration management // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #ifndef DEBIAN_PATH_H #define DEBIAN_PATH_H // Provides the debian revision #define DEB_PATCHSETVERSION "@DEB_PATCHSETVERSION@" #endif debian/llvm-3.4-dev.dirs0000644000000000000000000000020612245123017012074 0ustar /usr/lib/llvm-3.4/lib /usr/lib/llvm-3.4/build /usr/lib/llvm-3.4/include usr/share/doc/llvm-3.4-dev usr/share/emacs/site-lisp/llvm-3.4 debian/libllvm-3.4-ocaml-dev.META0000644000000000000000000000254512245123017013451 0ustar description = "Low Level Virtual Machine bindings" version = "3.4" directory = "+llvm-3.4" archive(byte) = "llvm.cma" archive(native) = "llvm.cmxa" linkopts = "-cclib -lstdc++ -cclib -lllvm" package "executionengine" ( requires = "llvm-3_4" version = "3.4" archive(native) = "llvm_executionengine.cmxa" archive(byte) = "llvm_executionengine.cma" linkopts = "-cclib -lllvm_executionengine" ) package "target" ( requires = "llvm-3_4" version = "3.4" archive(native) = "llvm_target.cmxa" archive(byte) = "llvm_target.cma" linkopts = "-cclib -lllvm_target" ) package "scalar_opts" ( requires = "llvm-3_4 llvm-3_4.target" version = "3.4" archive(native) = "llvm_scalar_opts.cmxa" archive(byte) = "llvm_scalar_opts.cma" linkopts = "-cclib -lllvm_scalar_opts" ) package "analysis" ( requires = "llvm-3_4" version = "3.4" archive(native) = "llvm_analysis.cmxa" archive(byte) = "llvm_analysis.cma" linkopts = "-cclib -lllvm_analysis" ) package "bitwriter" ( requires = "llvm-3_4" version = "3.4" archive(native) = "llvm_bitwriter.cmxa" archive(byte) = "llvm_bitwriter.cma" linkopts = "-cclib -lllvm_bitwriter" ) package "bitreader" ( requires = "llvm-3_4 llvm-3_4.bitwriter" version = "3.4" archive(native) = "llvm_bitreader.cmxa" archive(byte) = "llvm_bitreader.cma" linkopts = "-cclib -lllvm_bitreader" ) debian/source/0000755000000000000000000000000012243332436010470 5ustar debian/source/format0000644000000000000000000000001412243332436011676 0ustar 3.0 (quilt) debian/clang-modernize-3.4.manpages0000644000000000000000000000004112245123017014253 0ustar debian/man/clang-modernize-3.4.1 debian/llvm-3.4-examples.examples0000644000000000000000000000001312245123017014005 0ustar examples/* debian/clang-3.4-examples.examples0000644000000000000000000000002112245123017014116 0ustar clang/examples/* debian/lldb-3.4.install.in0000644000000000000000000000034612245123017012402 0ustar usr/bin/lldb-3.4 usr/lib/llvm-3.4/bin/lldb usr/lib/llvm-3.4/bin/lldb-platform usr/lib/llvm-3.4/lib/liblldb.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ build-llvm/Release/lib/python2.7/site-packages/lldb/ /usr/lib/python2.7/dist-packages/ debian/patches/0000755000000000000000000000000012305653634010624 5ustar debian/patches/silent-swig-warning.diff0000644000000000000000000000150212245614623015362 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/lldb/source/Interpreter/Makefile =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/lldb/source/Interpreter/Makefile 2013-08-23 14:44:05.000000000 +0200 +++ llvm-toolchain-3.4-3.4~+rc1/lldb/source/Interpreter/Makefile 2013-11-28 11:23:01.664429006 +0100 @@ -23,7 +23,7 @@ # Drop -Wself-assign, -Wmissing-field-initializers and -Wsometimes-uninitialized, # which we are not currently clean with (due to SWIG generated cpp source). -EXTRA_OPTIONS += -Wno-missing-field-initializers -Wno-self-assign -Wno-sometimes-uninitialized +EXTRA_OPTIONS += -Wno-missing-field-initializers -Wno-self-assign -Wno-sometimes-uninitialized -Wno-cast-qual # edit-swig-python-wrapper-file.py needs $(SRCROOT) export SRCROOT := $(PROJ_SRC_DIR)/$(LLDB_LEVEL) debian/patches/clang-format-version.diff0000644000000000000000000000372012246663633015521 0ustar Index: llvm-toolchain-snapshot_3.4~svn193603/clang/tools/clang-format/clang-format.py =================================================================== --- llvm-toolchain-snapshot_3.4~svn193603.orig/clang/tools/clang-format/clang-format.py 2013-10-29 12:26:23.002137599 +0100 +++ llvm-toolchain-snapshot_3.4~svn193603/clang/tools/clang-format/clang-format.py 2013-10-29 12:26:23.002137599 +0100 @@ -24,7 +24,7 @@ import vim # Change this to the full path if clang-format is not on the path. -binary = 'clang-format' +binary = 'clang-format-3.4' # Change this to format according to other formatting styles. See the output of # 'clang-format --help' for a list of supported styles. The default looks for Index: llvm-toolchain-snapshot_3.4~svn193603/clang/tools/clang-format/clang-format-diff.py =================================================================== --- llvm-toolchain-snapshot_3.4~svn193603.orig/clang/tools/clang-format/clang-format-diff.py 2013-10-29 12:26:23.002137599 +0100 +++ llvm-toolchain-snapshot_3.4~svn193603/clang/tools/clang-format/clang-format-diff.py 2013-10-29 12:26:23.002137599 +0100 @@ -31,7 +31,7 @@ # Change this to the full path if clang-format is not on the path. -binary = 'clang-format' +binary = 'clang-format-3.4' def main(): Index: llvm-toolchain-snapshot_3.4~svn193603/clang/tools/clang-format/clang-format.el =================================================================== --- llvm-toolchain-snapshot_3.4~svn193603.orig/clang/tools/clang-format/clang-format.el 2013-10-29 12:26:23.002137599 +0100 +++ llvm-toolchain-snapshot_3.4~svn193603/clang/tools/clang-format/clang-format.el 2013-10-29 12:26:23.002137599 +0100 @@ -13,7 +13,7 @@ ;; *Location of the clang-format binary. If it is on your PATH, a full path name ;; need not be specified. -(defvar clang-format-binary "clang-format") +(defvar clang-format-binary "clang-format-3.4") (defun clang-format-region () "Use clang-format to format the currently active region." debian/patches/hurd-pathmax.diff0000644000000000000000000000315512246663724014071 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/Basic/FileManager.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/Basic/FileManager.cpp 2013-11-26 15:06:44.000000000 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/Basic/FileManager.cpp 2013-11-27 15:37:41.000000000 +0100 @@ -43,6 +43,11 @@ #if defined(LLVM_ON_UNIX) #include #endif +// For GNU Hurd +#if defined(__GNU__) && !defined(PATH_MAX) +# define PATH_MAX 4096 +#endif + using namespace clang; // FIXME: Enhance libsystem to support inode and other fields. Index: llvm-toolchain-3.4-3.4~+rc1/lldb/include/lldb/lldb-defines.h =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/lldb/include/lldb/lldb-defines.h 2013-11-26 15:06:44.000000000 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/lldb/include/lldb/lldb-defines.h 2013-11-27 15:37:41.000000000 +0100 @@ -12,6 +12,11 @@ #include "lldb/lldb-types.h" +// For GNU Hurd +#if defined(__GNU__) && !defined(PATH_MAX) +# define PATH_MAX 4096 +#endif + #if !defined(UINT32_MAX) #define UINT32_MAX 4294967295U #endif Index: llvm-toolchain-3.4-3.4~+rc1/lib/Support/Unix/Path.inc =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/lib/Support/Unix/Path.inc 2013-10-31 15:35:00.000000000 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/lib/Support/Unix/Path.inc 2013-11-27 17:31:18.478743021 +0100 @@ -59,6 +59,7 @@ // For GNU Hurd #if defined(__GNU__) && !defined(PATH_MAX) # define PATH_MAX 4096 +# define MAXPATHLEN 4096 #endif using namespace llvm; debian/patches/removeduplicatedeclaration.diff0000644000000000000000000000306612246663633017065 0ustar Index: llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Basic/Targets.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/lib/Basic/Targets.cpp 2013-11-04 09:46:53.320669497 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Basic/Targets.cpp 2013-11-04 09:46:53.320669497 +0100 @@ -3679,33 +3679,6 @@ return Version >= 7; } - static bool shouldUseInlineAtomic(const llvm::Triple &T) { - // On linux, binaries targeting old cpus call functions in libgcc to - // perform atomic operations. The implementation in libgcc then calls into - // the kernel which on armv6 and newer uses ldrex and strex. The net result - // is that if we assume the kernel is at least as recent as the hardware, - // it is safe to use atomic instructions on armv6 and newer. - if (T.getOS() != llvm::Triple::Linux) - return false; - StringRef ArchName = T.getArchName(); - if (T.getArch() == llvm::Triple::arm) { - if (!ArchName.startswith("armv")) - return false; - StringRef VersionStr = ArchName.substr(4); - unsigned Version; - if (VersionStr.getAsInteger(10, Version)) - return false; - return Version >= 6; - } - assert(T.getArch() == llvm::Triple::thumb); - if (!ArchName.startswith("thumbv")) - return false; - StringRef VersionStr = ArchName.substr(6); - unsigned Version; - if (VersionStr.getAsInteger(10, Version)) - return false; - return Version >= 7; - } public: ARMTargetInfo(const llvm::Triple &Triple) debian/patches/disabletestlldb.diff0000644000000000000000000000136012246663633014623 0ustar Index: llvm-toolchain-3.3-3.3/lldb/test/functionalities/thread/break_after_join/TestBreakAfterJoin.py =================================================================== --- llvm-toolchain-3.3-3.3.orig/lldb/test/functionalities/thread/break_after_join/TestBreakAfterJoin.py (révision 183568) +++ llvm-toolchain-3.3-3.3/lldb/test/functionalities/thread/break_after_join/TestBreakAfterJoin.py (révision 183569) @@ -21,6 +21,7 @@ self.breakpoint_after_join_test() @expectedFailureDarwin("llvm.org/pr15824") # thread states not properly maintained + @skipIfLinux # Causes hangs (llvm.org/pr16170) when run using "make check" @dwarf_test def test_with_dwarf(self): """Test breakpoint handling after a thread join.""" debian/patches/18-soname.patch0000644000000000000000000000165312246663633013366 0ustar Index: llvm-toolchain-snapshot_3.4~svn193628/clang/tools/libclang/Makefile =================================================================== --- llvm-toolchain-snapshot_3.4~svn193628.orig/clang/tools/libclang/Makefile 2013-10-29 18:21:54.358914501 +0100 +++ llvm-toolchain-snapshot_3.4~svn193628/clang/tools/libclang/Makefile 2013-10-29 18:22:13.622915201 +0100 @@ -14,6 +14,7 @@ LINK_LIBS_IN_SHARED = 1 SHARED_LIBRARY = 1 +SONAME_MAJOR=1 include $(CLANG_LEVEL)/../../Makefile.config LINK_COMPONENTS := $(TARGETS_TO_BUILD) asmparser bitreader support mc option @@ -30,7 +31,7 @@ # Add soname to the library. ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD GNU GNU/kFreeBSD)) - LLVMLibsOptions += -Wl,-soname,lib$(LIBRARYNAME)$(SHLIBEXT) + LLVMLibsOptions += -Wl,-soname,lib$(LIBRARYNAME)$(SHLIBEXT).$(SONAME_MAJOR) endif ##===----------------------------------------------------------------------===## debian/patches/21-searchPathHeaders.diff0000644000000000000000000000134212246663633015260 0ustar Index: llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Driver/ToolChains.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/lib/Driver/ToolChains.cpp 2013-11-04 09:47:04.468669903 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Driver/ToolChains.cpp 2013-11-04 09:47:04.464669903 +0100 @@ -2529,6 +2529,11 @@ addSystemInclude(DriverArgs, CC1Args, P.str()); } + // Under Debian, clang headers are installed into + // '/usr/include/clang/VERSION/include/' + addSystemInclude(DriverArgs, CC1Args, "/usr/include/clang/" + std::string(CLANG_VERSION_STRING) + "/include/"); + + if (DriverArgs.hasArg(options::OPT_nostdlibinc)) return; debian/patches/0003-Debian-version-info-and-bugreport.patch0000644000000000000000000000107612246663633020602 0ustar Index: llvm-toolchain-snapshot_3.4~svn188990/lib/Support/CommandLine.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn188990.orig/lib/Support/CommandLine.cpp 2013-08-22 09:07:22.728608907 +0200 +++ llvm-toolchain-snapshot_3.4~svn188990/lib/Support/CommandLine.cpp 2013-08-22 09:07:22.724608907 +0200 @@ -1686,6 +1686,10 @@ OS << LLVM_VERSION_INFO; #endif OS << "\n "; +#ifdef LLVM_DEBIAN_INFO + OS << LLVM_DEBIAN_INFO; +#endif + OS << "\n "; #ifndef __OPTIMIZE__ OS << "DEBUG build"; #else debian/patches/declare_clear_cache.diff0000644000000000000000000000143412246663633015354 0ustar Index: llvm-toolchain-snapshot_3.4~svn188990/lib/Support/Unix/Memory.inc =================================================================== --- llvm-toolchain-snapshot_3.4~svn188990.orig/lib/Support/Unix/Memory.inc 2013-08-22 09:07:39.252608486 +0200 +++ llvm-toolchain-snapshot_3.4~svn188990/lib/Support/Unix/Memory.inc 2013-08-22 09:07:39.248608486 +0200 @@ -336,7 +336,7 @@ // FIXME: Can we safely always call this for __GNUC__ everywhere? const char *Start = static_cast(Addr); const char *End = Start + Len; - __clear_cache(const_cast(Start), const_cast(End)); + __builtin___clear_cache(const_cast(Start), const_cast(End)); # elif defined(__mips__) const char *Start = static_cast(Addr); # if defined(ANDROID) debian/patches/kfreebsd_v2.diff0000644000000000000000000002420012246663633013654 0ustar --- a/lldb/source/Host/common/Host.cpp +++ b/lldb/source/Host/common/Host.cpp @@ -27,7 +27,7 @@ #include #include -#elif defined (__linux__) || defined(__FreeBSD_kernel__) +#elif defined (__linux__) || defined(__GLIBC__) /* Linux or the FreeBSD kernel with glibc (Debian KFreeBSD for example) */ #include @@ -524,7 +524,7 @@ { } -#if !defined (__APPLE__) && !defined (__FreeBSD__) && !defined (__linux__) // see macosx/Host.mm +#if !defined (__APPLE__) && !defined (__FreeBSD__) && !defined (__FreeBSD_kernel__) && !defined (__linux__) // see macosx/Host.mm void Host::ThreadCreated (const char *thread_name) @@ -544,7 +544,7 @@ return 0; } -#endif // #if !defined (__APPLE__) && !defined (__FreeBSD__) && !defined (__linux__) +#endif // #if !defined (__APPLE__) && !defined (__FreeBSD__) && !defined (__FreeBSD_kernel__) && !defined (__linux__) struct HostThreadCreateInfo { @@ -684,7 +684,7 @@ return true; } return false; -#elif defined (__linux__) +#elif defined (__linux__) || defined (__GLIBC__) void *fn = dlsym (RTLD_DEFAULT, "pthread_setname_np"); if (fn) { @@ -742,7 +742,7 @@ exe_path[len] = 0; g_program_filespec.SetFile(exe_path, false); } -#elif defined (__FreeBSD__) +#elif defined (__FreeBSD__) || defined (__FreeBSD_kernel__) int exe_path_mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, getpid() }; size_t exe_path_size; if (sysctl(exe_path_mib, 4, NULL, &exe_path_size, NULL, 0) == 0) @@ -1180,7 +1180,7 @@ return NULL; } -#if !defined (__APPLE__) && !defined (__FreeBSD__) // see macosx/Host.mm +#if !defined (__APPLE__) && !defined (__FreeBSD__) && !defined (__FreeBSD_kernel__) // see macosx/Host.mm bool Host::GetOSBuildString (std::string &s) { @@ -1229,7 +1229,7 @@ } #endif // #if !defined (__APPLE__) && !defined(__linux__) -#if !defined (__APPLE__) && !defined (__FreeBSD__) && !defined(__linux__) +#if !defined (__APPLE__) && !defined (__FreeBSD__) && !defined (__FreeBSD_kernel__) && !defined(__linux__) bool Host::GetProcessInfo (lldb::pid_t pid, ProcessInstanceInfo &process_info) { @@ -1443,7 +1443,7 @@ static uint32_t g_num_cores = UINT32_MAX; if (g_num_cores == UINT32_MAX) { -#if defined(__APPLE__) or defined (__linux__) or defined (__FreeBSD__) +#if defined(__APPLE__) or defined (__linux__) or defined (__FreeBSD__) or defined (__FreeBSD_kernel__) g_num_cores = ::sysconf(_SC_NPROCESSORS_ONLN); --- a/Makefile.rules +++ b/Makefile.rules @@ -275,10 +275,12 @@ BuildMode := Release # Don't use -fomit-frame-pointer on Darwin or FreeBSD. ifneq ($(HOST_OS),FreeBSD) + ifneq ($(HOST_OS),GNU/kFreeBSD) ifneq ($(HOST_OS),Darwin) OmitFramePointer := -fomit-frame-pointer endif endif + endif CXX.Flags += $(OPTIMIZE_OPTION) $(OmitFramePointer) C.Flags += $(OPTIMIZE_OPTION) $(OmitFramePointer) @@ -1454,7 +1456,7 @@ endif endif -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux NetBSD FreeBSD GNU)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux NetBSD FreeBSD GNU/kFreeBSD GNU)) ifneq ($(ARCH), Mips) LD.Flags += -Wl,--version-script=$(LLVM_SRC_ROOT)/autoconf/ExportMap.map endif --- a/autoconf/configure.ac +++ b/autoconf/configure.ac @@ -222,11 +222,16 @@ llvm_cv_no_link_all_option="-Wl,-noall_load" llvm_cv_os_type="Minix" llvm_cv_platform_type="Unix" ;; - *-*-freebsd* | *-*-kfreebsd-gnu) + *-*-freebsd*) llvm_cv_link_all_option="-Wl,--whole-archive" llvm_cv_no_link_all_option="-Wl,--no-whole-archive" llvm_cv_os_type="FreeBSD" llvm_cv_platform_type="Unix" ;; + *-*-kfreebsd-gnu) + llvm_cv_link_all_option="-Wl,--whole-archive" + llvm_cv_no_link_all_option="-Wl,--no-whole-archive" + llvm_cv_os_type="GNU/kFreeBSD" + llvm_cv_platform_type="Unix" ;; *-*-openbsd*) llvm_cv_link_all_option="-Wl,--whole-archive" llvm_cv_no_link_all_option="-Wl,--no-whole-archive" @@ -317,8 +322,10 @@ llvm_cv_target_os_type="Darwin" ;; *-*-minix*) llvm_cv_target_os_type="Minix" ;; - *-*-freebsd* | *-*-kfreebsd-gnu) + *-*-freebsd*) llvm_cv_target_os_type="FreeBSD" ;; + *-*-kfreebsd-gnu) + llvm_cv_target_os_type="GNU/kFreeBSD" ;; *-*-openbsd*) llvm_cv_target_os_type="OpenBSD" ;; *-*-netbsd*) --- a/clang/tools/libclang/Makefile +++ b/clang/tools/libclang/Makefile @@ -30,7 +30,7 @@ include $(CLANG_LEVEL)/Makefile # Add soname to the library. -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD GNU)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD GNU GNU/kFreeBSD)) LDFLAGS += -Wl,-soname,lib$(LIBRARYNAME)$(SHLIBEXT).$(SONAME_MAJOR) endif --- a/configure +++ b/configure @@ -3824,11 +3824,16 @@ llvm_cv_no_link_all_option="-Wl,-noall_load" llvm_cv_os_type="Minix" llvm_cv_platform_type="Unix" ;; - *-*-freebsd* | *-*-kfreebsd-gnu) + *-*-freebsd*) llvm_cv_link_all_option="-Wl,--whole-archive" llvm_cv_no_link_all_option="-Wl,--no-whole-archive" llvm_cv_os_type="FreeBSD" llvm_cv_platform_type="Unix" ;; + *-*-kfreebsd-gnu) + llvm_cv_link_all_option="-Wl,--whole-archive" + llvm_cv_no_link_all_option="-Wl,--no-whole-archive" + llvm_cv_os_type="GNU/kFreeBSD" + llvm_cv_platform_type="Unix" ;; *-*-openbsd*) llvm_cv_link_all_option="-Wl,--whole-archive" llvm_cv_no_link_all_option="-Wl,--no-whole-archive" @@ -3925,8 +3930,10 @@ llvm_cv_target_os_type="Darwin" ;; *-*-minix*) llvm_cv_target_os_type="Minix" ;; - *-*-freebsd* | *-*-kfreebsd-gnu) + *-*-freebsd*) llvm_cv_target_os_type="FreeBSD" ;; + *-*-kfreebsd-gnu) + llvm_cv_target_os_type="GNU/kFreeBSD" ;; *-*-openbsd*) llvm_cv_target_os_type="OpenBSD" ;; *-*-netbsd*) --- a/lldb/lib/Makefile +++ b/lldb/lib/Makefile @@ -99,7 +99,7 @@ lldbPluginDynamicLoaderMacOSX.a endif -ifeq ($(HOST_OS),FreeBSD) +ifneq (,$(filter $(HOST_OS), FreeBSD GNU/kFreeBSD)) USEDLIBS += lldbHostFreeBSD.a \ lldbPluginProcessPOSIX.a \ lldbPluginProcessFreeBSD.a @@ -132,7 +132,7 @@ endif endif -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD)) # Include everything from the .a's into the shared library. ProjLibsOptions := -Wl,--whole-archive $(ProjLibsOptions) \ -Wl,--no-whole-archive --- a/lldb/source/Host/Makefile +++ b/lldb/source/Host/Makefile @@ -21,7 +21,7 @@ DIRS += linux endif -ifeq ($(HOST_OS),FreeBSD) +ifneq (,$(filter $(HOST_OS), FreeBSD GNU/kFreeBSD)) DIRS += freebsd endif --- a/lldb/source/Plugins/Platform/Makefile +++ b/lldb/source/Plugins/Platform/Makefile @@ -24,5 +24,9 @@ # ifeq ($(HOST_OS),FreeBSD) # DIRS += FreeBSD # endif +# +# ifeq ($(HOST_OS),GNU/kFreeBSD) +# DIRS += FreeBSD +# endif include $(LLDB_LEVEL)/Makefile --- a/lldb/source/Plugins/Process/POSIX/Makefile +++ b/lldb/source/Plugins/Process/POSIX/Makefile @@ -24,7 +24,7 @@ CPPFLAGS += -Wno-extended-offsetof endif -ifeq ($(HOST_OS),FreeBSD) +ifneq (,$(filter $(HOST_OS), FreeBSD GNU/kFreeBSD)) # Extend the include path so we may locate ProcessMonitor CPPFLAGS += -I$(PROJ_SRC_DIR)/$(LLDB_LEVEL)/source/Plugins/Process/FreeBSD endif --- a/projects/sample/Makefile.llvm.rules +++ b/projects/sample/Makefile.llvm.rules @@ -208,10 +208,12 @@ BuildMode := Release # Don't use -fomit-frame-pointer on Darwin or FreeBSD. ifneq ($(HOST_OS),FreeBSD) + ifneq ($(HOST_OS),GNU/kFreeBSD) ifneq ($(HOST_OS),Darwin) OmitFramePointer := -fomit-frame-pointer endif endif + endif # Darwin requires -fstrict-aliasing to be explicitly enabled. # Avoid -fstrict-aliasing on Darwin for now, there are unresolved issues @@ -1372,7 +1374,7 @@ endif endif -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux NetBSD FreeBSD)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux NetBSD FreeBSD GNU/kFreeBSD)) ifneq ($(ARCH), Mips) LD.Flags += -Wl,--version-script=$(PROJ_SRC_ROOT)/autoconf/ExportMap.map endif --- a/tools/llvm-shlib/Makefile +++ b/tools/llvm-shlib/Makefile @@ -69,18 +69,18 @@ endif endif -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD OpenBSD GNU Bitrig)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD GNU/kFreeBSD OpenBSD GNU Bitrig)) # Include everything from the .a's into the shared library. LLVMLibsOptions := -Wl,--whole-archive $(LLVMLibsOptions) \ -Wl,--no-whole-archive endif -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD GNU)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD GNU/kFreeBSD GNU)) # Add soname to the library. LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT).1 -Wl,-Bsymbolic-functions endif -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD)) # Don't allow unresolved symbols. LLVMLibsOptions += -Wl,--no-undefined endif --- a/lldb/source/Plugins/Makefile +++ b/lldb/source/Plugins/Makefile @@ -36,7 +36,7 @@ DIRS += Process/Linux Process/POSIX endif -ifeq ($(HOST_OS),FreeBSD) +ifneq (,$(filter $(HOST_OS), FreeBSD GNU/kFreeBSD)) DIRS += Process/FreeBSD Process/POSIX endif --- a/lldb/tools/driver/Makefile +++ b/lldb/tools/driver/Makefile @@ -21,7 +21,7 @@ LLVMLibsOptions += -Wl,-sectcreate -Wl,__TEXT -Wl,__info_plist -Wl,"$(PROJ_SRC_DIR)/lldb-Info.plist" endif -ifeq ($(HOST_OS),Linux) +ifneq (,$(filter $(HOST_OS), Linux GNU/kFreeBSD)) LLVMLibsOptions += -Wl,-rpath,$(LibDir) endif --- a/lldb/tools/lldb-platform/Makefile +++ b/lldb/tools/lldb-platform/Makefile @@ -18,6 +18,6 @@ LLVMLibsOptions += -Wl,-rpath,@loader_path/../lib/ endif -ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD)) +ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux FreeBSD GNU/kFreeBSD)) LLVMLibsOptions += -Wl,-rpath,$(LibDir) endif --- a/lldb/source/Host/common/Host.cpp +++ b/lldb/source/Host/common/Host.cpp @@ -1569,7 +1569,7 @@ Host::RunShellCommand (const char *command, return error; } -#if defined(__linux__) or defined(__FreeBSD__) +#if defined(__linux__) || defined(__FreeBSD__) || defined(__GLIBC__) // The functions below implement process launching via posix_spawn() for Linux // and FreeBSD. debian/patches/aarch64-mul-lohi.diff0000644000000000000000000000312212305653610014422 0ustar Description: AArch64: don't try to handle [SU]MUL_LOHI nodes We should set them to expand for now since there are no patterns dealing with them. Actually, there are no instructions either so I doubt they'll ever be acceptable. Author: Tim Northover Origin: upstream, http://llvm.org/viewvc/llvm-project?view=revision&revision=199265 Last-Update: 2014-03-05 Index: b/lib/Target/AArch64/AArch64ISelLowering.cpp =================================================================== --- a/lib/Target/AArch64/AArch64ISelLowering.cpp +++ b/lib/Target/AArch64/AArch64ISelLowering.cpp @@ -155,6 +155,11 @@ setOperationAction(ISD::SDIVREM, MVT::i32, Expand); setOperationAction(ISD::SDIVREM, MVT::i64, Expand); + setOperationAction(ISD::SMUL_LOHI, MVT::i32, Expand); + setOperationAction(ISD::SMUL_LOHI, MVT::i64, Expand); + setOperationAction(ISD::UMUL_LOHI, MVT::i32, Expand); + setOperationAction(ISD::UMUL_LOHI, MVT::i64, Expand); + setOperationAction(ISD::CTPOP, MVT::i32, Expand); setOperationAction(ISD::CTPOP, MVT::i64, Expand); Index: b/test/CodeGen/AArch64/mul-lohi.ll =================================================================== --- /dev/null +++ b/test/CodeGen/AArch64/mul-lohi.ll @@ -0,0 +1,12 @@ +; RUN: llc -mtriple=aarch64-linux-gnu %s -o - | FileCheck %s + +define i128 @test_128bitmul(i128 %lhs, i128 %rhs) { +; CHECK: test_128bitmul: +; CHECK-DAG: umulh [[CARRY:x[0-9]+]], x0, x2 +; CHECK-DAG: madd [[PART1:x[0-9]+]], x0, x3, [[CARRY]] +; CHECK: madd x1, x1, x2, [[PART1]] +; CHECK: mul x0, x0, x2 + + %prod = mul i128 %lhs, %rhs + ret i128 %prod +} debian/patches/0010-shared-lib-paths.patch0000644000000000000000000000362312246663633015362 0ustar Index: llvm-toolchain-snapshot_3.4~svn188146/clang/lib/Driver/ToolChains.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn188146.orig/clang/lib/Driver/ToolChains.cpp 2013-08-11 10:01:30.888734802 +0200 +++ llvm-toolchain-snapshot_3.4~svn188146/clang/lib/Driver/ToolChains.cpp 2013-08-11 10:01:30.884734801 +0200 @@ -2337,6 +2337,14 @@ addPathIfExists(SysRoot + "/usr/lib/" + MultiarchTriple, Paths); addPathIfExists(SysRoot + "/usr/lib/../" + Multilib, Paths); + // In Debian we install LLVM lib with version string + // /usr/lib/llvm-X.Y/lib/LLVMGold.so + if (IsDebian(Distro)) { + addPathIfExists(SysRoot + "/usr/lib/llvm-" + CLANG_VERSION_STRING + "/lib/", + Paths); + } + + // Try walking via the GCC triple path in case of biarch or multiarch GCC // installations with strange symlinks. if (GCCInstallation.isValid()) Index: llvm-toolchain-snapshot_3.4~svn188146/clang/lib/Driver/Tools.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn188146.orig/clang/lib/Driver/Tools.cpp 2013-08-11 10:01:30.888734802 +0200 +++ llvm-toolchain-snapshot_3.4~svn188146/clang/lib/Driver/Tools.cpp 2013-08-11 10:01:30.888734802 +0200 @@ -6153,6 +6153,14 @@ if (D.IsUsingLTO(Args) || Args.hasArg(options::OPT_use_gold_plugin)) { CmdArgs.push_back("-plugin"); std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; + if ( ! llvm::sys::fs::exists(Plugin)) { + // Plugin is not in driver-based relative path, try system libs + // on Debian for instance + std::string PluginSystem = ToolChain.GetFilePath("LLVMgold.so"); + if (llvm::sys::fs::exists(PluginSystem)){ + Plugin = PluginSystem; + } + } CmdArgs.push_back(Args.MakeArgString(Plugin)); // Try to pass driver level flags relevant to LTO code generation down to debian/patches/silent-MCJIIT-tests.diff0000644000000000000000000001724512246663633015106 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/cross-module-sm-pic-a.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/cross-module-sm-pic-a.ll 2013-11-28 18:25:58.131386256 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/cross-module-sm-pic-a.ll 2013-11-28 18:30:05.135377370 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -extra-module=%p/Inputs/cross-module-b.ll -relocation-model=pic -code-model=small %s > /dev/null -; XFAIL: mips, i686, i386, arm +; XFAIL: * declare i32 @FB() Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/eh-lg-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/eh-lg-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/eh-lg-pic.ll 2013-11-28 18:31:00.727375369 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -relocation-model=pic -code-model=large %s -; XFAIL: cygwin, win32, mingw, mips, powerpc64, i686, i386, aarch64, arm +; XFAIL: * declare i8* @__cxa_allocate_exception(i64) declare void @__cxa_throw(i8*, i8*, i8*) declare i32 @__gxx_personality_v0(...) Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/eh-sm-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/eh-sm-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/eh-sm-pic.ll 2013-11-28 18:31:57.735373316 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -relocation-model=pic -code-model=small %s -; XFAIL: cygwin, win32, mingw, mips, i686, i386, darwin, aarch64, arm +; XFAIL: * declare i8* @__cxa_allocate_exception(i64) declare void @__cxa_throw(i8*, i8*, i8*) declare i32 @__gxx_personality_v0(...) Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/hello-sm-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/hello-sm-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/hello-sm-pic.ll 2013-11-28 18:31:09.939375038 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -relocation-model=pic -code-model=small %s > /dev/null -; XFAIL: mips, i686, i386, darwin, aarch64, arm +; XFAIL: * @.LC0 = internal global [12 x i8] c"Hello World\00" ; <[12 x i8]*> [#uses=1] Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/multi-module-sm-pic-a.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/multi-module-sm-pic-a.ll 2013-11-28 18:25:58.131386256 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/multi-module-sm-pic-a.ll 2013-11-28 18:31:13.595374906 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -extra-module=%p/Inputs/multi-module-b.ll -extra-module=%p/Inputs/multi-module-c.ll -relocation-model=pic -code-model=small %s > /dev/null -; XFAIL: mips, i686, i386, arm +; XFAIL: * declare i32 @FB() Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/cross-module-sm-pic-a.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/remote/cross-module-sm-pic-a.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/cross-module-sm-pic-a.ll 2013-11-28 18:31:17.055374781 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -extra-module=%p/Inputs/cross-module-b.ll -disable-lazy-compilation=true -remote-mcjit -mcjit-remote-process=lli-child-target -relocation-model=pic -code-model=small %s > /dev/null -; XFAIL: mips, i686, i386, arm +; XFAIL: * declare i32 @FB() Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/multi-module-sm-pic-a.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/remote/multi-module-sm-pic-a.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/multi-module-sm-pic-a.ll 2013-11-28 18:31:21.235374631 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -extra-module=%p/Inputs/multi-module-b.ll -extra-module=%p/Inputs/multi-module-c.ll -disable-lazy-compilation=true -remote-mcjit -mcjit-remote-process=lli-child-target -relocation-model=pic -code-model=small %s > /dev/null -; XFAIL: mips, i686, i386, arm +; XFAIL: * declare i32 @FB() Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-sm-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-sm-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-sm-pic.ll 2013-11-28 18:31:27.899374389 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -remote-mcjit -relocation-model=pic -code-model=small %s > /dev/null -; XFAIL: mips, aarch64, arm, i686, i386 +; XFAIL: * @count = global i32 1, align 4 Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/test-ptr-reloc-sm-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/remote/test-ptr-reloc-sm-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/remote/test-ptr-reloc-sm-pic.ll 2013-11-28 18:31:31.347374266 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -remote-mcjit -O0 -relocation-model=pic -code-model=small %s -; XFAIL: mips, aarch64, arm, i686, i386 +; XFAIL: * @.str = private unnamed_addr constant [6 x i8] c"data1\00", align 1 @ptr = global i8* getelementptr inbounds ([6 x i8]* @.str, i32 0, i32 0), align 4 Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/stubs-sm-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/stubs-sm-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/stubs-sm-pic.ll 2013-11-28 18:31:36.075374097 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -disable-lazy-compilation=false -relocation-model=pic -code-model=small %s -; XFAIL: mips, i686, i386, aarch64, arm +; XFAIL: * define i32 @main() nounwind { entry: Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/test-global-init-nonzero-sm-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/test-global-init-nonzero-sm-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/test-global-init-nonzero-sm-pic.ll 2013-11-28 18:31:39.387373978 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -relocation-model=pic -code-model=small %s > /dev/null -; XFAIL: mips, aarch64, arm, i686, i386 +; XFAIL: * @count = global i32 1, align 4 Index: llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/test-ptr-reloc-sm-pic.ll =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/test/ExecutionEngine/MCJIT/test-ptr-reloc-sm-pic.ll 2013-11-28 18:25:58.127386257 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/test/ExecutionEngine/MCJIT/test-ptr-reloc-sm-pic.ll 2013-11-28 18:34:25.463368000 +0000 @@ -1,5 +1,5 @@ ; RUN: %lli_mcjit -O0 -relocation-model=pic -code-model=small %s -; XFAIL: mips, aarch64, arm, i686, i386 +; XFAIL: * @.str = private unnamed_addr constant [6 x i8] c"data1\00", align 1 @ptr = global i8* getelementptr inbounds ([6 x i8]* @.str, i32 0, i32 0), align 4 debian/patches/23-strlcpy_strlcat_warning_removed.diff0000644000000000000000000003344112246663633020413 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/clang/include/clang/Basic/Builtins.def =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/include/clang/Basic/Builtins.def 2013-11-24 16:14:43.676235943 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/clang/include/clang/Basic/Builtins.def 2013-11-24 16:14:43.668235942 +0100 @@ -471,8 +471,8 @@ BUILTIN(__builtin___stpcpy_chk, "c*c*cC*z", "nF") BUILTIN(__builtin___strcat_chk, "c*c*cC*z", "nF") BUILTIN(__builtin___strcpy_chk, "c*c*cC*z", "nF") -BUILTIN(__builtin___strlcat_chk, "zc*cC*zz", "nF") -BUILTIN(__builtin___strlcpy_chk, "zc*cC*zz", "nF") +//BUILTIN(__builtin___strlcat_chk, "zc*cC*zz", "nF") +//BUILTIN(__builtin___strlcpy_chk, "zc*cC*zz", "nF") BUILTIN(__builtin___strncat_chk, "c*c*cC*zz", "nF") BUILTIN(__builtin___strncpy_chk, "c*c*cC*zz", "nF") BUILTIN(__builtin___stpncpy_chk, "c*c*cC*zz", "nF") @@ -765,8 +765,8 @@ LIBBUILTIN(_longjmp, "vJi", "fr", "setjmp.h", ALL_GNU_LANGUAGES) LIBBUILTIN(siglongjmp, "vSJi", "fr", "setjmp.h", ALL_GNU_LANGUAGES) // non-standard but very common -LIBBUILTIN(strlcpy, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES) -LIBBUILTIN(strlcat, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES) +//LIBBUILTIN(strlcpy, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES) +//LIBBUILTIN(strlcat, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES) // id objc_msgSend(id, SEL, ...) LIBBUILTIN(objc_msgSend, "GGH.", "f", "objc/message.h", OBJC_LANG) // long double objc_msgSend_fpret(id self, SEL op, ...) Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/Sema/SemaChecking.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/Sema/SemaChecking.cpp 2013-11-24 16:14:43.676235943 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/Sema/SemaChecking.cpp 2013-11-24 16:14:43.668235942 +0100 @@ -813,9 +813,10 @@ return false; // Handle memory setting and copying functions. - if (CMId == Builtin::BIstrlcpy || CMId == Builtin::BIstrlcat) - CheckStrlcpycatArguments(TheCall, FnInfo); - else if (CMId == Builtin::BIstrncat) +// if (CMId == Builtin::BIstrlcpy || CMId == Builtin::BIstrlcat) +// CheckStrlcpycatArguments(TheCall, FnInfo); +// else + if (CMId == Builtin::BIstrncat) CheckStrncatArguments(TheCall, FnInfo); else CheckMemaccessArguments(TheCall, CMId, FnInfo); Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/AST/Decl.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/AST/Decl.cpp 2013-11-24 16:14:43.676235943 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/AST/Decl.cpp 2013-11-24 16:14:43.672235943 +0100 @@ -3018,10 +3018,10 @@ case Builtin::BImemmove: return Builtin::BImemmove; - case Builtin::BIstrlcpy: - return Builtin::BIstrlcpy; - case Builtin::BIstrlcat: - return Builtin::BIstrlcat; +// case Builtin::BIstrlcpy: +// return Builtin::BIstrlcpy; +// case Builtin::BIstrlcat: +// return Builtin::BIstrlcat; case Builtin::BI__builtin_memcmp: case Builtin::BImemcmp: Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp 2013-11-24 16:14:43.676235943 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp 2013-11-24 16:14:43.672235943 +0100 @@ -238,9 +238,9 @@ case Builtin::BIstrncpy: case Builtin::BIstrncat: return TaintPropagationRule(1, 2, 0, true); - case Builtin::BIstrlcpy: - case Builtin::BIstrlcat: - return TaintPropagationRule(1, 2, 0, false); +// case Builtin::BIstrlcpy: +// case Builtin::BIstrlcat: +// return TaintPropagationRule(1, 2, 0, false); case Builtin::BIstrndup: return TaintPropagationRule(0, 1, ReturnValueIndex); Index: llvm-toolchain-3.4-3.4~+rc1/clang/test/Sema/builtins.c =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/test/Sema/builtins.c 2013-11-24 16:14:43.676235943 +0100 +++ /dev/null 1970-01-01 00:00:00.000000000 +0000 @@ -1,199 +0,0 @@ -// RUN: %clang_cc1 %s -fsyntax-only -verify -pedantic -Wno-string-plus-int -triple=i686-apple-darwin9 -// This test needs to set the target because it uses __builtin_ia32_vec_ext_v4si - -int test1(float a, int b) { - return __builtin_isless(a, b); // expected-note {{declared here}} -} -int test2(int a, int b) { - return __builtin_islessequal(a, b); // expected-error {{floating point type}} -} - -int test3(double a, float b) { - return __builtin_isless(a, b); -} -int test4(int* a, double b) { - return __builtin_islessequal(a, b); // expected-error {{floating point type}} -} - -int test5(float a, long double b) { - return __builtin_isless(a, b, b); // expected-error {{too many arguments}} -} -int test6(float a, long double b) { - return __builtin_islessequal(a); // expected-error {{too few arguments}} -} - - -#define CFSTR __builtin___CFStringMakeConstantString -void test7() { - const void *X; - X = CFSTR("\242"); // expected-warning {{input conversion stopped}} - X = CFSTR("\0"); // no-warning - X = CFSTR(242); // expected-error {{CFString literal is not a string constant}} expected-warning {{incompatible integer to pointer conversion}} - X = CFSTR("foo", "bar"); // expected-error {{too many arguments to function call}} -} - - -// atomics. - -void test9(short v) { - unsigned i, old; - - old = __sync_fetch_and_add(); // expected-error {{too few arguments to function call}} - old = __sync_fetch_and_add(&old); // expected-error {{too few arguments to function call}} - old = __sync_fetch_and_add((unsigned*)0, 42i); // expected-warning {{imaginary constants are a GNU extension}} - - // PR7600: Pointers are implicitly casted to integers and back. - void *old_ptr = __sync_val_compare_and_swap((void**)0, 0, 0); - - // Ensure the return type is correct even when implicit casts are stripped - // away. This triggers an assertion while checking the comparison otherwise. - if (__sync_fetch_and_add(&old, 1) == 1) { - } -} - -// overloaded atomics should be declared only once. -void test9_1(volatile int* ptr, int val) { - __sync_fetch_and_add_4(ptr, val); -} -void test9_2(volatile int* ptr, int val) { - __sync_fetch_and_add(ptr, val); -} -void test9_3(volatile int* ptr, int val) { - __sync_fetch_and_add_4(ptr, val); - __sync_fetch_and_add(ptr, val); - __sync_fetch_and_add(ptr, val); - __sync_fetch_and_add_4(ptr, val); - __sync_fetch_and_add_4(ptr, val); -} - -// rdar://7236819 -void test10(void) __attribute__((noreturn)); - -void test10(void) { - __asm__("int3"); - __builtin_unreachable(); - - // No warning about falling off the end of a noreturn function. -} - -void test11(int X) { - switch (X) { - case __builtin_eh_return_data_regno(0): // constant foldable. - break; - } - - __builtin_eh_return_data_regno(X); // expected-error {{argument to '__builtin_eh_return_data_regno' must be a constant integer}} -} - -// PR5062 -void test12(void) __attribute__((__noreturn__)); -void test12(void) { - __builtin_trap(); // no warning because trap is noreturn. -} - -void test_unknown_builtin(int a, int b) { - __builtin_isles(a, b); // expected-error{{use of unknown builtin}} \ - // expected-note{{did you mean '__builtin_isless'?}} -} - -int test13() { - __builtin_eh_return(0, 0); // no warning, eh_return never returns. -} - -// -void test14() { - int old; - old = __sync_fetch_and_min((volatile int *)&old, 1); -} - -// -void test15(const char *s) { - __builtin_printf("string is %s\n", s); -} - -// PR7885 -int test16() { - return __builtin_constant_p() + // expected-error{{too few arguments}} - __builtin_constant_p(1, 2); // expected-error {{too many arguments}} -} - -const int test17_n = 0; -const char test17_c[] = {1, 2, 3, 0}; -const char test17_d[] = {1, 2, 3, 4}; -typedef int __attribute__((vector_size(16))) IntVector; -struct Aggregate { int n; char c; }; -enum Enum { EnumValue1, EnumValue2 }; - -typedef __typeof(sizeof(int)) size_t; -size_t strlen(const char *); - -void test17() { -#define ASSERT(...) { int arr[(__VA_ARGS__) ? 1 : -1]; } -#define T(...) ASSERT(__builtin_constant_p(__VA_ARGS__)) -#define F(...) ASSERT(!__builtin_constant_p(__VA_ARGS__)) - - // __builtin_constant_p returns 1 if the argument folds to: - // - an arithmetic constant with value which is known at compile time - T(test17_n); - T(&test17_c[3] - test17_c); - T(3i + 5); // expected-warning {{imaginary constant}} - T(4.2 * 7.6); - T(EnumValue1); - T((enum Enum)(int)EnumValue2); - - // - the address of the first character of a string literal, losslessly cast - // to any type - T("string literal"); - T((double*)"string literal"); - T("string literal" + 0); - T((long)"string literal"); - - // ... and otherwise returns 0. - F("string literal" + 1); - F(&test17_n); - F(test17_c); - F(&test17_c); - F(&test17_d); - F((struct Aggregate){0, 1}); - F((IntVector){0, 1, 2, 3}); - - // Ensure that a technique used in glibc is handled correctly. -#define OPT(...) (__builtin_constant_p(__VA_ARGS__) && strlen(__VA_ARGS__) < 4) - // FIXME: These are incorrectly treated as ICEs because strlen is treated as - // a builtin. - ASSERT(OPT("abc")); - ASSERT(!OPT("abcd")); - // In these cases, the strlen is non-constant, but the __builtin_constant_p - // is 0: the array size is not an ICE but is foldable. - ASSERT(!OPT(test17_c)); // expected-warning {{folded}} - ASSERT(!OPT(&test17_c[0])); // expected-warning {{folded}} - ASSERT(!OPT((char*)test17_c)); // expected-warning {{folded}} - ASSERT(!OPT(test17_d)); // expected-warning {{folded}} - ASSERT(!OPT(&test17_d[0])); // expected-warning {{folded}} - ASSERT(!OPT((char*)test17_d)); // expected-warning {{folded}} - -#undef OPT -#undef T -#undef F -} - -void test18() { - char src[1024]; - char dst[2048]; - size_t result; - void *ptr; - - ptr = __builtin___memccpy_chk(dst, src, '\037', sizeof(src), sizeof(dst)); - result = __builtin___strlcpy_chk(dst, src, sizeof(src), sizeof(dst)); - result = __builtin___strlcat_chk(dst, src, sizeof(src), sizeof(dst)); - - ptr = __builtin___memccpy_chk(dst, src, '\037', sizeof(src)); // expected-error {{too few arguments to function call}} - ptr = __builtin___strlcpy_chk(dst, src, sizeof(src), sizeof(dst)); // expected-warning {{incompatible integer to pointer conversion}} - ptr = __builtin___strlcat_chk(dst, src, sizeof(src), sizeof(dst)); // expected-warning {{incompatible integer to pointer conversion}} -} - -void no_ms_builtins() { - __assume(1); // expected-warning {{implicit declaration}} - __noop(1); // expected-warning {{implicit declaration}} - __debugbreak(); // expected-warning {{implicit declaration}} -} Index: llvm-toolchain-3.4-3.4~+rc1/clang/test/Sema/warn-strlcpycat-size.c =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/test/Sema/warn-strlcpycat-size.c 2013-11-24 16:14:43.676235943 +0100 +++ /dev/null 1970-01-01 00:00:00.000000000 +0000 @@ -1,55 +0,0 @@ -// RUN: %clang_cc1 -Wstrlcpy-strlcat-size -verify -fsyntax-only %s - -typedef __SIZE_TYPE__ size_t; -size_t strlcpy (char * restrict dst, const char * restrict src, size_t size); -size_t strlcat (char * restrict dst, const char * restrict src, size_t size); -size_t strlen (const char *s); - -char s1[100]; -char s2[200]; -char * s3; - -struct { - char f1[100]; - char f2[100][3]; -} s4, **s5; - -int x; - -void f(void) -{ - strlcpy(s1, s2, sizeof(s1)); // no warning - strlcpy(s1, s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}} - strlcpy(s1, s3, strlen(s3)+1); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}} - strlcat(s2, s3, sizeof(s3)); // expected-warning {{size argument in 'strlcat' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}} - strlcpy(s4.f1, s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}} - strlcpy((*s5)->f2[x], s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}} - strlcpy(s1+3, s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} -} - -// Don't issue FIXIT for flexible arrays. -struct S { - int y; - char x[]; -}; - -void flexible_arrays(struct S *s) { - char str[] = "hi"; - strlcpy(s->x, str, sizeof(str)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} -} - -// Don't issue FIXIT for destinations of size 1. -void size_1() { - char z[1]; - char str[] = "hi"; - - strlcpy(z, str, sizeof(str)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} -} - -// Support VLAs. -void vlas(int size) { - char z[size]; - char str[] = "hi"; - - strlcpy(z, str, sizeof(str)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}} -} debian/patches/disable-execinfo-usage.diff0000644000000000000000000000115712246663633015771 0ustar Index: llvm-toolchain-snapshot_3.4~svn193603/lldb/lib/Makefile =================================================================== --- llvm-toolchain-snapshot_3.4~svn193603.orig/lldb/lib/Makefile 2013-10-29 12:26:27.542137766 +0100 +++ llvm-toolchain-snapshot_3.4~svn193603/lldb/lib/Makefile 2013-10-29 12:26:27.542137766 +0100 @@ -158,5 +158,6 @@ # Allow unresolved symbols. LLVMLibsOptions += -Wl,--allow-shlib-undefined # Link in python - LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt -L/usr/local/lib -lexecinfo + LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt +# -L/usr/local/lib -lexecinfo endif debian/patches/scan-build-clang-path.diff0000644000000000000000000000120512246663633015515 0ustar Index: llvm-toolchain-snapshot_3.4~svn192346/clang/tools/scan-build/scan-build =================================================================== --- llvm-toolchain-snapshot_3.4~svn192346.orig/clang/tools/scan-build/scan-build 2013-10-10 13:38:20.858082707 +0200 +++ llvm-toolchain-snapshot_3.4~svn192346/clang/tools/scan-build/scan-build 2013-10-10 13:38:20.854082707 +0200 @@ -1547,7 +1547,7 @@ # Find 'clang' if (!defined $AnalyzerDiscoveryMethod) { - $Clang = Cwd::realpath("$RealBin/bin/clang"); + $Clang = Cwd::realpath("/usr/bin/clang"); if (!defined $Clang || ! -x $Clang) { $Clang = Cwd::realpath("$RealBin/clang"); } debian/patches/0050-powerpcspe-fp.diff0000644000000000000000000000764712246663633014654 0ustar PPCJITInfo.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) Index: llvm-toolchain-snapshot_3.4~svn188990/lib/Target/PowerPC/PPCJITInfo.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn188990.orig/lib/Target/PowerPC/PPCJITInfo.cpp 2013-08-22 09:07:37.872608521 +0200 +++ llvm-toolchain-snapshot_3.4~svn188990/lib/Target/PowerPC/PPCJITInfo.cpp 2013-08-22 09:07:37.868608522 +0200 @@ -104,6 +104,7 @@ "stw r8, 196(r1)\n" "stw r7, 192(r1)\n" "stw r6, 188(r1)\n" "stw r5, 184(r1)\n" "stw r4, 180(r1)\n" "stw r3, 176(r1)\n" +#ifndef __NO_FPRS__ // Save all call-clobbered FP regs. "stfd f13, 168(r1)\n" "stfd f12, 160(r1)\n" "stfd f11, 152(r1)\n" "stfd f10, 144(r1)\n" @@ -112,6 +113,7 @@ "stfd f5, 104(r1)\n" "stfd f4, 96(r1)\n" "stfd f3, 88(r1)\n" "stfd f2, 80(r1)\n" "stfd f1, 72(r1)\n" +#endif // Arguments to Compilation Callback: // r3 - our lr (address of the call instruction in stub plus 4) // r4 - stub's lr (address of instruction that called the stub plus 4) @@ -127,6 +129,7 @@ "lwz r8, 196(r1)\n" "lwz r7, 192(r1)\n" "lwz r6, 188(r1)\n" "lwz r5, 184(r1)\n" "lwz r4, 180(r1)\n" "lwz r3, 176(r1)\n" +#ifndef __NO_FPRS__ // Restore all FP arg registers "lfd f13, 168(r1)\n" "lfd f12, 160(r1)\n" "lfd f11, 152(r1)\n" "lfd f10, 144(r1)\n" @@ -135,6 +138,7 @@ "lfd f5, 104(r1)\n" "lfd f4, 96(r1)\n" "lfd f3, 88(r1)\n" "lfd f2, 80(r1)\n" "lfd f1, 72(r1)\n" +#endif // Pop 3 frames off the stack and branch to target "lwz r1, 208(r1)\n" "lwz r2, 8(r1)\n" @@ -169,12 +173,14 @@ "stw 8, 92(1)\n" "stw 7, 88(1)\n" "stw 6, 84(1)\n" "stw 5, 80(1)\n" "stw 4, 76(1)\n" "stw 3, 72(1)\n" +#ifndef __NO_FPRS__ // Save all call-clobbered FP regs. "stfd 8, 64(1)\n" "stfd 7, 56(1)\n" "stfd 6, 48(1)\n" "stfd 5, 40(1)\n" "stfd 4, 32(1)\n" "stfd 3, 24(1)\n" "stfd 2, 16(1)\n" "stfd 1, 8(1)\n" +#endif // Arguments to Compilation Callback: // r3 - our lr (address of the call instruction in stub plus 4) // r4 - stub's lr (address of instruction that called the stub plus 4) @@ -190,12 +196,14 @@ "lwz 8, 92(1)\n" "lwz 7, 88(1)\n" "lwz 6, 84(1)\n" "lwz 5, 80(1)\n" "lwz 4, 76(1)\n" "lwz 3, 72(1)\n" +#ifndef __NO_FPRS__ // Restore all FP arg registers "lfd 8, 64(1)\n" "lfd 7, 56(1)\n" "lfd 6, 48(1)\n" "lfd 5, 40(1)\n" "lfd 4, 32(1)\n" "lfd 3, 24(1)\n" "lfd 2, 16(1)\n" "lfd 1, 8(1)\n" +#endif // Pop 3 frames off the stack and branch to target "lwz 1, 104(1)\n" "lwz 0, 4(1)\n" @@ -246,6 +254,7 @@ "std 8, 256(1)\n" "std 7, 248(1)\n" "std 6, 240(1)\n" "std 5, 232(1)\n" "std 4, 224(1)\n" "std 3, 216(1)\n" +#ifndef __NO_FPRS__ // Save all call-clobbered FP regs. "stfd 13, 208(1)\n" "stfd 12, 200(1)\n" "stfd 11, 192(1)\n" "stfd 10, 184(1)\n" @@ -254,6 +263,7 @@ "stfd 5, 144(1)\n" "stfd 4, 136(1)\n" "stfd 3, 128(1)\n" "stfd 2, 120(1)\n" "stfd 1, 112(1)\n" +#endif // Arguments to Compilation Callback: // r3 - our lr (address of the call instruction in stub plus 4) // r4 - stub's lr (address of instruction that called the stub plus 4) @@ -274,6 +284,7 @@ "ld 8, 256(1)\n" "ld 7, 248(1)\n" "ld 6, 240(1)\n" "ld 5, 232(1)\n" "ld 4, 224(1)\n" "ld 3, 216(1)\n" +#ifndef __NO_FPRS__ // Restore all FP arg registers "lfd 13, 208(1)\n" "lfd 12, 200(1)\n" "lfd 11, 192(1)\n" "lfd 10, 184(1)\n" @@ -282,6 +293,7 @@ "lfd 5, 144(1)\n" "lfd 4, 136(1)\n" "lfd 3, 128(1)\n" "lfd 2, 120(1)\n" "lfd 1, 112(1)\n" +#endif // Pop 3 frames off the stack and branch to target "ld 1, 280(1)\n" "ld 0, 16(1)\n" debian/patches/include-target.diff0000644000000000000000000000147512246663633014400 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/Driver/ToolChains.cpp 2013-12-01 16:44:29.334277797 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp 2013-12-01 16:44:29.294277798 +0000 @@ -2773,7 +2773,7 @@ #ifdef __i386__ // clang does not detect this path: /usr/include/i386-linux-gnu/c++/4.8/ Help him - addLibStdCXXIncludePaths( "/usr/include/", "/c++/" + Version.str(), "i386-linux-gnu", GCCInstallation.getMultiarchSuffix(), DriverArgs, CC1Args); + addLibStdCXXIncludePaths( "/usr/include/", "/c++/" + Version.Text, "i386-linux-gnu", BiarchSuffix, MIPSABIDirSuffix, DriverArgs, CC1Args); #endif if (addLibStdCXXIncludePaths(LibDir.str() + "/../include", debian/patches/0023-link-libopagent.patch0000644000000000000000000000270712246663633015320 0ustar Index: llvm-toolchain-snapshot_3.4~svn193603/configure =================================================================== --- llvm-toolchain-snapshot_3.4~svn193603.orig/configure 2013-10-29 12:26:09.742137116 +0100 +++ llvm-toolchain-snapshot_3.4~svn193603/configure 2013-10-29 12:26:09.738137117 +0100 @@ -13315,7 +13315,7 @@ case $llvm_cv_os_type in Linux) if test -n "$llvm_cv_oppath" ; then - LIBS="$LIBS -lopagent -L${llvm_cv_oppath} -Wl,-rpath,${llvm_cv_oppath}" + #LIBS="$LIBS -lopagent -L${llvm_cv_oppath} -Wl,-rpath,${llvm_cv_oppath}" { echo "$as_me:$LINENO: checking for library containing bfd_init" >&5 echo $ECHO_N "checking for library containing bfd_init... $ECHO_C" >&6; } if test "${ac_cv_search_bfd_init+set}" = set; then @@ -13411,7 +13411,7 @@ echo "${ECHO_T}$ac_cv_search_bfd_init" >&6; } ac_res=$ac_cv_search_bfd_init if test "$ac_res" != no; then - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + test "$ac_res" = "none required" || true fi @@ -13447,8 +13447,8 @@ if test -z "$ac_lib"; then ac_res="none required" else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" + ac_res="-Wl,--as-needed -l$ac_lib -Wl,--no-as-needed" + LIBS="-Wl,--as-needed -l$ac_lib -Wl,--no-as-needed $ac_func_search_save_LIBS" fi rm -f conftest.$ac_objext conftest$ac_exeext if { (ac_try="$ac_link" debian/patches/debian-mips64-n32-multiarch.diff0000644000000000000000000000627212246665547016427 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/Driver/ToolChains.cpp 2013-12-01 17:59:04.054246320 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp 2013-12-01 18:01:14.610241621 +0100 @@ -1150,10 +1150,12 @@ static const char *const MIPS64LibDirs[] = { "/lib64", "/lib" }; static const char *const MIPS64Triples[] = { "mips64-linux-gnu", - "mips-mti-linux-gnu" }; + "mips-mti-linux-gnu", + "mips64-linux-gnuabi64" }; static const char *const MIPS64ELLibDirs[] = { "/lib64", "/lib" }; static const char *const MIPS64ELTriples[] = { "mips64el-linux-gnu", - "mips-mti-linux-gnu" }; + "mips-mti-linux-gnu", + "mips64el-linux-gnuabi64" }; static const char *const PPCLibDirs[] = { "/lib32", "/lib" }; static const char *const PPCTriples[] = { @@ -1324,9 +1326,9 @@ } static bool isMipsArch(llvm::Triple::ArchType Arch) { - return Arch == llvm::Triple::mips || - Arch == llvm::Triple::mipsel || - Arch == llvm::Triple::mips64 || + return Arch == llvm::Triple::mips || + Arch == llvm::Triple::mipsel || + Arch == llvm::Triple::mips64 || Arch == llvm::Triple::mips64el; } @@ -2309,6 +2311,14 @@ if (llvm::sys::fs::exists(SysRoot + "/lib/mipsel-linux-gnu")) return "mipsel-linux-gnu"; return TargetTriple.str(); + case llvm::Triple::mips64: + if (llvm::sys::fs::exists(SysRoot + "/lib/mips64-linux-gnuabi64")) + return "mips64-linux-gnuabi64"; + return TargetTriple.str(); + case llvm::Triple::mips64el: + if (llvm::sys::fs::exists(SysRoot + "/lib/mips64el-linux-gnuabi64")) + return "mips64el-linux-gnuabi64"; + return TargetTriple.str(); case llvm::Triple::ppc: if (llvm::sys::fs::exists(SysRoot + "/lib/powerpc-linux-gnuspe")) return "powerpc-linux-gnuspe"; @@ -2665,6 +2675,12 @@ const StringRef MIPSELMultiarchIncludeDirs[] = { "/usr/include/mipsel-linux-gnu" }; + const StringRef MIPS64MultiarchIncludeDirs[] = { + "/usr/include/mips64-linux-gnuabi64" + }; + const StringRef MIPS64ELMultiarchIncludeDirs[] = { + "/usr/include/mips64el-linux-gnuabi64" + }; const StringRef PPCMultiarchIncludeDirs[] = { "/usr/include/powerpc-linux-gnu" }; @@ -2687,6 +2703,10 @@ MultiarchIncludeDirs = MIPSMultiarchIncludeDirs; } else if (getTriple().getArch() == llvm::Triple::mipsel) { MultiarchIncludeDirs = MIPSELMultiarchIncludeDirs; + } else if (getTriple().getArch() == llvm::Triple::mips64) { + MultiarchIncludeDirs = MIPS64MultiarchIncludeDirs; + } else if (getTriple().getArch() == llvm::Triple::mips64el) { + MultiarchIncludeDirs = MIPS64ELMultiarchIncludeDirs; } else if (getTriple().getArch() == llvm::Triple::ppc) { MultiarchIncludeDirs = PPCMultiarchIncludeDirs; } else if (getTriple().getArch() == llvm::Triple::ppc64) { debian/patches/do-not-fail-on-unexpected-pass.diff0000644000000000000000000000116612246732030017303 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/utils/lit/lit/Test.py =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/utils/lit/lit/Test.py 2013-09-14 03:19:17.000000000 +0200 +++ llvm-toolchain-3.4-3.4~+rc1/utils/lit/lit/Test.py 2013-12-01 23:11:25.721571881 +0100 @@ -27,7 +27,7 @@ PASS = ResultCode('PASS', False) XFAIL = ResultCode('XFAIL', False) FAIL = ResultCode('FAIL', True) -XPASS = ResultCode('XPASS', True) +XPASS = ResultCode('XPASS', False) UNRESOLVED = ResultCode('UNRESOLVED', True) UNSUPPORTED = ResultCode('UNSUPPORTED', False) debian/patches/0044-soname.diff0000644000000000000000000000135312246663633013333 0ustar Index: llvm-toolchain-snapshot_3.4~svn193982/tools/llvm-shlib/Makefile =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/tools/llvm-shlib/Makefile 2013-11-04 09:46:03.312667676 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/tools/llvm-shlib/Makefile 2013-11-04 09:46:03.308667675 +0100 @@ -76,7 +76,7 @@ ifeq ($(HOST_OS), $(filter $(HOST_OS), DragonFly Linux FreeBSD GNU/kFreeBSD GNU)) # Add soname to the library. - LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) -Wl,-Bsymbolic-functions + LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT).1 -Wl,-Bsymbolic-functions endif ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD)) debian/patches/libstdc++-header-i386.diff0000644000000000000000000000170512246663633015154 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/Driver/ToolChains.cpp 2013-11-30 15:03:35.257604848 +0000 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp 2013-11-30 15:04:14.793603425 +0000 @@ -2771,6 +2771,11 @@ StringRef BiarchSuffix = GCCInstallation.getBiarchSuffix(); const GCCVersion &Version = GCCInstallation.getVersion(); +#ifdef __i386__ + // clang does not detect this path: /usr/include/i386-linux-gnu/c++/4.8/ Help him + addLibStdCXXIncludePaths( "/usr/include/", "/c++/" + Version.str(), "i386-linux-gnu", GCCInstallation.getMultiarchSuffix(), DriverArgs, CC1Args); +#endif + if (addLibStdCXXIncludePaths(LibDir.str() + "/../include", "/c++/" + Version.Text, TripleStr, BiarchSuffix, MIPSABIDirSuffix, DriverArgs, CC1Args)) debian/patches/python-clangpath.diff0000644000000000000000000000121512246663633014741 0ustar Index: llvm-toolchain-snapshot_3.4~svn193982/clang/bindings/python/clang/cindex.py =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/bindings/python/clang/cindex.py 2013-11-04 09:46:51.136669417 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/bindings/python/clang/cindex.py 2013-11-04 09:46:51.136669417 +0100 @@ -3358,7 +3358,7 @@ elif name == 'Windows': file = 'libclang.dll' else: - file = 'libclang.so' + file = 'libclang-3.3.so' if Config.library_path: file = Config.library_path + '/' + file debian/patches/kfreebsd_ptrace_kludge.diff0000644000000000000000000000644112246663633016145 0ustar Index: llvm-toolchain-snapshot_3.4~svn188146/lldb/source/Host/freebsd/Host.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn188146.orig/lldb/source/Host/freebsd/Host.cpp 2013-08-11 10:01:39.192734591 +0200 +++ llvm-toolchain-snapshot_3.4~svn188146/lldb/source/Host/freebsd/Host.cpp 2013-08-11 10:01:39.188734591 +0200 @@ -20,6 +20,35 @@ #include #include +#include +#include +#include + +#define PT_LWPINFO 13 /* Info about the LWP that stopped. */ +#define PT_GETNUMLWPS 14 /* get total number of threads */ +#define PT_GETLWPLIST 15 /* get thread list */ + +/* Argument structure for PT_LWPINFO. */ +struct ptrace_lwpinfo { + __lwpid_t pl_lwpid; /* LWP described. */ + int pl_event; /* Event that stopped the LWP. */ +#define PL_EVENT_NONE 0 +#define PL_EVENT_SIGNAL 1 + int pl_flags; /* LWP flags. */ +#define PL_FLAG_SA 0x01 /* M:N thread */ +#define PL_FLAG_BOUND 0x02 /* M:N bound thread */ +#define PL_FLAG_SCE 0x04 /* syscall enter point */ +#define PL_FLAG_SCX 0x08 /* syscall leave point */ +#define PL_FLAG_EXEC 0x10 /* exec(2) succeeded */ +#define PL_FLAG_SI 0x20 /* siginfo is valid */ +#define PL_FLAG_FORKED 0x40 /* new child */ +#define PL_FLAG_CHILD 0x80 /* I am from child */ + sigset_t pl_sigmask; /* LWP signal mask */ + sigset_t pl_siglist; /* LWP pending signal */ + struct siginfo pl_siginfo; /* siginfo for signal */ + char pl_tdname[MAXCOMLEN + 1]; /* LWP name */ + int pl_child_pid; /* New child pid */ +}; // C++ Includes // Other libraries and framework includes Index: llvm-toolchain-snapshot_3.4~svn188146/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn188146.orig/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp 2013-08-11 10:01:39.192734591 +0200 +++ llvm-toolchain-snapshot_3.4~svn188146/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp 2013-08-11 10:01:39.188734591 +0200 @@ -19,6 +19,36 @@ #include #include +#include +#include +#include + +#define PT_LWPINFO 13 /* Info about the LWP that stopped. */ +#define PT_GETNUMLWPS 14 /* get total number of threads */ +#define PT_GETLWPLIST 15 /* get thread list */ + +/* Argument structure for PT_LWPINFO. */ +struct ptrace_lwpinfo { + __lwpid_t pl_lwpid; /* LWP described. */ + int pl_event; /* Event that stopped the LWP. */ +#define PL_EVENT_NONE 0 +#define PL_EVENT_SIGNAL 1 + int pl_flags; /* LWP flags. */ +#define PL_FLAG_SA 0x01 /* M:N thread */ +#define PL_FLAG_BOUND 0x02 /* M:N bound thread */ +#define PL_FLAG_SCE 0x04 /* syscall enter point */ +#define PL_FLAG_SCX 0x08 /* syscall leave point */ +#define PL_FLAG_EXEC 0x10 /* exec(2) succeeded */ +#define PL_FLAG_SI 0x20 /* siginfo is valid */ +#define PL_FLAG_FORKED 0x40 /* new child */ +#define PL_FLAG_CHILD 0x80 /* I am from child */ + sigset_t pl_sigmask; /* LWP signal mask */ + sigset_t pl_siglist; /* LWP pending signal */ + struct siginfo pl_siginfo; /* siginfo for signal */ + char pl_tdname[MAXCOMLEN + 1]; /* LWP name */ + int pl_child_pid; /* New child pid */ +}; + // C++ Includes // Other libraries and framework includes #include "lldb/Core/Error.h" debian/patches/19-clang_debian_version.patch0000644000000000000000000000154512246663633016240 0ustar Index: llvm-toolchain-snapshot_3.4~svn188146/clang/lib/Basic/Version.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn188146.orig/clang/lib/Basic/Version.cpp 2013-08-11 10:01:27.104734895 +0200 +++ llvm-toolchain-snapshot_3.4~svn188146/clang/lib/Basic/Version.cpp 2013-08-11 10:01:27.104734895 +0200 @@ -15,6 +15,7 @@ #include "clang/Basic/LLVM.h" #include "llvm/Config/config.h" #include "llvm/Support/raw_ostream.h" +#include "clang/Debian/debian_path.h" #include #include @@ -121,7 +122,8 @@ #ifdef CLANG_VENDOR OS << CLANG_VENDOR; #endif - OS << "clang version " CLANG_VERSION_STRING " " + OS << "clang version " CLANG_VERSION_STRING "-" DEB_PATCHSETVERSION " " + << getClangFullRepositoryVersion(); // If vendor supplied, include the base LLVM version as well. debian/patches/series0000644000000000000000000000163512305653462012045 0ustar 18-soname.patch 19-clang_debian_version.patch #20-vendor.patch 23-strlcpy_strlcat_warning_removed.diff 27-fix_clang_stdint.diff 26-set-correct-float-abi.diff profile_rt.diff 30-kfreebsd.diff 0003-Debian-version-info-and-bugreport.patch 0021-shared-lib-debian.patch 0023-link-libopagent.patch 0044-soname.diff scan-build-clang-path.diff 0050-powerpcspe-fp.diff declare_clear_cache.diff 31-powerpcspe.diff 34-powerpc-no-altivec.diff clang-format-version.diff disable-execinfo-usage.diff unwind-chain-inclusion.diff hurd-pathmax.diff #use-deb-json.diff libstdc++-header-i386.diff atomic_library_1.diff atomic_library_2.diff python-clangpath.diff removeduplicatedeclaration.diff silent-swig-warning.diff silent-MCJIIT-tests.diff include-target.diff debian-mips64-n32-multiarch.diff force-gcc-header-obj.diff do-not-fail-on-unexpected-pass.diff fix-an-issue-in-chroot-witout-proc.diff lldb-link-atomic.diff aarch64-mul-lohi.diff debian/patches/use-deb-json.diff0000644000000000000000000000132512246663633013756 0ustar Index: llvm-toolchain-3.3-3.3/polly/lib/Makefile =================================================================== --- llvm-toolchain-3.3-3.3.orig/polly/lib/Makefile 2012-12-29 16:09:03.000000000 +0100 +++ llvm-toolchain-3.3-3.3/polly/lib/Makefile 2013-08-01 18:23:46.121975042 +0200 @@ -27,9 +27,6 @@ DIRS += Support USEDLIBS += pollysupport.a -DIRS += JSON -USEDLIBS += pollyjson.a - # TODO: Export symbols for RTTI or EH? # @@ -37,7 +34,7 @@ # include $(LEVEL)/Makefile.common -LIBS += $(POLLY_LD) $(POLLY_LIB) +LIBS += $(POLLY_LD) $(POLLY_LIB) -ljsoncpp $(LibDir)/libpollyanalysis.a : $(LibDir)/.dir $(PROJ_OBJ_DIR)/Analysis/$(BuildMode)/.dir \ $(PROJ_SRC_DIR)/Analysis/* debian/patches/atomic_library_1.diff0000644000000000000000000000457612246663633014716 0ustar Index: llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Basic/Targets.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/lib/Basic/Targets.cpp 2013-11-04 09:46:46.696669256 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Basic/Targets.cpp 2013-11-04 09:46:46.692669256 +0100 @@ -3679,6 +3679,20 @@ return Version >= 7; } + static bool shouldUseInlineAtomic(const llvm::Triple &T) { + // On linux, binaries targeting old cpus call functions in libgcc to + // perform atomic operations. The implementation in libgcc then calls into + // the kernel which on armv6 and newer uses ldrex and strex. The net result + // is that if we assume the kernel is at least as recent as the hardware, + // it is safe to use atomic instructions on armv6 and newer. + if (T.getOS() != llvm::Triple::Linux) + return false; + StringRef ArchName = T.getArchName(); + if (ArchName.startswith("armv6") || ArchName.startswith("armv7")) + return true; + return false; + } + public: ARMTargetInfo(const llvm::Triple &Triple) : TargetInfo(Triple), ABI("aapcs-linux"), CPU("arm1136j-s"), Index: llvm-toolchain-snapshot_3.4~svn193982/clang/test/CodeGen/linux-arm-atomic.c =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/test/CodeGen/linux-arm-atomic.c 2013-11-04 09:46:46.696669256 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/test/CodeGen/linux-arm-atomic.c 2013-11-04 09:46:46.692669256 +0100 @@ -1,5 +1,15 @@ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv7-unknown-linux | FileCheck %s // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-linux | FileCheck %s + +typedef int _Atomic_word; +_Atomic_word exchange_and_add(volatile _Atomic_word *__mem, int __val) { + return __atomic_fetch_add(__mem, __val, __ATOMIC_ACQ_REL); +} + +// CHECK: define {{.*}} @exchange_and_add +// CHECK: atomicrmw {{.*}} add +// RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv7-unknown-linux | FileCheck %s +// RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-linux | FileCheck %s // RUN: %clang_cc1 %s -emit-llvm -o - -triple=thumbv7-unknown-linux | FileCheck %s // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-freebsd | FileCheck %s // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-bitrig | FileCheck %s debian/patches/31-powerpcspe.diff0000644000000000000000000000104712246663633014074 0ustar Index: llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile =================================================================== --- llvm-toolchain-snapshot_3.4~svn188990.orig/clang/lib/Lex/Makefile 2013-08-22 09:07:43.368608381 +0200 +++ llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile 2013-08-22 09:07:43.368608381 +0200 @@ -17,8 +17,10 @@ LIBRARYNAME := clangLex ifeq ($(ARCH),PowerPC) +ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),powerpcspe) CXX.Flags += -maltivec endif +endif include $(CLANG_LEVEL)/Makefile debian/patches/0021-shared-lib-debian.patch0000644000000000000000000000225012246663633015462 0ustar Index: llvm-toolchain-snapshot_3.4~svn193982/tools/llvm-shlib/Makefile =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/tools/llvm-shlib/Makefile 2013-11-04 09:09:01.840586768 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/tools/llvm-shlib/Makefile 2013-11-04 09:09:01.836586768 +0100 @@ -39,6 +39,12 @@ LLVMLibsPaths := $(IncludeInLibLlvm) $(LibName.SO): $(LLVMLibsPaths) + $(Echo) Linking $(BuildMode) $(SharedLibKindMessage) \ + $(LIBRARYNAME)$(SHLIBEXT) + $(Verb) $(Link) $(SharedLinkOptions) -o $@ $(ObjectsO) \ + $(ProjLibsOptions) $(LLVMLibsOptions) $(LIBS) + mv $(LibName.SO) $(LibName.SO).1 + ln -s $(notdir $(LibName.SO)).1 $(LibName.SO) ifeq ($(HOST_OS),Darwin) # set dylib internal version number to llvmCore submission number @@ -70,7 +76,7 @@ ifeq ($(HOST_OS), $(filter $(HOST_OS), DragonFly Linux FreeBSD GNU/kFreeBSD GNU)) # Add soname to the library. - LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) + LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) -Wl,-Bsymbolic-functions endif ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD)) debian/patches/profile_rt.diff0000644000000000000000000000167412246663633013637 0ustar Index: llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Driver/Tools.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn192346.orig/clang/lib/Driver/Tools.cpp 2013-10-10 13:38:05.214083057 +0200 +++ llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Driver/Tools.cpp 2013-10-10 13:38:05.206083056 +0200 @@ -36,6 +36,7 @@ #include "llvm/Support/Program.h" #include "llvm/Support/Process.h" #include "llvm/Support/raw_ostream.h" +#include "llvm/Config/config.h" #include using namespace clang::driver; @@ -221,7 +222,7 @@ // libprofile_rt.so. We used to use the -l:libprofile_rt.a syntax, but that is // not supported by old linkers. std::string ProfileRT = - std::string(TC.getDriver().Dir) + "/../lib/libprofile_rt.a"; + std::string(TC.getDriver().Dir) + "/../lib/llvm-"+PACKAGE_VERSION+"/lib/libprofile_rt.a"; CmdArgs.push_back(Args.MakeArgString(ProfileRT)); } debian/patches/34-powerpc-no-altivec.diff0000644000000000000000000000143212246663633015424 0ustar Description: Make sure PowerPC doesn't default to altivec on Author: Adam Conrad Author: Peter Michael Green Forwarded: no Reviewed-By: Colin Watson Last-Update: 2013-04-01 Index: llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile =================================================================== --- llvm-toolchain-snapshot_3.4~svn188990.orig/clang/lib/Lex/Makefile 2013-08-22 09:11:26.616602695 +0200 +++ llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile 2013-08-22 09:11:26.616602695 +0200 @@ -16,11 +16,5 @@ LIBRARYNAME := clangLex -ifeq ($(ARCH),PowerPC) -ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),powerpcspe) -CXX.Flags += -maltivec -endif -endif - include $(CLANG_LEVEL)/Makefile debian/patches/fix-an-issue-in-chroot-witout-proc.diff0000644000000000000000000000352712254023340020153 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/lib/Support/Unix/Path.inc =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/lib/Support/Unix/Path.inc (révision 196790) +++ llvm-toolchain-3.4-3.4~+rc1/lib/Support/Unix/Path.inc (révision 196791) @@ -184,15 +184,15 @@ defined(__OpenBSD__) || defined(__minix) || defined(__FreeBSD_kernel__) || \ defined(__linux__) || defined(__CYGWIN__) || defined(__DragonFly__) static int -test_dir(char buf[PATH_MAX], char ret[PATH_MAX], - const char *dir, const char *bin) -{ +test_dir(char ret[PATH_MAX], const char *dir, const char *bin) +{ struct stat sb; + char fullpath[PATH_MAX]; - snprintf(buf, PATH_MAX, "%s/%s", dir, bin); - if (realpath(buf, ret) == NULL) + snprintf(fullpath, PATH_MAX, "%s/%s", dir, bin); + if (realpath(fullpath, ret) == NULL) return (1); - if (stat(buf, &sb) != 0) + if (stat(fullpath, &sb) != 0) return (1); return (0); @@ -201,20 +201,21 @@ static char * getprogpath(char ret[PATH_MAX], const char *bin) { - char *pv, *s, *t, buf[PATH_MAX]; + char *pv, *s, *t; /* First approach: absolute path. */ if (bin[0] == '/') { - if (test_dir(buf, ret, "/", bin) == 0) + if (test_dir(ret, "/", bin) == 0) return (ret); return (NULL); } /* Second approach: relative path. */ if (strchr(bin, '/') != NULL) { - if (getcwd(buf, PATH_MAX) == NULL) + char cwd[PATH_MAX]; + if (getcwd(cwd, PATH_MAX) == NULL) return (NULL); - if (test_dir(buf, ret, buf, bin) == 0) + if (test_dir(ret, cwd, bin) == 0) return (ret); return (NULL); } @@ -226,7 +227,7 @@ if (pv == NULL) return (NULL); while ((t = strsep(&s, ":")) != NULL) { - if (test_dir(buf, ret, t, bin) == 0) { + if (test_dir(ret, t, bin) == 0) { free(pv); return (ret); } debian/patches/atomic_library_2.diff0000644000000000000000000000361712246663633014712 0ustar Index: llvm-toolchain-snapshot_3.4~svn193982/clang/test/CodeGen/linux-arm-atomic.c =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/test/CodeGen/linux-arm-atomic.c 2013-11-04 09:46:48.988669339 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/test/CodeGen/linux-arm-atomic.c 2013-11-04 09:46:48.988669339 +0100 @@ -1,5 +1,6 @@ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv7-unknown-linux | FileCheck %s // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-linux | FileCheck %s +// RUN: %clang_cc1 %s -emit-llvm -o - -triple=thumbv7-unknown-linux | FileCheck %s typedef int _Atomic_word; _Atomic_word exchange_and_add(volatile _Atomic_word *__mem, int __val) { Index: llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Basic/Targets.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/lib/Basic/Targets.cpp 2013-11-04 09:46:48.988669339 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Basic/Targets.cpp 2013-11-04 09:46:48.988669339 +0100 @@ -3688,9 +3688,23 @@ if (T.getOS() != llvm::Triple::Linux) return false; StringRef ArchName = T.getArchName(); - if (ArchName.startswith("armv6") || ArchName.startswith("armv7")) - return true; - return false; + if (T.getArch() == llvm::Triple::arm) { + if (!ArchName.startswith("armv")) + return false; + StringRef VersionStr = ArchName.substr(4); + unsigned Version; + if (VersionStr.getAsInteger(10, Version)) + return false; + return Version >= 6; + } + assert(T.getArch() == llvm::Triple::thumb); + if (!ArchName.startswith("thumbv")) + return false; + StringRef VersionStr = ArchName.substr(6); + unsigned Version; + if (VersionStr.getAsInteger(10, Version)) + return false; + return Version >= 7; } public: debian/patches/lldb-link-atomic.diff0000644000000000000000000000107112257361266014602 0ustar Description: Link lldb with -latomic to get GCC atomic helpers Author: Adam Conrad Forwarded: no Last-Update: 2013-08-21 Index: b/lldb/lib/Makefile =================================================================== --- a/lldb/lib/Makefile +++ b/lldb/lib/Makefile @@ -148,6 +148,8 @@ LLVMLibsOptions += -Wl,--no-undefined # Link in python LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt + # Link GCC atomic helper library + LLVMLibsOptions += -latomic LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) endif debian/patches/unwind-chain-inclusion.diff0000644000000000000000000000231412246663633016047 0ustar # Without this patch, the first local include of unwind.h might, with the # __has_include_next, try to include the one from the system. # It might be /usr/include/clang/3.4/include/unwind.h # Because of the #ifndef __CLANG_UNWIND_H, it might never include any declaration # from the system. Index: llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Headers/unwind.h =================================================================== --- llvm-toolchain-snapshot_3.4~svn192346.orig/clang/lib/Headers/unwind.h 2013-10-10 13:38:48.446082093 +0200 +++ llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Headers/unwind.h 2013-10-10 13:38:48.438082094 +0200 @@ -23,9 +23,6 @@ /* See "Data Definitions for libgcc_s" in the Linux Standard Base.*/ -#ifndef __CLANG_UNWIND_H -#define __CLANG_UNWIND_H - #if __has_include_next() /* Darwin (from 11.x on) and libunwind provide an unwind.h. If that's available, * use it. libunwind wraps some of its definitions in #ifdef _GNU_SOURCE, @@ -53,6 +50,9 @@ # endif #else +#ifndef __CLANG_UNWIND_H +#define __CLANG_UNWIND_H + #include #ifdef __cplusplus @@ -275,6 +275,7 @@ } #endif +#endif /* __CLANG_UNWIND_H */ + #endif -#endif /* __CLANG_UNWIND_H */ debian/patches/force-gcc-header-obj.diff0000644000000000000000000000122212247050050015265 0ustar Index: llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc1.orig/clang/lib/Driver/ToolChains.cpp 2013-12-02 10:15:22.000000000 +0100 +++ llvm-toolchain-3.4-3.4~+rc1/clang/lib/Driver/ToolChains.cpp 2013-12-02 10:16:54.648134997 +0100 @@ -2618,6 +2618,11 @@ return; } + // Force the inclusion of the gcc headers (objc/objc.h) + addExternCSystemIncludeIfExists( + DriverArgs, CC1Args, GCCInstallation.getInstallPath() + "/include"); + + // Lacking those, try to detect the correct set of system includes for the // target triple. debian/patches/30-kfreebsd.diff0000644000000000000000000000435712250032267013464 0ustar Index: llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.h =================================================================== --- llvm-toolchain-3.4-3.4~+rc2.orig/clang/lib/Driver/ToolChains.h 2013-11-17 23:36:07.000000000 +0100 +++ llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.h 2013-12-05 09:07:45.000000000 +0100 @@ -164,6 +164,8 @@ virtual bool isPICDefault() const; virtual bool isPIEDefault() const; virtual bool isPICDefaultForced() const; + virtual void AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, + llvm::opt::ArgStringList &CC1Args) const; protected: virtual Tool *getTool(Action::ActionClass AC) const; Index: llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc2.orig/clang/lib/Driver/ToolChains.cpp 2013-12-02 11:00:07.000000000 +0100 +++ llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.cpp 2013-12-05 09:08:49.000000000 +0100 @@ -973,6 +973,13 @@ return GoodVersion; } +void Generic_GCC::AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, + llvm::opt::ArgStringList &CC1Args) const { + // Under Debian, clang headers are installed into + // '/usr/include/clang/VERSION/include/' + addSystemInclude(DriverArgs, CC1Args, "/usr/include/clang/" + std::string(CLANG_VERSION_STRING) + "/include/"); +} + /// \brief Less-than for GCCVersion, implementing a Strict Weak Ordering. bool Generic_GCC::GCCVersion::isOlderThan(int RHSMajor, int RHSMinor, int RHSPatch, Index: llvm-toolchain-3.4-3.4~+rc2/lldb/source/Host/common/Host.cpp =================================================================== --- llvm-toolchain-3.4-3.4~+rc2.orig/lldb/source/Host/common/Host.cpp 2013-12-05 09:08:49.000000000 +0100 +++ llvm-toolchain-3.4-3.4~+rc2/lldb/source/Host/common/Host.cpp 2013-12-05 09:09:17.294953434 +0100 @@ -1546,7 +1546,7 @@ return error; } -#if defined(__linux__) or defined(__FreeBSD__) +#if defined(__linux__) || defined(__FreeBSD__) || defined(__GLIBC__) // The functions below implement process launching via posix_spawn() for Linux // and FreeBSD. debian/patches/26-set-correct-float-abi.diff0000644000000000000000000000271112246663633015776 0ustar Description: set correct float abi settings for armel and armhf debian armel supports systems that don't have a fpu so should use a "float abi" setting of soft by default. Debian armhf needs a float abi setting of "hard" Author: Peter Michael Green --- The information above should follow the Patch Tagging Guidelines, please checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here are templates for supplementary fields that you might want to add: Origin: , Bug: Bug-Debian: http://bugs.debian.org/ Bug-Ubuntu: https://launchpad.net/bugs/ Forwarded: Reviewed-By: Last-Update: Index: llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Driver/Tools.cpp =================================================================== --- llvm-toolchain-snapshot_3.4~svn193982.orig/clang/lib/Driver/Tools.cpp 2013-11-04 09:47:08.640670055 +0100 +++ llvm-toolchain-snapshot_3.4~svn193982/clang/lib/Driver/Tools.cpp 2013-11-04 09:47:08.636670055 +0100 @@ -741,7 +741,7 @@ FloatABI = "hard"; break; case llvm::Triple::GNUEABI: - FloatABI = "softfp"; + FloatABI = "soft"; break; case llvm::Triple::EABI: // EABI is always AAPCS, and if it was not marked 'hard', it's softfp debian/patches/hurd.diff0000644000000000000000000000111712246663633012424 0ustar Index: llvm-toolchain-3.3-3.3/clang/lib/Basic/FileManager.cpp =================================================================== --- llvm-toolchain-3.3-3.3.orig/clang/lib/Basic/FileManager.cpp 2013-01-26 17:29:36.000000000 +0100 +++ llvm-toolchain-3.3-3.3/clang/lib/Basic/FileManager.cpp 2013-08-18 16:44:39.364713179 +0200 @@ -43,6 +43,14 @@ #if defined(LLVM_ON_UNIX) #include #endif + +// For GNU Hurd +#if defined(__GNU__) && !defined(PATH_MAX) +# define PATH_MAX 4096 +#endif + + + using namespace clang; // FIXME: Enhance libsystem to support inode and other fields. debian/patches/27-fix_clang_stdint.diff0000644000000000000000000000177012246663633015234 0ustar Index: llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Headers/stdint.h =================================================================== --- llvm-toolchain-snapshot_3.4~svn188990.orig/clang/lib/Headers/stdint.h 2013-08-22 09:07:08.468609270 +0200 +++ llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Headers/stdint.h 2013-08-22 09:07:08.460609271 +0200 @@ -22,8 +22,6 @@ * \*===----------------------------------------------------------------------===*/ -#ifndef __CLANG_STDINT_H -#define __CLANG_STDINT_H /* If we're hosted, fall back to the system's stdint.h, which might have * additional definitions. @@ -73,6 +71,8 @@ # endif #else +#ifndef __CLANG_STDINT_H +#define __CLANG_STDINT_H /* C99 7.18.1.1 Exact-width integer types. * C99 7.18.1.2 Minimum-width integer types. @@ -704,5 +704,5 @@ #define INTMAX_C(v) __INTN_C(__INTMAX_WIDTH__, v) #define UINTMAX_C(v) __UINTN_C(__INTMAX_WIDTH__, v) -#endif /* __STDC_HOSTED__ */ #endif /* __CLANG_STDINT_H */ +#endif /* __STDC_HOSTED__ */ debian/libclang-common-3.4-dev.install0000644000000000000000000000027512245123017014676 0ustar usr/lib/llvm-3.4/lib/clang/3.4/include #usr/lib/clang/3.4/include/ /usr/include/clang/3.4/ usr/lib/llvm-3.4/lib/clang/3.4/lib #usr/lib/clang/3.4/lib /usr/lib/clang/3.4/ debian/compat0000644000000000000000000000000212245123017010361 0ustar 9 debian/llvm-3.4-runtime.links0000644000000000000000000000005512245123017013162 0ustar # AUTOGENERATED in debian/rules.d/binary.mk. debian/control0000644000000000000000000004050012257345173010601 0ustar Source: llvm-toolchain-3.4 Section: devel Priority: optional Maintainer: Ubuntu Developers XSBC-Original-Maintainer: LLVM Packaging Team Uploaders: Sylvestre Ledru Build-Depends: debhelper (>= 9.0), flex, bison, dejagnu, tcl, expect, autoconf, automake, perl, libtool, doxygen, chrpath, texinfo, sharutils, autotools-dev (>= 20060702.1), libffi-dev (>= 3.0.9), lsb-release, patchutils, diffstat, xz-utils, chrpath, python-dev, libedit-dev, swig, python-sphinx, ocaml-nox, binutils-dev, libcloog-isl-dev, libisl-dev (>= 0.11.1), procps, help2man, dh-ocaml, gcc-multilib [amd64 i386] # gcc-4.8, g++-4.8, Build-Conflicts: oprofile, ocaml Standards-Version: 3.9.5 Homepage: http://www.llvm.org/ Vcs-Svn: svn://svn.debian.org/svn/pkg-llvm/llvm-toolchain/branches/3.4/ Vcs-Browser: http://svn.debian.org/viewsvn/pkg-llvm/llvm-toolchain/branches/3.4/ # ------------- clang ------------- Package: clang-3.4 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libclang-common-3.4-dev (= ${binary:Version}), libclang1-3.4 (= ${binary:Version}) Provides: c-compiler, objc-compiler, c++-compiler Recommends: llvm-3.4-dev, python Replaces: clang (<< 1:3.4), clang-3.1, clang-3.2, clang-3.3, compiler-rt, llvm-3.4 (<< 1:3.4~svn194058) Breaks: clang (<< 1:3.4), clang-3.1, clang-3.2, clang-3.3, compiler-rt, llvm-3.4 (<< 1:3.4~svn194058) Description: C, C++ and Objective-C compiler (LLVM based) Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998 and 2001 standards and also provides a partial support of C++1y. Package: clang-format-3.4 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, python Replaces: clang-format-3.3 Breaks: clang-format-3.3 Description: Tool to format C/C++/Obj-C code Clang-format is both a library and a stand-alone tool with the goal of automatically reformatting C++ sources files according to configurable style guides. To do so, clang-format uses Clang's Lexer to transform an input file into a token stream and then changes all the whitespace around those tokens. The goal is for clang-format to both serve both as a user tool (ideally with powerful IDE integrations) and part of other refactoring tools, e.g. to do a reformatting of all the lines changed during a renaming. . This package also provides vim and emacs plugins. Package: cpp11-migrate-3.4 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, clang-modernize-3.4 Replaces: cpp11-migrate-3.3 Breaks: cpp11-migrate-3.3 Description: Tool to convert C++98 and C++03 code to C++11 The purpose of the C++11 Migrator is to do source-to-source translation to migrate existing C++ code to use C++11 features to enhance maintainability, readability, runtime performance, and compile-time performance. Development is still early and transforms fall mostly into the first two categories. The migrator is based on Clang's LibTooling and the AST Matching library. . This is a transitional dummy package. It can safely be removed. Package: clang-modernize-3.4 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, clang-3.4 Replaces: cpp11-migrate-3.3, cpp11-migrate-3.4 (<< 1:3.4~svn189984-1) Breaks: cpp11-migrate-3.3, cpp11-migrate-3.4 (<< 1:3.4~svn189984-1) Description: Tool to convert C++98 and C++03 code to C++11 The purpose of the C++11 Migrator is to do source-to-source translation to migrate existing C++ code to use C++11 features to enhance maintainability, readability, runtime performance, and compile-time performance. Development is still early and transforms fall mostly into the first two categories. The migrator is based on Clang's LibTooling and the AST Matching library. Package: clang-3.4-doc Architecture: all Section: doc Depends: ${shlibs:Depends}, ${misc:Depends} Description: C, C++ and Objective-C compiler (LLVM based) - Documentation Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998 and 2001 standards and also provides a partial support of C++1y. . This package contains the documentation. Package: libclang1-3.4 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs} Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same Description: C interface to the clang library Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998 and 2001 standards and also provides a partial support of C++1y. . This package contains the clang library. . The C Interface to Clang provides a relatively small API that exposes facilities for parsing source code into an abstract syntax tree (AST), loading already-parsed ASTs, traversing the AST, associating physical source locations with elements within the AST, and other facilities that support Clang-based development tools. Package: libclang1-3.4-dbg Architecture: any Section: debug Priority: extra Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libclang1-3.4 Description: clang library Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998 and 2001 standards and also provides a partial support of C++1y. . This package contains the debugging symbols. Package: libclang-3.4-dev Architecture: any Section: libdevel Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libclang1-3.4 (= ${binary:Version}), libclang-common-3.4-dev (= ${binary:Version}) Description: clang library - Development package Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998 and 2001 standards and also provides a partial support of C++1y. . This package contains the clang headers to develop extensions over libclang1-3.4. Package: libclang-common-3.4-dev Architecture: any Section: libdevel Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm3.4 (= ${binary:Version}) Replaces: llvm-3.4-dev (<< 1:3.2repack), libclang-3.4-dev Breaks: llvm-3.4-dev (<< 1:3.2repack) Description: clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998 and 2001 standards and also provides a partial support of C++1y. . This package contains the clang generic headers and some libraries (profiling, etc). Package: python-clang-3.4 Section: python Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, python Replaces: python-clang-3.3, python-clang-3.5 Breaks: python-clang-3.3, python-clang-3.5 Description: Clang Python Bindings This binding package provides access to the Clang compiler and libraries. Package: clang-3.4-examples Architecture: any Section: doc Depends: ${shlibs:Depends}, ${misc:Depends} Description: Clang examples Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998 and 2001 standards and also provides a partial support of C++1y. . This package contains the clang examples. # ------------- LLVM ------------- Package: libllvm3.4 Architecture: any Section: libs Depends: ${shlibs:Depends}, ${misc:Depends} Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same Description: Modular compiler and toolchain technologies, runtime library LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . This package contains the LLVM runtime library. Package: libllvm3.4-dbg Architecture: any Section: debug Priority: extra Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm3.4 Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same Description: Modular compiler and toolchain technologies, debugging libraries LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . This package contains the LLVM runtime library debug symbols. Package: llvm-3.4 Architecture: any Suggests: llvm-3.4-doc Depends: llvm-3.4-runtime (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} Recommends: llvm-3.4-dev Conflicts: llvm (<< 2.7-1) Replaces: llvm (<< 2.7-1) Description: Modular compiler and toolchain technologies LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . LLVM uses a single, language-independent virtual instruction set both as an offline code representation (to communicate code between compiler phases and to run-time systems) and as the compiler internal representation (to analyze and transform programs). This persistent code representation allows a common set of sophisticated compiler techniques to be applied at compile-time, link-time, install-time, run-time, or "idle-time" (between program runs). . The strengths of the LLVM infrastructure are its extremely simple design (which makes it easy to understand and use), source-language independence, powerful mid-level optimizer, automated compiler debugging support, extensibility, and its stability and reliability. LLVM is currently being used to host a wide variety of academic research projects and commercial projects. LLVM includes C and C++ front-ends, a front-end for a Forth-like language (Stacker), a young scheme front-end, and Java support is in development. LLVM can generate code for X86, SparcV9, PowerPC or many other architectures. . LLVM is the key component of the clang compiler and the gcc plugin called dragonegg. Package: llvm-3.4-runtime Architecture: any Depends: binfmt-support, ${shlibs:Depends}, ${misc:Depends} Conflicts: llvm (<< 2.7-1) Replaces: llvm (<< 2.7-1) Description: Modular compiler and toolchain technologies, IR interpreter LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . LLVM uses a single, language-independent virtual instruction set both as an offline code representation (to communicate code between compiler phases and to run-time systems) and as the compiler internal representation (to analyze and transform programs). This persistent code representation allows a common set of sophisticated compiler techniques to be applied at compile-time, link-time, install-time, run-time, or "idle-time" (between program runs). . This package provides the minimal required to execute programs in LLVM format. Package: llvm-3.4-dev Architecture: any Depends: ${shlibs:Depends}, libffi-dev (>= 3.0.9), ${misc:Depends}, llvm-3.4 (= ${binary:Version}), libtinfo-dev Replaces: llvm (<< 2.2-3) Description: Modular compiler and toolchain technologies, libraries and headers LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . LLVM uses a single, language-independent virtual instruction set both as an offline code representation (to communicate code between compiler phases and to run-time systems) and as the compiler internal representation (to analyze and transform programs). This persistent code representation allows a common set of sophisticated compiler techniques to be applied at compile-time, link-time, install-time, run-time, or "idle-time" (between program runs). . This package provides the libraries and headers to develop applications using llvm. Package: libllvm-3.4-ocaml-dev Section: ocaml Architecture: any Suggests: llvm-3.4-doc Depends: ${shlibs:Depends}, ${misc:Depends}, ${ocaml:Depends}, llvm-3.4-dev (= ${binary:Version}) Replaces: libllvm-ocaml-3.4-dev Conflicts: libllvm-ocaml-3.4-dev Provides: ${ocaml:Provides} Description: Modular compiler and toolchain technologies, OCaml bindings LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . LLVM uses a single, language-independent virtual instruction set both as an offline code representation (to communicate code between compiler phases and to run-time systems) and as the compiler internal representation (to analyze and transform programs). This persistent code representation allows a common set of sophisticated compiler techniques to be applied at compile-time, link-time, install-time, run-time, or "idle-time" (between program runs). . This package provides the OCaml bindings to develop applications using llvm. Package: llvm-3.4-doc Section: doc Architecture: all Depends: ${misc:Depends}, libjs-jquery, libjs-underscore Description: Modular compiler and toolchain technologies, documentation LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . LLVM uses a single, language-independent virtual instruction set both as an offline code representation (to communicate code between compiler phases and to run-time systems) and as the compiler internal representation (to analyze and transform programs). This persistent code representation allows a common set of sophisticated compiler techniques to be applied at compile-time, link-time, install-time, run-time, or "idle-time" (between program runs). . This package contains all documentation (extensive). Package: llvm-3.4-examples Section: doc Architecture: all Depends: ${misc:Depends}, llvm-3.4-dev (>= ${source:Version}), llvm-3.4-dev (<< ${source:Version}+c~) Description: Modular compiler and toolchain technologies, examples LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other compiler-related programs. . LLVM uses a single, language-independent virtual instruction set both as an offline code representation (to communicate code between compiler phases and to run-time systems) and as the compiler internal representation (to analyze and transform programs). This persistent code representation allows a common set of sophisticated compiler techniques to be applied at compile-time, link-time, install-time, run-time, or "idle-time" (between program runs). . This package contains examples for using LLVM, both in developing extensions to LLVM and in using it to compile code. # ------------- lldb ------------- Package: lldb-3.4 Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 powerpc # ia64 mips mipsel hurd have been removed Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm3.4 (= ${binary:Version}), python, llvm-3.4-dev Pre-Depends: ${misc:Pre-Depends} Replaces: lldb-3.2, lldb-3.3, lldb-3.5 Breaks: lldb-3.2, lldb-3.3, lldb-3.5 Description: Next generation, high-performance debugger LLDB is a next generation, high-performance debugger. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project, such as the Clang expression parser and LLVM disassembler. Package: lldb-3.4-dev Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 powerpc # ia64 mips mipsel hurd have been removed Depends: ${shlibs:Depends}, ${misc:Depends}, lldb-3.4 (= ${binary:Version}) Pre-Depends: ${misc:Pre-Depends} Description: Next generation, high-performance debugger - Header files LLDB is a next generation, high-performance debugger. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project, such as the Clang expression parser and LLVM disassembler. . This package provides the header files to build extension over lldb. debian/pollycc.in0000755000000000000000000000013012245123017011155 0ustar #!/bin/sh clang -Xclang -load -Xclang /usr/lib/llvm-@LLVM_VERSION@/lib/LLVMPolly.so $@ debian/llvm-3.4-runtime.manpages0000644000000000000000000000002612245123017013633 0ustar docs/_build/man/lli* debian/clang-3.4.install0000644000000000000000000000062012245123017012137 0ustar usr/lib/llvm-3.4/bin/clang /usr/bin/ usr/lib/llvm-3.4/bin/clang++ /usr/bin/ usr/lib/llvm-3.4/bin/clang-check /usr/bin/ usr/lib/llvm-3.4/bin/clang-tblgen /usr/bin/ usr/lib/llvm-3.4/bin/c-index-test* usr/bin/c-index-test* tools/clang/tools/scan-build /usr/share/clang/ tools/clang/tools/scan-view /usr/share/clang/ #usr/share/man/man1/clang.1 usr/share/man/man1/ debian/pollycc /usr/bin/ debian/changelog0000644000000000000000000005202712305653673011060 0ustar llvm-toolchain-3.4 (1:3.4-1ubuntu3) trusty; urgency=medium * Backport upstream patch to not try to handle [SU]MUL_LOHI nodes on aarch64, needed to build ghc. -- Colin Watson Wed, 05 Mar 2014 16:58:34 +0000 llvm-toolchain-3.4 (1:3.4-1ubuntu2) trusty; urgency=medium * Unconditionally link lldb with -latomic. -- Matthias Klose Fri, 27 Dec 2013 21:27:38 +0100 llvm-toolchain-3.4 (1:3.4-1ubuntu1) trusty; urgency=medium * Merge with Debian; remaining changes: - Revert to using the static copy of libjsoncpp, since the shared library lacks sane versioning, and this is only a few thousand lines of cargo-culted code from a reasonably stagnant upstream. - Drop lcov build-dep to avoid pulling it into main, due to its being fundamentally incompatibe with our newer GCC versions. - Don't run the lldb tests on armhf (time out on the buildd). - Disable the lldb build for AArch64. - Build-depend on gcc-multilib on amd64 and i386. -- Matthias Klose Fri, 27 Dec 2013 19:39:01 +0100 llvm-toolchain-3.4 (1:3.4-1) unstable; urgency=medium * New upstream release * Remove explicit dep on gcc 4.8 -- Sylvestre Ledru Fri, 20 Dec 2013 18:36:58 +0100 llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu4) trusty; urgency=medium * Rebuild for ocaml-4.01. -- Matthias Klose Mon, 23 Dec 2013 12:11:17 +0000 llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu3) trusty; urgency=low * Bring over Ubuntu changes from 3.3: - Revert to using the static copy of libjsoncpp, since the shared library lacks sane versioning, and this is only a few thousand lines of cargo-culted code from a reasonably stagnant upstream. - Drop lcov build-dep to avoid pulling it into main, due to its being fundamentally incompatibe with our newer GCC versions. -- Matthias Klose Fri, 20 Dec 2013 12:59:01 +0100 llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu2) trusty; urgency=low * Don't run the lldb tests on armhf (time out on the buildd). -- Matthias Klose Wed, 18 Dec 2013 12:29:56 +0100 llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu1) trusty; urgency=low * Disable the lldb build for AArch64. * Build-depend on gcc-multilib on amd64 and i386. -- Matthias Klose Tue, 17 Dec 2013 18:44:50 +0100 llvm-toolchain-3.4 (1:3.4~+rc3-1) unstable; urgency=low * New testing upstream release * Relative call in the chroot without proc failed. See: fix-an-issue-in-chroot-witout-proc.diff * Bring back lldb-link-atomic.diff to make sure lldb builds under powerpc * Also limit the number of archs for liblldb-dev -- Sylvestre Ledru Tue, 17 Dec 2013 11:27:40 +0100 llvm-toolchain-3.4 (1:3.4~+rc2-3) unstable; urgency=low * Fix the bad declaration on the lldb desactivation * Also disable lldb under powerpc * Hopefully, fix lldb under Kfreebsd-* (thanks to Ed Maste if it works) -- Sylvestre Ledru Wed, 04 Dec 2013 23:53:49 +0100 llvm-toolchain-3.4 (1:3.4~+rc2-2) unstable; urgency=low * Add the Ocaml ABI dependency (Closes: #731344) * Disable LLDB also for ia64, mips & mipsel -- Sylvestre Ledru Wed, 04 Dec 2013 15:37:39 +0100 llvm-toolchain-3.4 (1:3.4~+rc2-1) unstable; urgency=low * New testing upstream release * 0047-version-name.diff ocamldoc.diff removed (applied upstream) * r600 is now compiled by default (remove the configure arg) -- Sylvestre Ledru Tue, 03 Dec 2013 10:25:59 +0100 llvm-toolchain-3.4 (1:3.4~+rc1-3) unstable; urgency=low * Remove the usage of --with-c-include-dirs, --with-cxx-include-root, --with-cxx-include-arch and --with-cxx-include-64bit-dir It was blocking the automatic detection of the path of clang. In particular in the context of the usage of -target. However, it does not completely fix the detection of the i386 C++ path. See the next item. (Closes: #729933) * Bring back the path to libstdc++ under i386. Still not fixed upstream (Closes: #730857) * Define also MAXPATHLEN in Path.inc for HURD. * Silent the trillion of warnings in the LLDB Python wrapper (swig generated) See silent-swig-warning.diff * Silent some i386 tests failing (it is expected) See silent-MCJIIT-tests.diff * Make lldb 3.4 also conflict with 3.5 (Closes: #730163) * Make python-clang 3.4 also conflict with 3.5 (Closes: #730164) * Port LLVM to mips64el. Thanks to YunQiang Su. Initially done for 3.3 and ported on the 3.4 (Closes: #730808) * If we get an unexpected pass, do not break the tests do-not-fail-on-unexpected-pass.diff (I am disabling some tests) * Fix the path detection of the objective h headers. * Also add usr/lib/llvm-3.4/lib/clang/3.4/include => usr/lib/clang/3.4/include symlink to simplify the path detection -- Sylvestre Ledru Sun, 01 Dec 2013 17:49:46 +0100 llvm-toolchain-3.4 (1:3.4~+rc1-2) unstable; urgency=low * Force the build to gcc 4.8... gcc 4.6 used on some Debian archs does not support some C++ features. * Fail the build when llvm tests are failing under amd64 + i386. More to come. * Fix a libclang.so.1 issue during the clang tests * Improve the patch 23-strlcpy_strlcat_warning_removed.diff (also remove the tests) * Make lldb 3.4 also conflict with 3.5 (Closes: #730163) * Make python-clang 3.4 also conflict with 3.5 (Closes: #730164) * Remove usr/lib/llvm-3.4/build/autoconf/LICENSE.TXT * silent warning "manpage-has-useless-whatis-entry" in lldb-3.4 * silent warning "package-name-doesnt-match-sonames libclang1" * Refresh patch kfreebsd_v2.diff to, maybe, fix lldb build under kfreebsd. Thanks to Ed Maste for the patch. -- Sylvestre Ledru Tue, 26 Nov 2013 18:32:49 +0100 llvm-toolchain-3.4 (1:3.4~+rc1-1) unstable; urgency=low * New testing upstream release * kfreebsd.diff removed. Applied upstream * Remove patch 0046-Revert-Patch-to-set-is_stmt-a-little-better-for-prol.patch Useless now and missleading * Branch from llvm-toolchain-snapshot * Standards-Version updated to 3.9.5 -- Sylvestre Ledru Wed, 20 Nov 2013 21:24:28 +0100 llvm-toolchain-snapshot (1:3.4~svn194079-1) unstable; urgency=low * New snapshot release * Also install clang 3.4 examples (clang-3.4-examples) (Closes: #728260) * Move c-index-test* from llvm-3.4 => clang-3.4. It was triggering an unnecessary dependency from llvm-3.4 to libclang -- Sylvestre Ledru Fri, 01 Nov 2013 05:19:55 +0100 llvm-toolchain-snapshot (1:3.4~svn193628-1) unstable; urgency=low * New snapshot release - Fix the scan-build warning (Closes: #725332) * Merge changes from the 3.3 branch (see 1:3.3-12) * Add lldb-3.4-dev package * Remove mipsel-ftbfs.diff (applied upstream) * Add support of coverity checker (non-free and not packaged) * libprofile_rt and runtime has been removed upstream (r191835) Features are provided by compiler-rt * Update the build dependency from tcl8.5 to tcl (Closes: #725954) * clang-modernize-3.4 was not coinstallable with clang 3.4 (Closes: #724245) * The package wasn't cleaned correctly (Closes: #722155) * libtinfo-dev is now a dependency of llvm-3.4-dev (Closes: #727129) * Install libclang.so in /usr/lib/*/libclang-3.4.so * Install libclang.so.1 in /usr/lib/*/libclang-3.4.so.1 * Also ship the python clang binding (python-clang-3.4) * Enable polly if the dependencies are OK (only Debian unstable for now) * Bring back /usr/lib/llvm-3.4/lib/libclang.so (libclang-3.4-dev) and /usr/lib/llvm-3.4/lib/libclang.so.1 (libclang1-3.4) * Honor the option "nocheck" * Disable the build of lldb under HURD * Ship the lldb headers into lldb-X.Y-dev (Closes: #723743) I might create a liblldb-X.Y library at some point but I think it is too early. * Update the build dependency from tcl8.5 to tcl (Closes: #725953) * Update of the clang descriptions (Closes: #727684) -- Sylvestre Ledru Tue, 29 Oct 2013 17:56:18 +0100 llvm-toolchain-snapshot (1:3.4~svn190846-1) unstable; urgency=low * New snapshot release * Merge changes from the 3.3 branch (see 1:3.3-9) * Remove ia64-fix.diff (applied upstream) * cpp11-migrate renamed to clang-modernize * lldb-3.4 is back to Architectures: any * Patch lldb-hurd.diff removed (applied upstream) * Directory www/ from tarballs polly & lldb removed * Update of the description of LLVM packages (LLVM no longer mean Low Level Virtual Machine) [ Luca Falavigna ] * debian/control: - Add llvm-3.4-dev to lldb-3.4 Depends field. -- Sylvestre Ledru Thu, 05 Sep 2013 12:04:35 +0200 llvm-toolchain-3.3 (1:3.3-9) unstable; urgency=low [ Luca Falavigna ] * debian/control: - Add llvm-3.3-dev to lldb-3.3 Depends field (Closes: #715129). [ Sylvestre Ledru ] * Only use -fuse-ld=gold on supported distribution. Simplify the backports. * Fix 'bits/c++config.h' file not found under i386 See libstdc++-header-i386.diff. (Closes: #714890) * Add more fixes for the HURD port... (but still fails) [ Robert Millan ] * clang under KfFreeBSD was not exporting the correct defines (Closes: #721880) [ Jon Severinsson ] * Merge from llvm-toolchain-3.2 branch up to 3.2repack-11. * Drop auto-generated file debian/libllvm3.3.install. * Automatically determine GCC_VERSION and dep:devlibs based on g++ package version. * Automatically determine if -fuse-ld=gold is supported based on binutils package version. [ Adam Conrad ] * debian/patches/lldb-link-atomic.diff: Link lldb with -latomic to get builtin GCC atomic helpers on arches (like powerpc) that need them. -- Sylvestre Ledru Mon, 26 Aug 2013 14:48:42 +0200 llvm-toolchain-3.3 (1:3.3-8) unstable; urgency=low [ Sylvestre Ledru ] * Fix another issues under HURD... [ Luca Falavigna ] * debian/patches/libprofile_rt_sparc.patch: - Re-enable libprofile_rt on Sparc, fix FTBFS. -- Sylvestre Ledru Fri, 23 Aug 2013 15:02:05 +0200 llvm-toolchain-3.3 (1:3.3-7) unstable; urgency=low * debhelper version 9.20130720 fails on the call to dh_auto_clean Remove it. It was anyway useless. -- Sylvestre Ledru Thu, 22 Aug 2013 14:28:25 +0200 llvm-toolchain-3.3 (1:3.3-6) unstable; urgency=low * Fix the FTBFS under hurd and KFreeBSD * Do not remove all *.o in tests. Some of them are from upstream source tarball. Thanks to Maarten Lankhorst for the fix. * Fix the lintian error 'lldb-3.3: postinst-must-call-ldconfig' * Add the manpages of clang-format-3.3 * Overrides the manpages warnings * Also apply unwind-chain-inclusion.diff from the snapshot branch to make sure we can build the package locally even if libclang-dev is installed -- Sylvestre Ledru Thu, 22 Aug 2013 09:01:04 +0200 llvm-toolchain-3.3 (1:3.3-5) unstable; urgency=low * Install llvm-c headers also in usr/include/llvm-3.3/llvm-c * Fix the FTBFS under mips & mipsel * Refresh of the kfreebsd i386 patch -- Sylvestre Ledru Wed, 07 Aug 2013 13:12:23 +0200 llvm-toolchain-3.3 (1:3.3-4) unstable; urgency=low * Use the static library libjsoncpp.a instead of the ship library in polly -- Sylvestre Ledru Sun, 11 Aug 2013 09:54:17 +0200 llvm-toolchain-snapshot (1:3.4~svn185325-1) unstable; urgency=low * binutils-gold no longer exists. Use -fuse-ld=gold instead. -- Sylvestre Ledru Thu, 01 Aug 2013 14:06:38 +0200 llvm-toolchain-snapshot (1:3.3-2) unstable; urgency=low * Fix warning python-script-but-no-python-dep on clang-format-X.Y * manpages are generated during build time (simplifies maintenance) * Fix duplicate underscore.js and jquery.js * Move libjs-jquery & libjs-underscore dependencies to llvm-X.Y-doc * Add lldb-X.Y manpage * Hopefully fix the ftbfs under mipsel (mipsel-ftbfs.diff) * Disable the usage of binutils-gold under armel. It currently fails with: "attempt to map 2752512 bytes at offset 2066666 exceeds size of file; the file may be corrupt" [ Léo Cavaillé ] * Add patch to find correctly LLVMGold.so with -O4 (Closes: #712437) -- Sylvestre Ledru Thu, 20 Jun 2013 15:39:11 +0200 llvm-toolchain-snapshot (1:3.4~svn184294-1~exp1) experimental; urgency=low * New snapshot release * Improve some scripts and fix cpp11-migrate install from clang-tools-extra. * Fix "versionless" clang manpages install. * Fix Toolchain patch from change of scope (add namespaces). -- Sylvestre Ledru Wed, 19 Jun 2013 14:20:12 +0200 llvm-toolchain-snapshot (1:3.4~svn183914-1) unstable; urgency=low * New snapshot release * Upload to unstable (will be blocked by a RC bug) * Sync changes from llvm-toolchain-3.3: - Introduce cpp11-migrate-3.4 and clang-format-3.4 - Install the vim llvm script at the right place -- Sylvestre Ledru Thu, 13 Jun 2013 18:47:08 +0200 llvm-toolchain-snapshot (1:3.4~svn182733-1~exp1) experimental; urgency=low * New snapshot release (3.4 release) * Add a symlink of libLLVM-3.4.so.1 to usr/lib/llvm-3.4/lib/libLLVM-3.4.so to fix make the llvm-config-3.4 --libdir work (Closes: #708677) * Various packages rename to allow co installations: * libclang1 => libclang1-3.4 * libclang1-dbg => libclang1-3.4-dbg * libclang-dev => libclang-3.4-dev * libclang-common-dev => libclang-common-3.4-dev -- Sylvestre Ledru Mon, 27 May 2013 15:01:57 +0200 llvm-toolchain-snapshot (1:3.3~svn179851-1~exp1) experimental; urgency=low * Draft of a snapshot release (3.3) * Enable r600 experimental backend * Improve the dependencies: * clang-3.3 depends on the exact same libllvm3.3 release * idem for lldb-3.3 -- Sylvestre Ledru Fri, 19 Apr 2013 09:31:38 +0200 llvm-toolchain-3.2 (1:3.2repack-11) unstable; urgency=low * dh_auto_clean removed, just like in the 3.3 * Use the static library libjsoncpp.a instead of shipping library in polly Backport of the modification of 3.3 [ Adam Conrad ] * Revive deltas from the previous Ubuntu versions of llvm and clang: - debian/patches/35-ubuntu-releases.diff: Add UbuntuSaucy to table. - debian/patches/JITEmitter.patch: Fix a segfault in the exception table of the JIT code emitter (See Launchpad bug #1160587) [ Luca Falavigna ] * debian/patches/libprofile_rt_sparc.patch: - Re-enable libprofile_rt on Sparc, fix FTBFS. -- Sylvestre Ledru Fri, 23 Aug 2013 11:49:09 +0200 llvm-toolchain-3.2 (1:3.2repack-10) unstable; urgency=low * Fix the wrong package declaration on libstdc++-4.8-dev (Closes: #713944) -- Sylvestre Ledru Mon, 24 Jun 2013 23:00:47 +0200 llvm-toolchain-3.2 (1:3.2repack-9) unstable; urgency=low * Switch to libstdc++ 4.8 instead of 4.7 for the headers (Closes: #712520) * Depends against libobjc-4.8-dev and libgcc-4.8-dev * Disable the usage of binutils-gold under armel. It currently fails with: "attempt to map 2752512 bytes at offset 2066666 exceeds size of file; the file may be corrupt" * Add DEBUGMAKE=1 to get information about compiler-rt compilation * Fix "libclang-common-dev: missing-depends-line" -- Sylvestre Ledru Sat, 22 Jun 2013 07:38:41 +0200 llvm-toolchain-3.2 (1:3.2repack-8) unstable; urgency=low * Fix the build under ia64. Thanks to Luca Falavigna for the patch (ia64-fix.diff) * Disable lldb-3.2: - the quality is not good enough - We have lldb-3.3 now in the archive - Too many backported patches would be necessary for lldb-3.2 to work - It blocks some important transitions (mesa) * Add the detection of Ubuntu saucy -- Sylvestre Ledru Mon, 03 Jun 2013 11:32:29 +0200 llvm-toolchain-3.2 (1:3.2repack-7) unstable; urgency=low * For now, enable only lldb for amd64 and i386 (blocks too many things) (Bis) (Closes: #707866) * Add a symlink of libLLVM-3.2.so.1 to usr/lib/llvm-3.2/lib/libLLVM-3.2.so to fix make the llvm-config-3.2 --libdir work (Closes: #708677) -- Sylvestre Ledru Mon, 27 May 2013 13:20:30 +0200 llvm-toolchain-3.2 (1:3.2repack-6) unstable; urgency=low * Create the compiler-rt directory to make the install of compiler-rt works -- Sylvestre Ledru Sat, 18 May 2013 18:08:52 +0200 llvm-toolchain-3.2 (1:3.2repack-5) unstable; urgency=low * For now, enable only lldb for amd64 and i386 (blocks too many things) -- Sylvestre Ledru Sat, 18 May 2013 10:24:04 +0200 llvm-toolchain-3.2 (1:3.2repack-4) unstable; urgency=low * Add several patches which, hopefully, will fix the build under ARM, S390, S390X, etc (lldb-apple_only.diff, lldb-user-remove.diff & lldb-hurd.diff) * Include sys/wait.h also under kfreebsd (kfreebsd-thread.diff) -- Sylvestre Ledru Wed, 15 May 2013 12:04:24 +0200 llvm-toolchain-3.2 (1:3.2repack-3) unstable; urgency=low * Before the configure, show which version of CC is being used. * Add support of kfreebsd and hurd in lldb (kfreebsd-hurd-lldb.diff) * Force the usage of gcc 4.7 for all archs. Should fix some FTBFS (Closes: #707866) * Fix the symlink on clang++.1.gz llvm-clang.1.gz (Closes: #707832) [ Jon Severinsson ] * Re-enable the r600 backend and update it to the mesa-9.1.1 tag. (Closes: #708009) -- Sylvestre Ledru Tue, 14 May 2013 12:10:07 +0200 llvm-toolchain-3.2 (1:3.2repack-2) unstable; urgency=low * Do not depend on libobjc-4.7-dev & libgcc-4.7-dev. They are still only in experimental * Disable the usage of binutils-gold under [powerpc powerpcspe ppc64 sparc sparc64] to fix FTBFS -- Sylvestre Ledru Tue, 07 May 2013 13:15:20 +0200 llvm-toolchain-3.2 (1:3.2repack-1) unstable; urgency=low * Upload to unstable * Standards-Version update to 3.9.4 * clang pure virtual function call crash with binaries built with C++11's std::thread. Upstream commit 178816 (Closes: #705838) * Introduce a symbols file for libclang1 (Closes: #705672) -- Sylvestre Ledru Sun, 21 Apr 2013 14:06:23 +0200 llvm-toolchain-3.2 (1:3.2repack-1~exp4) experimental; urgency=low * Build using binutls-gold to improve the quality of the binaries. See: http://allievi.sssup.it/techblog/?p=791 * Detect the vendor (Debian or Ubuntu) and update the configuration * Port to powerpcspe. Thanks to Roland Stigge (Closes: #701587) See: 31-powerpcspe.diff * Fix the path detection of scan-build (Closes: #698352) See: 32-scan-build-path.diff * debian/patches/r600-snapshot.diff: Move backports into individual patches. * debian/patches/r600-snapshot.diff: Update to mesa-9.1 git tag. (Closes: #703671, #697356) * Fix a typo in the detection of the vendor [ Peter Michael Green ] * Use binutils-gold only on architectures where it is actually available * 33-armhf-defaults.diff Fix defaults to use correct CPU and FPU for debian armhf (Closes: #704111) * 34-powerpc-no-altivec.diff disable altivec by default on powerpc because debian powerpc does not require altivec (patch cherry picked from ubuntu) -- Sylvestre Ledru Thu, 14 Mar 2013 17:47:12 +0100 llvm-toolchain-3.2 (1:3.2repack-1~exp3) experimental; urgency=low * Remove package "clang". It is now provided by llvm-defaults. * Fix some issues relative to the epoch change * Fix a wrong path in the _lldb.so Python symlink * Install cmake files to build LLVM extensions (Closes: #701153) * Remove the embedded copy of libjs-jquery (Closes: #701087) * Fix the install of lli manpage (Closes: #697117) -- Sylvestre Ledru Sun, 17 Feb 2013 12:05:15 +0100 llvm-toolchain-3.2 (1:3.2repack-1~exp2) experimental; urgency=low * Install the python files for lldb. Thanks to Daniel Malea for spotting this. * Update of the clean target * Introduce an epoch to match the changes in bug #699899 -- Sylvestre Ledru Wed, 13 Feb 2013 12:22:30 +0100 llvm-toolchain-3.2 (3.2repack-1~exp1) experimental; urgency=low * Build the whole LLVM toolchain at once. This includes: - LLVM - Clang - compiler-rt - lldb - polly * Also install clang-check & clang-tblgen in the clang-3.2 package * Fix the patch detection of clang from scan-build (Closes: #698352) * debian/patches/0050-powerpcspe-fp.diff: Add, hopefully fix FTBFS on powerpcspe, by disabling save / restore of floating point registers which don't exist on powerpcspe. Thanks to Roland Stigge for the patch. (Closes: #696474) * libLLVM-3.2.so.1 is now shipped only once (Closes: #696913) * Enable RTTI (Closes: #697754) * Introduce lldb as a new package (Closes: #698601) * Add a script pollycc which will call clang with the right arguments. * Use __builtin___clear_cache on ARM to fix a clang bug. Thanks to Matthias Klose. -- Sylvestre Ledru Sat, 09 Feb 2013 12:14:10 +0100 debian/libclang1-3.4.lintian-overrides0000644000000000000000000000015112245123017014676 0ustar # I know and I am not planning to change that. libclang1-3.4: package-name-doesnt-match-sonames libclang1debian/clang-3.4.manpages0000644000000000000000000000023112245123017012262 0ustar build-llvm/tools/clang/docs/tools/clang.1 clang/tools/scan-build/scan-build.1 debian/man/clang-check.1 debian/man/clang-tblgen.1 debian/man/scan-view.1 debian/libllvm-3.4-ocaml-dev.install.in0000644000000000000000000000022512245123017014767 0ustar debian/tmp/@OCAML_STDLIB_DIR@/llvm-3.4 @OCAML_STDLIB_DIR@/ debian/tmp//usr/lib/llvm-3.4/docs/llvm/ocamldoc/html usr/share/doc/libllvm-3.4-ocaml-dev/ debian/clang-format-3.4.install0000644000000000000000000000042312245123017013426 0ustar clang/tools/clang-format/clang-format-3.4.py usr/share/vim/addons/syntax/ clang/tools/clang-format/clang-format-diff-3.4 /usr/bin/ clang/tools/clang-format/clang-format.el usr/share/emacs/site-lisp/clang-format-3.4/ usr/bin/clang-format-3.4 usr/lib/llvm-3.4/bin/clang-format