aboutsummaryrefslogtreecommitdiff
path: root/utils
Commit message (Collapse)AuthorAgeFilesLines
* Utils: Upgrade instruo to work with paludis 0.74.1André Aparício2012-07-084-61/+48
|
* Utils: add debug-print-functionMu Qiao2012-05-261-0/+4
|
* Builtin: handle __export_funcs_var in inheritMu Qiao2012-05-261-1/+1
|
* Utils: handle RDEPEND for metadata generationMu Qiao2012-05-261-0/+6
|
* Build: install public headersMu Qiao2011-08-032-2/+2
| | | | We need to put all public headers into the include directory.
* Utility: add isolated functions for instruoMu Qiao2011-08-021-1/+2
|
* Parser: fix builtin/keyword testMu Qiao2011-07-201-15/+15
| | | | Now more tests are uncommented or added.
* Parser: remove global backtrackingMu Qiao2011-07-201-15/+15
| | | | | | | Now several tests are not working: var_expansion.bash, isolated_functions.bash, compound_command.bash, test_expr.bash, test/ast_printer_test.sh, and test/verify_bashs_test.sh. We will fix them in later commits.
* Build: use bash to verify test scriptsMu Qiao2011-07-181-0/+63
| | | | | We keep the old style for some tests that behave differently depending on different bash versions.
* Merge remote branch 'betelgeuse/multithread' into multithreadingMu Qiao2011-07-051-60/+52
|\ | | | | | | | | | | | | | | Conflicts: src/builtins/source_builtin.cpp src/core/bash_ast.cpp src/core/bash_ast.h utils/instruo.cpp
| * multithreadPetteri Räty2011-05-181-48/+51
| |
* | Utility: improve token printingMu Qiao2011-06-261-4/+26
| | | | | | | | | | Now the ast_printer -t will print out the tokens if the file can be lexed properly (previously it required the file to be parsed properly).
* | Walker: make arithmetic expansion follow POSIXMu Qiao2011-06-261-1/+1
| | | | | | | | | | | | | | POSIX requires signed long integer for arithmetic expansion. $? is implemented in the interpreter class now because POSIX doesn't require the type of $? to be long. It would cause conversion in many places if we used long for $?.
* | Merge remote-tracking branch 'mu/fix_arithmetic'Petteri Räty2011-06-251-7/+33
|\ \
| * | Utility: support printing tokens received by walkerMu Qiao2011-06-221-7/+33
| | | | | | | | | | | | | | | It's helpful if ast_printer can print tokens received by walker grammar. Now this is supported with the -w option.
* | | Core: add more exceptionsMu Qiao2011-06-221-1/+1
|/ / | | | | | | | | We don't want to use only one exception everywhere. Now more exceptions are added to improve the exception hierarchy.
* | Merge remote-tracking branch 'mu/bash_options' into reviewPetteri Räty2011-06-161-1/+1
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: bashast/libbashWalker.g src/core/interpreter.cpp src/core/tests/interpreter_test.cpp
| * | Core: first support for bash optionsMu Qiao2011-06-131-1/+1
| | | | | | | | | | | | | | | This commit is intended to support $- so no method for changing bash options is added.
* | | Core: add namespace for interpreter_exceptionMu Qiao2011-06-143-3/+3
|/ / | | | | | | | | The interpreter_exception is part of our public API so we put it under libbash namespace.
* | Utility: fix error countingMu Qiao2011-06-091-1/+1
| | | | | | | | diff may return value that is greater than 1. Now this is fixed.
* | Test: add test for Portage functionsMu Qiao2011-06-091-1/+10
| |
* | Utility: fix some Portage functionsMu Qiao2011-06-091-9/+10
| |
* | Core: make error handling POSIX compliantMu Qiao2011-06-032-35/+41
| | | | | | | | | | | | For a non-interactive shell, an error condition encountered by a special built-in or other type of utility shall cause the shell to write a diagnostic message to standard error and exit.
* | Core: fix header orderingMu Qiao2011-06-031-2/+2
| | | | | | | | | | | | We want every header file to be compilable on its own. The easiest way to achieve this is to make sure that every one of them is the first .h file #included in some .cpp.
* | Coding standard: git log for author informationMu Qiao2011-06-024-4/+0
| | | | | | | | | | The author information can be found from git so just refer people from that.
* | Utility: add more portage functionsMu Qiao2011-06-011-0/+32
| |
* | Utility: print total time for metadata generationMu Qiao2011-06-011-2/+2
| | | | | | | | diff errors are redirected to $outputdir/error_output.
* | Utility: fix the order of INHERITEDMu Qiao2011-06-011-0/+5
| | | | | | | | Portage requires INHERITED values to be sorted. Now this is fixed.
* | Core: support special variable $0Mu Qiao2011-05-241-1/+1
| |
* | Utility: support misc functions for instruoMu Qiao2011-05-232-1/+23
| | | | | | | | "has", "hasq" and "die" are supported for instruo.
* | Walker: support special variable $*Mu Qiao2011-05-231-1/+1
| |
* | Utility: add a script for metadata correctness statisticMu Qiao2011-05-231-0/+36
| |
* | Utility: removed unused meta_gen.shMu Qiao2011-05-231-24/+0
| | | | | | | | | | | | As we already have an implementation of instruo so meta_gen.sh is not needed any more. The target is not useful as we can simply run instruo rather than make metadata_generation.
* | Utility: ignore exceptions that we can't handleMu Qiao2011-05-231-0/+12
|/ | | | | | Our implementation is not complete so some exceptions occur. We'll ignore them for now and will look into them in future. The return exception is modified to provide more information.
* Core&Utility: return non zero exit status on failureMu Qiao2011-05-131-21/+31
| | | | | The public API, ast_printer and bash_ast are refactored to return non zero exit status on failure.
* Utils: reimplement instruo with libbashMu Qiao2011-05-086-82/+547
| | | | | | With the help of instruo from Paludis, we can setup variables to bash env needed for metadata generation. In the meanwhile, we can compare the original instruo utility with our implementation.
* Builtin: implement inherit builtinMu Qiao2011-04-281-11/+29
| | | | | metadata_generator is improved to make use of the information added by inherit builtin.
* Core: use reference/pointer for the interpreter objectMu Qiao2011-04-281-8/+8
| | | | | | We don't share interpreter object and it's safer to use reference rather than shared_ptr. Raw pointer is used in the generated C source code.
* Merge remote-tracking branch 'mu/compound_expr'Petteri Räty2011-04-271-1/+7
|\
| * Walker: support for each loopMu Qiao2011-04-251-1/+7
| | | | | | | | | | Syntax like "for x in blah" is supported now. Empty value used as $@ is not supported for now. Add support for $? variable.
* | Utility: write a script that generates ebuild metadataMu Qiao2011-04-261-0/+24
| |
* | Utility: improve the output format of metadata_generatorMu Qiao2011-04-261-1/+16
| | | | | | | | | | The metadata_generator now generates the same format as what Portage does.
* | Core: support DEFINED_PHASES for metadata generationMu Qiao2011-04-262-6/+44
|/ | | | | | We need to retrieve names of defined functions in order to generate DEFINED_PHASES. The public API is modified a bit to support it. A custom test is added for metadata generation.
* Utility: implement a simple metadata generatorMu Qiao2011-04-201-0/+56
| | | | Use static linking to avoid confusion with libtool while benchmark.
* Build: separate utility programs from testsMu Qiao2011-04-202-0/+238