summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Driver.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix cmake for r136702 (at least for the most part). Chandler has been kind Chad Rosier2011-08-021-2/+2
| | | | | | | enough to offer to investigate the underlying issue. Thanks to Doug for his assistance as well. llvm-svn: 136719
* Temporarily revert parts of r136702 to make cmake builds happy.Chad Rosier2011-08-021-2/+2
| | | | | | Someone with more cmake experience want to throw me a bone? :) llvm-svn: 136709
* When the compiler crashes, the compiler driver now produces diagnostic Chad Rosier2011-08-021-9/+65
| | | | | | | | | information including the fully preprocessed source file(s) and command line arguments. The developer is asked to attach this diagnostic information to a bug report. rdar://9575623 llvm-svn: 136702
* The -fapple-kext flag was designed to "do the right thing" for building code forChad Rosier2011-07-271-28/+56
| | | | | | | | | | | use in KEXTs. However, users/Xcode still need to tweak the linker flags to do the right thing, and end up using -Xlinker, for example. Instead, have the driver "do the right thing" when linking when -fapple-kext is present on the command line, and we should have Xcode use -fapple-kext instead of setting other flags like -Xlinker -kext or -nodefaultlibs. rdar://7809940 llvm-svn: 136294
* Move ArrayRef to LLVM.h and eliminate now-redundant qualifiers, patch by Jon ↵Chris Lattner2011-07-231-2/+2
| | | | | | Mulder! llvm-svn: 135855
* remove unneeded llvm:: namespace qualifiers on some core types now that ↵Chris Lattner2011-07-231-16/+16
| | | | | | | | LLVM.h imports them into the clang namespace. llvm-svn: 135852
* Temporarily revert r135614 while I fix the cmake build.Chad Rosier2011-07-201-65/+9
| | | | llvm-svn: 135621
* When the compiler crashes, the compiler driver now produces diagnostic ↵Chad Rosier2011-07-201-9/+65
| | | | | | | | | information including the fully preprocessed source file(s) and command line arguments. The developer is asked to attach this diagnostic information to a bug report. llvm-svn: 135614
* Correctly handle sysroot prefix in -print-search-dirs. Makes libtoolJoerg Sonnenberger2011-07-161-1/+10
| | | | | | more happy on NetBSD. llvm-svn: 135344
* Prevent the -save-temps flag from modifying the input file if the input filenameChad Rosier2011-07-151-0/+9
| | | | | | | conflicts with a to be produced temp filename. rdar://9724657 llvm-svn: 135308
* Driver: Factor out IsUsingLTO helper function.Daniel Dunbar2011-06-211-7/+14
| | | | llvm-svn: 133542
* Identifiers with _CapitalLetter are reserved, so don't use them. Prefer theNick Lewycky2011-06-041-7/+7
| | | | | | | common C++ pattern of using the same name for the constructor argument as you do for the member. Noticed by inspection. llvm-svn: 132626
* A StringRef-ication of the DiagnosticIDs API and internals.Argyrios Kyrtzidis2011-05-251-3/+4
| | | | | | | | | Patch by Matthieu Monrocq with tweaks by me to avoid StringRefs in the static diagnostic data structures, which resulted in a huge global-var-init function. Depends on llvm commit r132046. llvm-svn: 132047
* Rename ContainsCompileAction to ContainsCompileOrAssembleAction toJoerg Sonnenberger2011-05-061-5/+5
| | | | | | properly reflect its behavior. llvm-svn: 130981
* Driver: Suppress some additional warnings with -Qunused-arguments.Daniel Dunbar2011-04-201-0/+4
| | | | llvm-svn: 129853
* Driver: Support -fno-lto.Daniel Dunbar2011-04-181-1/+2
| | | | llvm-svn: 129712
* refactor -ccc-gcc-name codeDylan Noblesmith2011-04-091-15/+1
| | | | | | | | | | | | Put the logic for deciding the default name for gcc/g++ in the only place that actually cares about it. This also pushes an ifdef out of the generic driver code to a little further down, when the target is actually known. Hopefully it can be changed into just a runtime check in the future. llvm-svn: 129212
* Driver: Sketch driver support for a CC_LOG_DIAGNOSTICS options, similar to theDaniel Dunbar2011-04-071-4/+6
| | | | | | | existing CC_PRINT_OPTIONS and CC_PRINT_HEADERS, which can be used to transparently capture the compiler diagnostics from a build. llvm-svn: 129082
* Move Driver::createInvocationFromArgs function to Frontend library to avoid ↵Argyrios Kyrtzidis2011-04-041-70/+0
| | | | | | | | dependency cycle between libFrontend and libDriver. llvm-svn: 128852
* Introduce Driver::createInvocationFromArgs used to create a ↵Argyrios Kyrtzidis2011-04-041-0/+70
| | | | | | CompilerInvocation from command-line args. llvm-svn: 128848
* Driver/Darwin: Dsymutil actions should put the dSYM adjacent to the output file.Daniel Dunbar2011-03-251-1/+7
| | | | llvm-svn: 128292
* switch a few Driver APIs to use llvm::ArrayRef, cleaning up code.Chris Lattner2011-03-231-7/+5
| | | | llvm-svn: 128142
* Memorize presence/absence of -nostdlib in Driver.Joerg Sonnenberger2011-03-211-2/+4
| | | | | | | Drop program paths on NetBSD (unused). Only include lib dir, if -nostdlib is absent. Use = to allow --sysroot to work. llvm-svn: 127995
* Remember sysroot in Driver. Pass it down to ld for NetBSD, FreeBSDJoerg Sonnenberger2011-03-211-2/+14
| | | | | | | and DragonFly. Use the --sysroot= form for Linux. Fix handling of = prefix for -B. llvm-svn: 127994
* Driver: Give SelectTool access to the action inputs.Daniel Dunbar2011-03-181-2/+3
| | | | llvm-svn: 127902
* On !Darwin, do use the integrated as with -static.Rafael Espindola2011-03-181-1/+3
| | | | llvm-svn: 127879
* Use C as fallback type if in C preprocessor mode.Joerg Sonnenberger2011-03-161-4/+9
| | | | llvm-svn: 127769
* Redo part of r127137:Joerg Sonnenberger2011-03-071-5/+5
| | | | | | | | Pass down the correct C->getArgs, but keep it with the original DerivedArgList type. Slightly adjust the MakeIndex call for the different base type. This unbreaks the handling of --no-mangle on Darwin. llvm-svn: 127142
* Explicitly initialize CCCIsCPPJoerg Sonnenberger2011-03-071-2/+2
| | | | llvm-svn: 127139
* If called as *cpp or *cpp-[^-]*, run only the preprocessor. If noJoerg Sonnenberger2011-03-061-6/+16
| | | | | | | input is specified, use stdin implicitly. Based on a patch from Roman Divacky. llvm-svn: 127137
* Normalize target triple passed out of driver. Basically this meansAnton Korobeynikov2011-03-051-1/+1
| | | | | | | | that at cc1 level we will always have normalized triple and thus can provide necessary default based on e.g. environment value (e.g. for "arm-eabi" triple, etc.) llvm-svn: 127087
* Triple::MinGW64 is deprecated and removed. We can use Triple::MinGW32 instead.NAKAMURA Takumi2011-02-171-1/+0
| | | | | | No one uses *-mingw64. mingw-w64 is represented as {i686|x86_64}-w64-mingw32. llvm-svn: 125742
* Allow multiple -B prefixes. Patch by Joerg Sonnenberger.Benjamin Kramer2011-02-081-6/+12
| | | | llvm-svn: 125111
* Moved here from LLVM Clang's configuration options and related macros.Oscar Fuentes2011-02-031-0/+4
| | | | llvm-svn: 124825
* clang: Add support for a CC_PRINT_HEADERS environment variable, which mirrorsDaniel Dunbar2011-02-021-2/+3
| | | | | | | CC_PRINT_OPTIONS and can be used to get some out-of-band information on header usage from a build. llvm-svn: 124751
* Add NetBSD target support. Patch by Joerg Sonnenberger.Benjamin Kramer2011-02-021-0/+2
| | | | llvm-svn: 124736
* Driver: Change -dumpversion to return a GCC compatible answer.Daniel Dunbar2011-01-121-1/+7
| | | | | | - See comment for why. llvm-svn: 123296
* Replace all uses of PathV1::exists with PathV2::fs::exists.Michael J. Spencer2011-01-101-4/+10
| | | | llvm-svn: 123150
* Replace all uses of PathV1::get{Basename,Dirname,Suffix} with their PathV2 ↵Michael J. Spencer2010-12-181-12/+7
| | | | | | equivalents. llvm-svn: 122140
* Replace all uses of PathV1::getLast with PathV2::filename.Michael J. Spencer2010-12-181-5/+5
| | | | llvm-svn: 122117
* Going back to the drawing board with these two awful hacks.Eric Christopher2010-12-171-4/+1
| | | | llvm-svn: 122096
* Fix spelling.Michael J. Spencer2010-12-171-1/+1
| | | | llvm-svn: 122088
* Replace all uses of PathV1::isAbsolute with PathV2::is_{absolute,relative}.Michael J. Spencer2010-12-171-4/+6
| | | | llvm-svn: 122087
* Horrible hack for systems that use -dumpversion with clang to expect versionsEric Christopher2010-12-171-1/+4
| | | | | | that match gcc versions. Eew. llvm-svn: 122080
* Driver: M and MM should be grouped together, <rdar://problem/8744831>.Daniel Dunbar2010-12-081-3/+2
| | | | llvm-svn: 121284
* Merge System into Support.Michael J. Spencer2010-11-291-2/+2
| | | | llvm-svn: 120297
* Use hasErrorOccurred() instead of getNumErrors() where it makes sense.Argyrios Kyrtzidis2010-11-181-2/+2
| | | | llvm-svn: 119746
* Refactoring of Diagnostic class.Argyrios Kyrtzidis2010-11-181-1/+1
| | | | | | | | | | | -Move the stuff of Diagnostic related to creating/querying diagnostic IDs into a new DiagnosticIDs class. -DiagnosticIDs can be shared among multiple Diagnostics for multiple translation units. -The rest of the state in Diagnostic object is considered related and tied to one translation unit. -Have Diagnostic point to the SourceManager that is related with. Diagnostic can now accept just a SourceLocation instead of a FullSourceLoc. -Reflect the changes to various interfaces. llvm-svn: 119730
* Implement -working-directory.Argyrios Kyrtzidis2010-11-031-4/+13
| | | | | | | | | | | | | | | | | | | When -working-directory is passed in command line, file paths are resolved relative to the specified directory. This helps both when using libclang (where we can't require the user to actually change the working directory) and to help reproduce test cases when the reproduction work comes along. --FileSystemOptions is introduced which controls how file system operations are performed (currently it just contains the working directory value if set). --FileSystemOptions are passed around to various interfaces that perform file operations. --Opening & reading the content of files should be done only through FileManager. This is useful in general since file operations will be abstracted in the future for the reproduction mechanism. FileSystemOptions is independent of FileManager so that we can have multiple translation units sharing the same FileManager but with different FileSystemOptions. Addresses rdar://8583824. llvm-svn: 118203
* Use CLANG_RESOURCE_DIR define if one is provided, otherwise use the default ofChandler Carruth2010-10-191-4/+9
| | | | | | | | '../lib/clang/<version>'. Actually use '..' rather than removing the trailing component to correctly handle paths containing '.' or symlinks in the presence of -no-canonical-prefixes, etc. This shouldn't change any existing behavior. llvm-svn: 116803
OpenPOWER on IntegriCloud