summaryrefslogtreecommitdiffstats
path: root/build2/cc
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix bug in pkgconfig_load()Boris Kolpackov2018-09-051-1/+1
|
* Only consider common .pc file for binless variant if there is no binfullBoris Kolpackov2018-09-053-15/+30
|
* Adjust pkg-config logic to cover binless librariesBoris Kolpackov2018-09-053-131/+234
|
* Check for binless-ness after seeing through to import library memberBoris Kolpackov2018-09-041-11/+16
| | | | | This makes a difference for installed libraries since the DLL location might be unknown (empty path).
* Initial work on binless (binary-less aka header-only) library supportBoris Kolpackov2018-09-046-329/+442
|
* Use (native) C and C++ compilers we were built with as defaultsBoris Kolpackov2018-09-031-5/+14
|
* Add ability to print cc compiler_id valueBoris Kolpackov2018-08-312-0/+24
|
* Don't insist on install rules for non-file targetsBoris Kolpackov2018-08-275-8/+8
| | | | This helps with (not) installing libu*{} groups.
* Implement missing pieces in utility libraries supportBoris Kolpackov2018-08-259-184/+396
| | | | In particular, we can now build static libraries out of utility libraries.
* Rework code to sidestep Clang 3.8 on FreeBSD 11.0 mis-compilationBoris Kolpackov2018-08-221-2/+1
|
* Unset CL and _CL_ environment variables when detecting MSVCBoris Kolpackov2018-08-211-1/+10
|
* Print 'ar' instead of 'ld' when building static librariesBoris Kolpackov2018-08-211-1/+1
|
* Use thin archives if available for utility librariesBoris Kolpackov2018-08-141-10/+44
| | | | | Thin archives are supported by GNU ar since binutils 2.19.1 and LLVM ar since LLVM 3.8.0.
* Add support for default extension specification, trailing dot escapingBoris Kolpackov2018-08-071-5/+3
| | | | | | | | | | | | | For example: cxx{*}: extension = cxx cxx{foo} # foo.cxx cxx{foo.test} # foo.test (probably what we want...) cxx{foo.test...} # foo.test.cxx (... is this) cxx{foo..} # foo. cxx{foo....} # foo.. cxx{foo.....} # error (must come in escape pair)
* Make project variable to be of project_name typeKaren Arutyunov2018-07-303-5/+6
|
* Pass extension supplied by rule to target type default extension functionBoris Kolpackov2018-07-261-1/+1
| | | | | Also revert the precedence back to target type over rule. But now the target type is able to customize this logic (see exe{} for a use case).
* Remove unnecessary initialization (which also helps GCC 4.9 and VC 14u3)Boris Kolpackov2018-07-251-1/+1
|
* Prefer default extension supplied by rule over one supplied by target typeBoris Kolpackov2018-07-251-1/+1
|
* Add noteBoris Kolpackov2018-07-251-3/+4
|
* Switch to new GCC module interface (-fmodule-mapper)Boris Kolpackov2018-07-242-142/+98
|
* Handle leading 'module;' marker (p0713)Boris Kolpackov2018-07-243-4/+28
|
* Install bash module prerequisites for amalgamation rather than projectBoris Kolpackov2018-07-211-1/+1
| | | | This is similar to what we do for shared libraries in cc::install_rule.
* Implement in moduleBoris Kolpackov2018-07-161-2/+2
| | | | | | | | | | | | | | | | | | | | Given test.in containing something along these lines: foo = $foo$ Now we can do: using in file{test}: in{test.in} file{test}: foo = FOO The alternative variable substitution symbol can be specified with the in.symbol variable and lax (instead of the default strict) mode with in.substitution. For example: file{test}: in.symbol = '@' file{test}: in.substitution = lax
* Force reprocessing for module interface units if compiling with VCBoris Kolpackov2018-07-111-0/+10
|
* Implement support for excluded and ad hoc prerequisitesBoris Kolpackov2018-06-285-24/+85
| | | | | | | | | | | | | | The inclusion/exclusion is controlled via the 'include' prerequisite-specific variable. Valid values are: false - exclude true - include adhoc - include but treat as an ad hoc input For example: lib{foo}: cxx{win32-utility}: include = ($cxx.targe.class == 'windows') exe{bar}: libs{plugin}: include = adhoc
* Fix typoBoris Kolpackov2018-06-141-1/+1
|
* Open depdb earlier to detect and diagnose missing output directoryBoris Kolpackov2018-06-131-2/+5
|
* Fix diagnostics bugBoris Kolpackov2018-06-131-1/+1
|
* Add built-in support for Windows module definition files (.def)Boris Kolpackov2018-06-121-5/+47
|
* Remove output if ld failsBoris Kolpackov2018-06-121-5/+7
| | | | This helps link.exe which leaves broken the output around.
* Minor diagnostics improvementBoris Kolpackov2018-06-091-1/+6
|
* Fix localization issue in GCC system header search path extractionBoris Kolpackov2018-06-051-5/+5
|
* Fix uncaught invalid_path exceptionKaren Arutyunov2018-06-011-6/+16
|
* Fix localized /showIncludes parsing some moreBoris Kolpackov2018-05-281-11/+27
|
* Fix target locking race in search_library()Boris Kolpackov2018-05-251-0/+8
|
* Change default install filter to only accept prerequisites from amalgamationBoris Kolpackov2018-05-252-9/+12
|
* Fix link rule to synthesize identical dependency for clean and updateBoris Kolpackov2018-05-251-11/+44
|
* Skip auto-generated header mapping if include path is not normalizableBoris Kolpackov2018-05-241-30/+37
|
* Fix bug in TU checksum depdb saving logic in case of reprocess=trueBoris Kolpackov2018-05-241-3/+3
|
* Better handling of translated massages in VC's /showIncludes outputBoris Kolpackov2018-05-241-19/+27
|
* Add note on *-gcc-{ar,ranlib,etc} situationBoris Kolpackov2018-05-241-1/+2
|
* Update copyright yearKaren Arutyunov2018-05-1929-29/+29
|
* Update VC version mapping table with 15.7Boris Kolpackov2018-05-181-0/+1
|
* Pass ignore_dangling flag to dir_iterator() ctorKaren Arutyunov2018-05-181-1/+4
|
* Fix uncaught invalid_path exceptionKaren Arutyunov2018-05-161-1/+4
|
* Add support for different backlinking modes, use for Windows DLL assemblyBoris Kolpackov2018-05-021-0/+14
|
* Implement forwarded configurations and backlinkingBoris Kolpackov2018-04-264-16/+42
|
* Strip out_root when hashing linker input pathsBoris Kolpackov2018-03-211-7/+8
| | | | | This allows moving out_root of simple projects (no rpath, -I$out_root, or similar) without causing a re-link which we use for testing.
* If cc.reprocess is true, define __build2_preprocess during dependency extractionBoris Kolpackov2018-03-202-14/+42
| | | | This can be used to work around separate preprocessing bugs in the compiler.
* Improve derivation of binutils pattern from compiler patternBoris Kolpackov2018-02-271-43/+70
|