summaryrefslogtreecommitdiffstats
path: root/src/engine
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' into topic/grossag/msvsWilliam Deegan2019-07-1910-138/+211
|\
| * msvs host-target fix + vs19 supportMats Wichmann2019-07-153-40/+63
| | | | | | | | | | | | | | | | | | This patch combines several bits of work - PR #3391 and the discussion/patch in Issue #3346 to improve the support of Visual Studio 2019. VS 2019 is now a recognized version, and the selection of that version specifically should be working. Signed-off-by: Mats Wichmann <mats@linux.com>
| * Merge branch 'fix_slow_md5_decider' of github.com:bdbaddog/scons into ↵William Deegan2019-07-144-9/+41
| |\ | | | | | | | | | fix_slow_md5_decider
| | * Merge branch 'master' into fix_slow_md5_deciderWilliam Deegan2019-07-144-9/+41
| | |\
| | | * Allow builders to inherit from OverrideEnvironmentsMathew Robinson2019-07-092-1/+25
| | | |
| * | | [ci skip] Fix spelling picked up by siderWilliam Deegan2019-07-141-1/+1
| |/ /
| * | Fix docstrings and comments for repo node changesWilliam Deegan2019-07-141-6/+8
| | |
| * | Doc updates for repo_node addition to Decider function argsWilliam Deegan2019-07-141-1/+12
| | |
| * | Add missing repo_node argument to _changed_source()William Deegan2019-07-091-3/+3
| | |
| * | Clean up __slots__ specification to be list, remove some obsoleted codeWilliam Deegan2019-07-091-4/+2
| | |
| * | Fix __slots = ('single element') -> ('single element',) per finding by mwichmannWilliam Deegan2019-07-051-3/+3
| | |
| * | remove unnecessary DeciderNeedsNode exceptionWilliam Deegan2019-07-051-15/+0
| | |
| * | Fix _add_strings_to_dependency_map() perf degredationWilliam Deegan2019-06-281-2/+1
| | |
| * | Restore MD5-Timestamp performance by removing try/except from every call. ↵William Deegan2019-06-264-65/+96
| | | | | | | | | | | | Also some optimized logic for updating and using the dependency_map built as part of the decider. Fixed tests. Note Deciders now need a fourth argument 'repo_node' which is the repository node for the file if it's to be used. This is currently only used by md5-timestamp decider File.changed_timestamp_then_content()
| * | Remove join and list comprehension when not needed in Action.get_content(). ↵bdbaddog2019-06-251-1/+1
| | | | | | | | | | | | Yields some speedup.
* | | [ci skip] MSVS doc fix and output of rerunning doc generationAdam Gross2019-07-191-2/+2
| | |
* | | [ci skip] Updated CHANGES.txt and msvs.xml documentationAdam Gross2019-07-191-3/+35
| | |
* | | Integrate requested changes to msvsTests.pyAdam Gross2019-07-191-5/+10
| | | | | | | | | | | | This change integrates changes requested by @bdbaddog to avoid using SCons.Script.Dir
* | | Fix msvs testsAdam Gross2019-07-181-2/+20
| | |
* | | Fix issues raised in code reviewAdam Gross2019-07-172-34/+72
| | |
* | | Upgrade and improve Visual Studio solution/project generation codeAdam Gross2019-07-172-56/+174
| |/ |/| | | | | | | | | | | | | | | | | This change improves the Visual Studio solution and project generation code in the following ways: 1. Adds support for Visual Studio 2019 and 2017 project files. In this part, I went a different direction than the existing VS2015 code by doing all of this in the V10 class. I have found this to be the easiest way to continue to add support for new versions of Visual Studio; for example, VS2019 support was a 4-line change after the initial changes. 2. Adds support for consumers to specify C++ include paths and C++ preprocessor definitions to be included in the .vcxproj file. This helps Intellisense function better. (Tests included for this part as well, including one to cover an issue pickling Dir() objects when writing miscellaneous CPPPATH info to the .vcxproj file) 3. Adds <VCProjectUpgraderObjectName> to the project file so we are not prompted to upgrade. This helps the case where a developer has a new version of Visual Studio installed and generates projects for that, while the underlying SCons build uses an older toolset. 4. Excludes .filters files from dspfile processing. 5. Adds a test to cover VS2015 support.
* | LaTeX scanner: Remove obsolete commentLukas Schrangl2019-07-031-7/+0
| | | | | | | | | | The comment referred to the "old" regular expression that would only find the last include in each line.
* | LaTeX scanner: Find > 1 includes per lineLukas Schrangl2019-07-022-1/+16
|/ | | | | | | | "^[^%\n]*" at the beginning of the reg ex would match all but the last include so that they were lost. There is no point checking for "%" since comments are stripped anyways, so just remove that part. Also add test case for multiple includes per line.
* Fix sider warningWilliam Deegan2019-06-201-1/+1
|
* Allow MSVCUnsupportedTargetArch and MSVCUnsupportedHostArch exceptions to ↵William Deegan2019-06-202-1/+4
| | | | propagate and cause SCons to exit
* Switch back to None with proper comparison using is instead of notWilliam Deegan2019-06-191-4/+4
|
* Switch from testing for directory value being false to -1 as "" evaluates to ↵William Deegan2019-06-191-4/+9
| | | | false
* Fix conflictWilliam Deegan2019-06-181-5/+0
|
* Added tests to logic changes by mhqtronic PR #3375William Deegan2019-06-182-17/+205
|
* Merge pull request #3383 from chasinglogic/action-hides-exceptionsWilliam Deegan2019-06-132-3/+21
|\ | | | | Don't hide exceptions when command does not exist
| * Don't hide exceptions when command does not existMathew Robinson2019-06-102-3/+21
| |
* | Use more idiomatic PythonMats Wichmann2019-06-061-3/+3
|/ | | | | | | | Minor: replace an instance of "for i in range(len(foo))" with the now preferred "for i in foo". This change didn't naturally fit with any of the other instances of this usage, so is submitted by itself. Signed-off-by: Mats Wichmann <mats@linux.com>
* PY38: Fix invalid escape chars in compare stringWilliam Deegan2019-05-301-26/+27
|
* PY38: Fix invalid escape chars in compare stringWilliam Deegan2019-05-301-4/+4
|
* PY38: Resolve duplicate creation of 'work' subdir which yielded warnings. ↵William Deegan2019-05-301-1/+3
| | | | Also improve exception handling message in test.subdir()
* PEP8 fileWilliam Deegan2019-05-301-326/+374
|
* Merge pull request #3367 from mwichmann/docs-parse_flagsWilliam Deegan2019-05-281-10/+12
|\ | | | | Update docs for parse_flags keywords
| * Update docs for parse_flags keywordsMats Wichmann2019-05-141-10/+12
| | | | | | | | | | | | | | | | | | The somewhat poorly named parse_flags keyword args actually work like the MergeFlags method - don't just split like the ParseFlags method, but do the merging as well. Tweak the docs and add a reference to env.MergeFlags. Signed-off-by: Mats Wichmann <mats@linux.com>
* | Add cache hit rate to cache debuggingMathew Robinson2019-05-171-0/+14
| |
* | Add __main__.py to MANIFEST.inDaniel Holth2019-05-141-0/+1
|/
* Fix some regexes for Python 3.8 complaintsMats Wichmann2019-05-133-3/+3
| | | | | | | | | | | Regexes that contained unescaped backslashes and were not listed in raw string form caused one more test failure when Python 3.8 was experimentally turned on in the Travis CI build. Also one utility script had the same, not affecting tests - found through inspection. Signed-off-by: Mats Wichmann <mats@linux.com>
* [PR #3363] doc update for added flagsMats Wichmann2019-05-041-0/+3
| | | | | | Needed a doc regen to pick up the change. Signed-off-by: Mats Wichmann <mats@linux.com>
* Add -iquote and -idirafter for CCFLAGSMats Wichmann2019-05-022-8/+22
| | | | | | | | | | | Recognize two additional GNU compiler header directory search options: -iquote and -idirafter. Each takes a following arg, which scons now recognizes and adds together with the option to CCFLAGS. Note that (similar to -isystem which was added in git commit f8614aa2), this does not tell scons anything special, it only recognizes the flag + argument so it can be passed on to the compiler. Signed-off-by: Mats Wichmann <mats@linux.com>
* Fix a small error in docbook toolMats Wichmann2019-04-301-1/+1
| | | | | | | The routine used in the builder if lxml is being used had a doubled write command likely to produce unexpected results. Signed-off-by: Mats Wichmann <mats@linux.com>
* Fix misplaced file closingMats Wichmann2019-04-281-2/+7
| | | | | | | | | One file close ended up in the wrong method, meaning it was closing a file which needed to stay open for further reading, while another method of the same name in a different class was missing one. (this didn't trigger any test fails, hmmm, just visual inspection) Signed-off-by: Mats Wichmann <mats@linux.com>
* Merge pull request #3353 from mwichmann/cacheDirWilliam Deegan2019-04-281-13/+75
|\ | | | | [WIP] Avoid cachedir races
| * [PR #3353] fix sider nitpickeryMats Wichmann2019-04-281-4/+4
| | | | | | | | | | | | | | | | sider complained about spelling in a comment after I updated the comment so it got to look at those lines as part of the change. Fix those. Signed-off-by: Mats Wichmann <mats@linux.com>
| * [PR #3353] tweaks per reviewMats Wichmann2019-04-281-10/+9
| | | | | | | | | | | | | | | | | | Simplify the Py2 check for an existing-but-old cachedir by using any and a generator expression. Move an import to module scope. Signed-off-by: Mats Wichmann <mats@linux.com>
| * [PR #3353] quiet sider complaint about bare except:Mats Wichmann2019-04-281-2/+2
| | | | | | | | Signed-off-by: Mats Wichmann <mats@linux.com>
| * Avoid cachedir racesMats Wichmann2019-04-281-6/+69
| | | | | | | | | | | | | | | | | | 1. Add a Py3-only version of the cachedir config read, using exclusive open to avoid races. 2. In the Py2-only version, add the hack from issue #3351 to dodge one source of races. Signed-off-by: Mats Wichmann <mats@linux.com>