summaryrefslogtreecommitdiffstats
path: root/clang/tools/ccc/ccclib
Commit message (Collapse)AuthorAgeFilesLines
...
* ccc: Support running piped jobs (-pipe now works).Daniel Dunbar2009-01-172-3/+27
| | | | llvm-svn: 62396
* ccc: Don't be pedantically compatible with -Z options, these are theDaniel Dunbar2009-01-173-90/+85
| | | | | | result of an internal implementation detail of gcc. llvm-svn: 62389
* ccc: Clean up (user level) error handling.Daniel Dunbar2009-01-163-28/+45
| | | | | | | | - ccc now checks for existence of input files (more annoying to test, but matches gcc). - Fix some test cases. llvm-svn: 62378
* ccc: Fix thinko, add gross but effective test of translation for Darwin/X86/cc1.Daniel Dunbar2009-01-161-1/+1
| | | | llvm-svn: 62360
* ccc: Darwin/X86: gcc compatibility, only addDaniel Dunbar2009-01-162-2/+4
| | | | | | '-feliminate-unused-debug-symbols' in reponse to '-g' (not '-g*'). llvm-svn: 62357
* ccc: Darwin/X86: Implement remainder of (non -Z...) generic argumentDaniel Dunbar2009-01-163-4/+43
| | | | | | | | | | translation. - As is my general strategy, this is initially pedantically compatible with gcc and can be cleaned up later. So, for example, we still pass -static to collect2 4 times if you say '-mkernel -fapple-kext'. ;) llvm-svn: 62353
* ccc: Implement support clang PTH using gcc PCH style interface.Daniel Dunbar2009-01-143-8/+46
| | | | | | | | | | | | | | | | | | | This requires some hackery, as gcc's PCH mechanism changes behavior, whereas while PTH is simply a cache. Notably: - Automatically cause clang to load a .pth file if we find one that matches a command line -include argument (similar to how gcc looks for .gch files). - When generating precompiled headers, translate the suffix from .gch to .pth (so we do not conflict with actual gcc PCH files). - When generating precompiled headers, copy the input header to the same location as the output PTH file. This is necessary because gcc supports -include xxx.h even if xxx.h doesn't exist, but for clang we need to actually have the contents of this file available. llvm-svn: 62246
* ccc: Finish main clang compiler argument translation.Daniel Dunbar2009-01-142-22/+60
| | | | | | | | | - Still missing some odds and ends like -M. - Also, we still need to do some translation and forwarding of codegen options. llvm-svn: 62241
* ccc: Darwin/Compiler: Improve gcc compat in use of -auxbase-strip.Daniel Dunbar2009-01-141-10/+10
| | | | llvm-svn: 62213
* ccc: Implement argument translation for clang.Daniel Dunbar2009-01-142-7/+53
| | | | | | | | - This is what ccc (old) currently handles. - Clang accepts some more things that aren't getting forwarded... llvm-svn: 62210
* ccc: Add -ccc-echo special option, and support pulling CCC_CLANG,Daniel Dunbar2009-01-141-0/+23
| | | | | | CCC_ECHO, and CCC_FALLBACK from environment as ccc (old) did. llvm-svn: 62207
* ccc: Use Clang/Compile for Objective-C files as well.Daniel Dunbar2009-01-141-1/+2
| | | | llvm-svn: 62206
* ccc: Add dummy Clang/Compile tool and use on Darwin/X86 for C files.Daniel Dunbar2009-01-144-4/+37
| | | | llvm-svn: 62204
* ccc: Darwin/Compile: Define __private_extern__ when building c++.Daniel Dunbar2009-01-141-0/+11
| | | | llvm-svn: 62200
* ccc: Darwin: Implement some important general argument translationsDaniel Dunbar2009-01-134-17/+60
| | | | | | | | for the Darwin tool chain. - Ideally we would localize these to tool specific argument processing but for now this matches gcc closely. llvm-svn: 62181
* ccc: Allow internal tool chain specific argument translation.Daniel Dunbar2009-01-134-65/+86
| | | | | | | | | | - Pulled -Xarch processing into this. - Get rid of manual creation of forwarding arg array. - Use Darwin/CC1 instead of generic GCC cc1 on X86. llvm-svn: 62172
* ccc: Bug fix, '-f...' should be part of the '-f' group.Daniel Dunbar2009-01-131-1/+2
| | | | llvm-svn: 62157
* ccc: Darwin/Link also runs dsymutil in one very particular situation.Daniel Dunbar2009-01-132-4/+13
| | | | llvm-svn: 62154
* ccc: Bug fix and gcc compatibility tweak.Daniel Dunbar2009-01-132-7/+22
| | | | | | | | | | - --gstabs only goes to Darwin/Assembler when dealing with an assembly file from the command line. - Relative placement of -o option for cc1 moves depending on -fsyntax-only/-S, how quaint. llvm-svn: 62152
* ccc: Add option groups.Daniel Dunbar2009-01-132-60/+106
| | | | | | | | | | - Simple mechanism for group together sets of options so the driver can efficiently deal with them as a group (i.e., for forwarding -i* to cc1). - Use to finish off the major missing pieces of Darwin/CC1 support. llvm-svn: 62149
* ccc: Darwin/CC1: Hardcode (for now) some -m options to match gcc.Daniel Dunbar2009-01-131-4/+19
| | | | llvm-svn: 62146
* ccc: Allow host to over-ride default arch based on command lineDaniel Dunbar2009-01-132-7/+15
| | | | | | arguments (e.g., -m32 and -m64). llvm-svn: 62145
* ccc: Darwin/CC1: Be bug compatible with gcc in a corner case.Daniel Dunbar2009-01-131-4/+5
| | | | llvm-svn: 62131
* ccc: Bug fix, output can be NULL.Daniel Dunbar2009-01-121-1/+1
| | | | llvm-svn: 62108
* ccc: Even more Darwin/cc1 argument translation support.Daniel Dunbar2009-01-122-24/+39
| | | | llvm-svn: 62105
* ccc: Add leading space in -### output to match gcc.Daniel Dunbar2009-01-121-3/+3
| | | | llvm-svn: 62097
* ccc: (Darwin) More argument translation for Darwin/Compile tool.Daniel Dunbar2009-01-123-10/+57
| | | | llvm-svn: 62093
* ccc: (Darwin) More argument translation for Darwin/Compile tool.Daniel Dunbar2009-01-122-18/+98
| | | | llvm-svn: 62089
* ccc: (Darwin) Start implementing argument translation forDaniel Dunbar2009-01-123-18/+214
| | | | | | Darwin/Compile tool. llvm-svn: 62085
* ccc: When constructing a named output, only use base name (not fullDaniel Dunbar2009-01-121-1/+1
| | | | | | path). llvm-svn: 62083
* ccc: (Darwin) Move path resolution into ToolChain.Daniel Dunbar2009-01-122-25/+30
| | | | llvm-svn: 62082
* ccc: Implement the rest of Darwin/Assembler argument translation.Daniel Dunbar2009-01-122-3/+39
| | | | llvm-svn: 62081
* ccc: Implement macosx-version-min conditions (including a bug fix).Daniel Dunbar2009-01-121-12/+20
| | | | llvm-svn: 62079
* ccc: Generalize Darwin/Link tool based on Darwin version.Daniel Dunbar2009-01-124-22/+58
| | | | llvm-svn: 62078
* ccc: Support arguments which behave like linker inputs.Daniel Dunbar2009-01-123-23/+80
| | | | | | | | | | | | | | | - Support comma joined options which magically turn into multiple value arguments (e.g., -Wl,) - Split out separate Arg::render routine for when an argument is being rendered as an input (as opposed to in its original form). - Add option flag for options which should be rendered without the option when they are used as an input (e.g., -Xlinker or -o). - Support -weak-l..., -weak_framework, and -weak_library. llvm-svn: 62075
* ccc: (Darwin) Pass -ObjC to linker if -ObjC, -ObjC++ or -fobjc isDaniel Dunbar2009-01-122-8/+12
| | | | | | present. llvm-svn: 62070
* ccc: Add fairly complete argument translation for Darwin link step.Daniel Dunbar2009-01-114-37/+416
| | | | | | | | | | | - Some things are still hardcoded, and macosx-version-min comparison isn't implemented, but otherwise this very closely matches gcc. - The one exception is that arguments (like -framework or -Wl,) which are treated as linker inputs instead of options are not being forwarded yet. llvm-svn: 62059
* ccc: Add several convenience methods for argument translation.Daniel Dunbar2009-01-111-0/+29
| | | | llvm-svn: 62057
* ccc: Add and name a host of arguments.Daniel Dunbar2009-01-111-31/+125
| | | | | | | | | | | | - Also, fix bug in MultipleValuesOption which was accepting joined arguments. - Add ArgList::getArgs, provides iterator over all arg instances for a given option. - Option definition is very much in need of cleaning... llvm-svn: 62054
* ccc: Give the Host an opportunity to switch ToolChains when bindingDaniel Dunbar2009-01-112-6/+21
| | | | | | archs (as a driver driver). llvm-svn: 62053
* ccc: Print -### output on stderr to match gcc.Daniel Dunbar2009-01-111-3/+7
| | | | llvm-svn: 62052
* ccc: Introduce ToolChains for mapping Actions to Tools which canDaniel Dunbar2009-01-103-18/+68
| | | | | | | | | | | | | | | perform them. - A ToolChain is a coherent set of tools use in a compilation process. The idea is that a ToolChain holds roughly the information (specs, search paths, etc.) that is in a single gcc binary. - The default ToolChain is selected by the host and will generally correspond to what the default system compiler would do. However, this can be over-riden for a variety of purposes, for example the by the driver driver or for testing. llvm-svn: 62021
* ccc: Add generic assembler & linker tools which effectively shell outDaniel Dunbar2009-01-101-15/+43
| | | | | | to gcc. llvm-svn: 62020
* ccc: Add information about whether type can be user specified (a -xDaniel Dunbar2009-01-101-23/+45
| | | | | | argument) to InputType. llvm-svn: 62019
* ccc: Get host information via Driver methods.Daniel Dunbar2009-01-093-19/+48
| | | | llvm-svn: 62011
* ccc: Start defining host information.Daniel Dunbar2009-01-092-11/+97
| | | | | | | | | - For use by the driver in places where the host alters driver behavior (for example, running as a driver driver on darwin). - Allow user override for testing purposes. llvm-svn: 61967
* ccc: Make proper synthetic arguments in places we have to constructDaniel Dunbar2009-01-073-54/+35
| | | | | | | "fake" options, allowing Tools to be oblivious to whether an argument is real or synthetic. This kills off DerivedArg & a number of FIXMEs. llvm-svn: 61871
* ccc: Change Command to take list of strings for argv instead of ArgDaniel Dunbar2009-01-073-57/+55
| | | | | | | instances; this just complicated things and doesn't seem to provide any benefit. llvm-svn: 61869
* ccc: Extend ArgList to support indexing into a synthetic arg arrayDaniel Dunbar2009-01-071-3/+28
| | | | | | (for killing off DerivedArg). llvm-svn: 61846
* ccc: Refactor so that all accesses to actual input strings go throughDaniel Dunbar2009-01-074-23/+25
| | | | | | the ArgList. llvm-svn: 61844
OpenPOWER on IntegriCloud