summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)Author
2018-11-12tools/build_configs.py: update compiler-related option namesRichard Braun
Commit a18a9d0cc0232dc151cef3d2d61807182ef7f6ea renamed options related to the compiler, but the configuration checking script was not updated with the new names. Fix that now.
2018-08-14tools/build_configs.py: generate the test set dynamicallyRichard Braun
2018-07-30tools/gen_symtab.py: fix input parsingRichard Braun
2018-07-30tools/gen_symtab.py: put symbol names in the symbol table sectionRichard Braun
GCC apparently reserves memory for all symbol names in the .rodata section which meant adding symbol names would reuse those without changing the size of the .rodata section. That's not the case with Clang.
2018-07-10x86: add portable architecture-specific qemu make targetRichard Braun
This target makes running QEMU simpler on non-x86 hosts.
2018-06-26Add support for an embedded symbol tableRichard Braun
2018-05-07test/test_atomic: new moduleRichard Braun
2018-04-19tools/build_configs.py: augment the small setRichard Braun
Add CONFIG_CC_EXE and CONFIG_64BITS to the small (default) set of options to test since they are among the most important options a developer should mechanically check when using the tool.
2018-04-14tools/qemu.sh: only pass x15 as the kernel argument to QEMURichard Braun
This makes reading the command line easier in the kernel log.
2018-04-08tools/qemu.sh: remove GRUB dependencyRichard Braun
This change makes QEMU directly boot the kernel, using the -kernel option.
2018-04-01tools/build_configs.py: add bulletin testRichard Braun
2018-03-05tools/build_configs.py: fix filteringRichard Braun
2018-03-05tools/build_configs.py: style fixesRichard Braun
2018-02-24tools/build_configs.py: add TODO entry, style fixesRichard Braun
2018-02-24tools/build_configs.py: fix -l optionRichard Braun
2018-02-24tools/build_configs.py: break python2 compatibilityRichard Braun
2018-02-24tools/build_configs.py: improve pep8 and pylint complianceGabriel Ganne
pep8 fixes: * remove whitespaces in dict declarations (E203 whitespace before ':') * two blank lines between functions (E302 expected 2 blank lines, found 1) * no spaces in set function arguments (E251 unexpected spaces around keyword / parameter equals) pylint fixes: * rename some variables to fix some redefined-outer-name warnings passing <- passing_filters_list blocking <- blocking_filters_list * explicit config file name (invalid-name warning) * fix many map/filter deprecated-lambda warnings [1] eg. for values as below, replace map/lambda by comprehension as follow # values = [1, 2, 3] # doubles = map(lambda x: x * 2, values) # doubles = [x * 2 for x in values] * un-name some unused variables with '_' to silence unused-variable eg. # for used_val_1, used_val_2 in my_list: # ... # for used_val_1, _ in my_list: [1] https://docs.quantifiedcode.com/python-anti-patterns/readability/using_map_or_filter_where_list_comprehension_is_possible.html
2018-02-24tools/build_configs.py: add python3 compatibilityGabriel Ganne
* dict.itervalues() and dict.iteritems() have been removed from python3 use dict.values(), and dict.items() instead. * both map and filter return values have changed to return a different type of structure in some cases. Enforce a list as return value. * prefer list.append() to l1 + l2 syntax * use the new print function syntax. add the print_function from future for python2 compatibility * use str.format() to read integers directly instead of concatenating their string conversion
2018-02-24Don't use reserved identifiersRichard Braun
2018-02-20kern/llsync: remove moduleRichard Braun
2018-02-12tools/build_configs.py: implement passing filtersRichard Braun
Reduce the complexity of generating exclusive boolean filters, in which only one option can be enabled, by supporting passing filters, filtering out configurations which do not match the filter.
2018-02-12tools/build_configs.py: add a set of test optionsRichard Braun
Commit e9a983d84583065a68c591571b5afd3c589a923e discusses scalability issues with regard to building the tests, but at that time, only the large set was considered. This change adds a set of test options which is built on top of the small set of options.
2018-01-05kconfig: workaround for GNU/HurdRichard Braun
2017-10-31Rename CONFIG_MULTIPROCESSOR to CONFIG_SMPRichard Braun
Machine-independent code assumes SMP, and the name is shorter.
2017-09-28tools/build_configs.py: remove TODO entry about test modulesRichard Braun
The script can't scale in view of the very high number of combinations. Keep it to test the most common ones, but not for the test modules.
2017-09-28tools/build_configs.py: make the builds verboseRichard Braun
2017-09-28tools/build_configs.py: minor improvementsRichard Braun
Add a few function descriptions, use formats to generate strings instead of concatenation, replace some for statements with functional constructs.
2017-09-27tools/build_configs.py: fix filters about the number of CPUsRichard Braun
2017-09-27tools/build_configs.py: update the small and large options setsRichard Braun
2017-09-27tools/build_configs.py: minor help message changeRichard Braun
2017-09-27tools/build_configs.py: fix quoting of integer valuesRichard Braun
2017-09-27tools/build_configs.py: fix exclusive boolean filter generationRichard Braun
2017-09-27tools/build_configs: rework and improveRichard Braun
The most important change is the addition of command line arguments used to select options sets. The purpose of options sets selection is to make continuous integration quick for the most common options, but still have a way to test much larger sets of options, e.g. with nightly builds.
2017-09-25tools/build_configs: new scriptRichard Braun
This script is used to handle the generation and build test of a large number of configurations.
2017-09-25Fix generation of .config filesRichard Braun
The .config file now contains options which are prefixed with CONFIG_.
2017-09-21New build systemRichard Braun
The new build system, called xbuild, is a minimalistic kbuild-like make-based build system, also using kconfig for scalable configurations.
2017-09-21Import kconfig from Linux 4.13Richard Braun
2017-09-21Remove autotools filesRichard Braun
2017-07-29tools/tsort_init_ops.sh: mention that the script is part of the build systemRichard Braun
2017-07-26tools/tsort_init_ops.sh: new scriptRichard Braun
This script retrieves all initialization operation dependencies, taking all build options into account, and attempts a topological sort, failing in case loops are detected. It's automatically run by the build system as a dependency of the kernel binary.
2017-04-29Fix custom autoconf macro synopsis formatRichard Braun
2017-04-29Add license notice for the custom autoconf macrosRichard Braun
2017-04-29Rename custom autoconf macros from ax_check_xxx to ax_prog_xxxRichard Braun
With those names, the macros better conform with those found in the Autoconf Archive.
2017-04-29Replace unneeded tab characters in MakefilesRichard Braun
This is done according to the style policy which states that "Tabulation characters are strictly forbidden in source files, and should only be used in Makefiles where absolutely required".
2017-04-06tools/qemu.sh: reduce default memory sizeRichard Braun
2017-04-03tools/qemu.sh: reduce default number of vcpusRichard Braun
2017-03-26doc: use highlight for source code highlightingRichard Braun
2017-03-23Make the build system handle Asciidoc documentationRichard Braun
Asciidoc was selected because of its text-based lightweight markup nature, its extensibility and configurability, and the range of available output formats. Most importantly, it's an acceptable way to write Unix man pages and guides. Despite the surprising lack of pre-existing autotools support, it was quite easy to implement correctly.
2017-03-14configure.ac: disable PIE if enabled by defaultRichard Braun
In order to append the required flags only if they are supported by the compiler, import a set of m4 macros from autoconf-archive.
2017-03-13Include a script for testing with QEMURichard Braun