aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Support/CommandLine.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add PrintVersionMessage() that tools can use to print version numberDevang Patel2007-02-011-3/+11
| | | | | | | without exiting program. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33737 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't use <sstream> in Streams.h but <iosfwd> instead.Bill Wendling2006-12-071-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32340 91177308-0d34-0410-b5e6-96231b3b80d8
* Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling2006-12-071-47/+47
| | | | | | | now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
* Removed #include <iostream> and replace with llvm_* streams.Bill Wendling2006-11-261-34/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31927 91177308-0d34-0410-b5e6-96231b3b80d8
* avoid a ctor/dtor issue with the ProgramName global.Chris Lattner2006-10-131-3/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30925 91177308-0d34-0410-b5e6-96231b3b80d8
* shrink anon-ns and mark stuff static. No functionality changesChris Lattner2006-10-121-10/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30922 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix more static dtor issuesChris Lattner2006-10-041-58/+46
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30725 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor code cleanupsChris Lattner2006-08-271-11/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29917 91177308-0d34-0410-b5e6-96231b3b80d8
* Add external definitions for commonly-used template specializations and addChris Lattner2006-08-271-7/+28
| | | | | | | | | anchor methods to others. This eliminates the vtable/template method bloat in .o files that defining a cl::opt used to impose (~4K per .o file for one cp::opt<unsigned>). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29909 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the ProgramName variable a std::string so we can eliminate the pathReid Spencer2006-08-231-26/+14
| | | | | | | | | | | | | | | portion fo the program name via sys::Path().getLast(). This makes error messages more readable since this is invariably used only in error messages. Instead of: /path/to/llvm/bin/directory/toolname: error message we will now get: toolname: error message Also, since we always have a program name (even if its defaulted), don't check to see if it is set or not when generating error messages. This eliminates a bunch of constant strings, saving a little under 1K of data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29842 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR797:Reid Spencer2006-08-211-1/+1
| | | | | | | | | Make sys::Program::ExecuteAndWait not throw exceptions and update any affected code. It now return -9999 to signal that the program couldn't be executed. Only one case (in bugpoint) actually examines the result code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29785 91177308-0d34-0410-b5e6-96231b3b80d8
* If the Program name was NULL then all further output sent to std::cerr wasJim Laskey2006-08-021-1/+3
| | | | | | | suppressed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29477 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an out-of-line virtual method to provide a home for the cl::option class.Chris Lattner2006-07-181-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29191 91177308-0d34-0410-b5e6-96231b3b80d8
* Print LLVM version info like this:Chris Lattner2006-07-061-5/+13
| | | | | | | | | | | | | | | Low Level Virtual Machine (http://llvm.org/): llvm version 1.8cvs DEBUG build with assertions. instead of like this: Low Level Virtual Machine (llvm) 1.8cvs (see http://llvm.org/) ASSERTIONS ENABLED Also, add a place for vendor version info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29020 91177308-0d34-0410-b5e6-96231b3b80d8
* Make it possible to override the standard version printer. Not all toolsReid Spencer2006-06-051-18/+29
| | | | | | | | | | built with CommandLine.h will want the --version option to report that the tool belongs to LLVM. To override simply pass a void func() to the cl::SetVersionPrinter() function and that void func() will be called when it is time to print the version information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28687 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR743: emit -help output of a tool to cout, not cerr.Chris Lattner2006-04-281-20/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28010 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for programs with a null argv[0]Chris Lattner2006-01-171-10/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25379 91177308-0d34-0410-b5e6-96231b3b80d8
* MERRY CHRISTMAS EVERYONE!!! (what better way to spend christmas thanDuraid Madina2005-12-261-0/+1
| | | | | | | | to try building LLVM on HP-UX! (the Right Way seems to be to tear out the ancient STL that HP ship and use http://incubator.apache.org/stdcxx/ ) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25012 91177308-0d34-0410-b5e6-96231b3b80d8
* indicate when a tool is a debug build.Chris Lattner2005-11-161-1/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24374 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow tools with "consume after" options (like lli) to take more positionalChris Lattner2005-08-081-4/+1
| | | | | | | | opts than they take directly. Thanks to John C for pointing this problem out to me! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22717 91177308-0d34-0410-b5e6-96231b3b80d8
* Reject command lines that have too many positional arguments passed (e.g.,Chris Lattner2005-08-081-1/+15
| | | | | | | | | 'opt x y'). This fixes PR493. Patch contributed by Owen Anderson! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22705 91177308-0d34-0410-b5e6-96231b3b80d8
* CapitalizeChris Lattner2005-05-131-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21964 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not use "" as a sentinal for a missing argument! This fixes PR560.Chris Lattner2005-05-101-11/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21850 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-211-38/+38
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21422 91177308-0d34-0410-b5e6-96231b3b80d8
* Work around GCC PR19958, which causes programs to sometimes crash afterChris Lattner2005-02-141-0/+2
| | | | | | | printing help output or version info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20180 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement and document prefix options with arbitrary values including anReid Spencer2004-11-241-1/+1
| | | | | | | | = sign. This needed to support -DNAME=value options as pass-through in llvmc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18203 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed assertion from triggering. We need to check if the commandline map is ↵Tanya Lattner2004-11-201-0/+2
| | | | | | empty before checking if an arg exists. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18057 91177308-0d34-0410-b5e6-96231b3b80d8
* Patches to avoid "leaking" memory on process exit. Patch contributed byChris Lattner2004-11-191-39/+25
| | | | | | | Morten Ofstad! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17998 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a comment to some code that at first glance just doesn't look right.Reid Spencer2004-11-161-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17886 91177308-0d34-0410-b5e6-96231b3b80d8
* Per code review:Reid Spencer2004-11-161-5/+24
| | | | | | | *Implement/Document the cl::extrahelp feature instead of the MoreHelp ptr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17871 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the MoreHelp utility that calls a function to printmore help ↵Reid Spencer2004-11-141-0/+10
| | | | | | information if the MoreHelp global is not null. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17774 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace uses of llvm.org with llvm.cs.uiuc.eduMisha Brukman2004-11-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17549 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes For Bug 352Reid Spencer2004-09-011-2/+2
| | | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
* Make CommandLine prefix error output with the name of the program.Reid Spencer2004-09-011-13/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16129 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow any cl::opt to use the method getPosition() to retrieve the option'sReid Spencer2004-08-131-19/+32
| | | | | | | | | | | | | | absolute position on the command line. Similarly allow any cl::list to use the method getPosition(n) to retrieve the absolute position of the nth option in the list. This provides support for two things: (a) options like -l that are actually positional and their order of occurrence matters when they are intermixed with positional arguments like "a.o"; and (b) options like -x LANG which affect only the positional arguments that come after the option. In both cases, knowing the absolute position of a given option helps. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15725 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a --version option for every tool that prints out:Reid Spencer2004-08-041-1/+18
| | | | | | | Low Level Virtual Machine ($PACKAGE_NAME) $PACKAGE_VERSION git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15454 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a workaround for a GCC 3.3.2 bugChris Lattner2004-07-181-1/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14976 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix compilation on internixChris Lattner2004-07-031-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14588 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the new cl::PositionalEatsArgs flag, refactor code a bitChris Lattner2004-05-061-52/+65
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13388 91177308-0d34-0410-b5e6-96231b3b80d8
* Hide variable from other functions.Alkis Evlogimenos2004-03-041-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12118 91177308-0d34-0410-b5e6-96231b3b80d8
* Finegrainify namespacificationChris Lattner2003-12-141-4/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10464 91177308-0d34-0410-b5e6-96231b3b80d8
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | | Header files will be on the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
* Change to use strtoul instead of strtoll.Brian Gaeke2003-10-101-2/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9010 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing apostrophe. It's been bugging me for years.Brian Gaeke2003-09-161-1/+1
| | | | | | | No really, years. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8566 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed spelling & grammar.Misha Brukman2003-09-161-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8559 91177308-0d34-0410-b5e6-96231b3b80d8
* lib/Support/CommandLine.cpp:Brian Gaeke2003-08-151-46/+51
| | | | | | | | | | | | | | | | | | Many changes suggested by Chris. It's okay, I'll recover from the emotional damage...maybe someday. :-) Collapse ParseCStringVector into ParseStringVector. Comment it. Make it take a const input. Use std::string::npos instead of -1 (what a mouthful!) Make ParseEnvironmentOptions take const inputs. Check its args at the very beginning. Strdup all the contents of newArgv and free them all at the end. include/Support/CommandLine.h: Constify progName and envVar arguments to ParseEnvironmentOptions(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7905 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for reading command line arguments from an environment variable.Brian Gaeke2003-08-141-0/+74
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7851 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for "named positional arguments"Chris Lattner2003-07-301-15/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7421 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed grammatical error.Misha Brukman2003-07-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7160 91177308-0d34-0410-b5e6-96231b3b80d8