aboutsummaryrefslogtreecommitdiff
path: root/libbuild2
AgeCommit message (Collapse)AuthorFilesLines
2020-01-31Use -l representation of library names in pkg-config files for MSVCBoris Kolpackov1-5/+38
Passing it as foo.lib triggers some (brain-dead) fragmentation logic in libpkgconf. Also, a C library built with MSVC can be used in MinGW (and vice versa) and so this is also a step in supporting that.
2020-01-31Tag installed library targets with linker pathBoris Kolpackov3-24/+34
This makes sure we get different targets for different toolchains.
2020-01-30Swap order of matching command stdout and stderr by testscript runnerKaren Arutyunov1-2/+6
2020-01-29Rename module_base to module, redo module boot/init argument passingBoris Kolpackov23-209/+168
2020-01-28Use scope::var_pool()Boris Kolpackov17-215/+213
2020-01-28Use scope::insert_rule()Boris Kolpackov8-70/+50
2020-01-27Add missing symbol export declarationsBoris Kolpackov1-2/+2
2020-01-27See through lib{} group during distBoris Kolpackov4-5/+21
2020-01-27Protect cc guess cache with mutexBoris Kolpackov1-1/+12
2020-01-27Improve module loading APIBoris Kolpackov16-113/+125
2020-01-27Improve process run_*() APIBoris Kolpackov11-66/+138
2020-01-27Add scope::{insert_rule,var_pool}() convenience functionsBoris Kolpackov1-2/+32
2020-01-27Add corner case check in const.{c,cxx} array splittingBoris Kolpackov1-8/+11
2020-01-27Fix typoBoris Kolpackov1-1/+1
2020-01-27Minor cleanupBoris Kolpackov1-15/+1
2020-01-24Don't pass dependency library non-export loptions to linkerKaren Arutyunov1-2/+10
2019-11-29Fix bundled git running other git as a child on WindowsKaren Arutyunov1-9/+50
2019-11-29Add sanity checkBoris Kolpackov1-1/+1
2019-11-29Reorder {cc,c/cxx}.{poptions,loptions}Boris Kolpackov5-12/+23
Now it is c/cxx first followed by cc which is the reverse order of coptions since the header/library search paths are examined in the order specified (in contrast to the "last value wins" semantics that we assume for coptions).
2019-11-26Rename executable's .lib/.exp to avoid clashes with librariesBoris Kolpackov2-32/+44
Failed that we cannot have an executable and a library with the same name and in the same directory (their .lib's will clash).
2019-11-22Filter out config.install.chroot from default host configurationBoris Kolpackov1-1/+7
2019-11-21Change version to 0.13.0-a.0.zBoris Kolpackov1-1/+1
2019-11-19Release version 0.12.0v0.12.0Boris Kolpackov1-1/+1
2019-11-18Add couple of sanity checksBoris Kolpackov4-6/+14
2019-11-16Revert temporary use of c++17 mode in GCC modules supportBoris Kolpackov1-4/+0
2019-11-16Handle dry-run mode in backlinking implementationBoris Kolpackov2-12/+27
2019-11-15Use path_name_view in location and path_name_value in location_valueKaren Arutyunov10-35/+125
2019-11-15Test and document wildcard character escapingBoris Kolpackov1-1/+1
Also document the new bracket expression ([...]) wildcard support.
2019-11-15Generalize attributes to be comma-separated with arbitrary valuesBoris Kolpackov8-71/+119
Before: x = [string null] After: x = [string, null]
2019-11-15Improve {}-imbalance diagnostics in cc::parser and make it warningBoris Kolpackov3-10/+33
2019-11-15Fix bug in cc::parser location storageBoris Kolpackov4-5/+32
2019-11-14Cleanup attribute parsing codeBoris Kolpackov4-54/+37
2019-11-14Require attributes to be separated from words and similar on RHSBoris Kolpackov1-2/+19
2019-11-14Adjust deadlock diagnostics to reflect its fuzzy natureBoris Kolpackov1-3/+2
2019-11-14Tighten up attribute recognition during parsingBoris Kolpackov9-190/+286
Now it should be possible to use `[]` for wildcard patterns, for example: foo = foo.[hit]xx Note that a leading bracket expression will still be recognized as attributes and escaping or quoting it will inhibit pattern matching. To resolve this case we need to specify an empty attribute list: foo = [] [abc]-foo.cxx
2019-11-14Make use of butl::to_stream(ostream, path, bool)Karen Arutyunov6-13/+19
2019-11-13Increase deadlock detection timeoutBoris Kolpackov1-1/+1
2019-11-13Use path_name in cc::lexer classKaren Arutyunov15-64/+119
2019-11-13Implement config.config.persist logicBoris Kolpackov4-78/+193
Note that the inherited value part is documented but is not yet fully implemented.
2019-11-12Infra work for customizable config var persistence (config.config.persist)Boris Kolpackov5-41/+75
2019-11-12Explicitly load bundled module buildfiles to "use" their importsBoris Kolpackov1-1/+9
2019-11-12Add support for vector<pair<K, V>> variable valuesBoris Kolpackov4-2/+231
2019-11-12Rename config.{import,export} to config.config.{load,save}Boris Kolpackov5-48/+52
Also rename the $config.export() function to $config.save().
2019-11-12Rename config.module to config.config.moduleBoris Kolpackov2-12/+12
The old name was an accidental land-grab.
2019-11-11Change default for unused config.import.* variables from drop to keepBoris Kolpackov4-34/+94
2019-11-11Use path_name for `-` to stdin/stdout translationKaren Arutyunov19-89/+102
2019-11-08Use $regex.replace_lines() for default host config processingBoris Kolpackov1-5/+3
2019-11-08Add $regex.replace_lines() functionKaren Arutyunov1-2/+141
2019-11-08Redo Apple /usr/include detection using patternsBoris Kolpackov1-16/+8
This should cover XCode 11 where the symlinks are the other way around now (see homebrew-core issue #46393 for details).
2019-11-07Raise libcpp version in regex-related check to 9.0Karen Arutyunov1-1/+1