Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2020-02-03 | Add header/library search paths from compiler mode to sys_*_dirs | Boris Kolpackov | 10 | -193/+352 | |
2020-01-31 | Propagate installed library out (tag) when converting to name | Boris Kolpackov | 3 | -13/+31 | |
2020-01-31 | Use -l representation of library names in pkg-config files for MSVC | Boris Kolpackov | 1 | -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-31 | Tag installed library targets with linker path | Boris Kolpackov | 3 | -24/+34 | |
This makes sure we get different targets for different toolchains. | |||||
2020-01-29 | Rename module_base to module, redo module boot/init argument passing | Boris Kolpackov | 2 | -18/+14 | |
2020-01-28 | Use scope::var_pool() | Boris Kolpackov | 2 | -28/+28 | |
2020-01-27 | Protect cc guess cache with mutex | Boris Kolpackov | 1 | -1/+12 | |
2020-01-27 | Improve module loading API | Boris Kolpackov | 2 | -36/+17 | |
2020-01-27 | Improve process run_*() API | Boris Kolpackov | 4 | -8/+14 | |
2020-01-27 | Add corner case check in const.{c,cxx} array splitting | Boris Kolpackov | 1 | -8/+11 | |
2020-01-27 | Minor cleanup | Boris Kolpackov | 1 | -15/+1 | |
2020-01-24 | Don't pass dependency library non-export loptions to linker | Karen Arutyunov | 1 | -2/+10 | |
2019-11-29 | Reorder {cc,c/cxx}.{poptions,loptions} | Boris Kolpackov | 5 | -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-26 | Rename executable's .lib/.exp to avoid clashes with libraries | Boris Kolpackov | 2 | -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-18 | Add couple of sanity checks | Boris Kolpackov | 1 | -3/+8 | |
2019-11-15 | Use path_name_view in location and path_name_value in location_value | Karen Arutyunov | 1 | -2/+2 | |
2019-11-15 | Improve {}-imbalance diagnostics in cc::parser and make it warning | Boris Kolpackov | 3 | -10/+33 | |
2019-11-15 | Fix bug in cc::parser location storage | Boris Kolpackov | 2 | -2/+2 | |
2019-11-13 | Use path_name in cc::lexer class | Karen Arutyunov | 13 | -62/+105 | |
2019-11-08 | Redo Apple /usr/include detection using patterns | Boris Kolpackov | 1 | -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-07 | Don't add $install.lib to module library search path if import.build2 is NULL | Boris Kolpackov | 1 | -6/+21 | |
2019-11-07 | Initial work on path_name use for `-` to stdin/stdout translation | Boris Kolpackov | 2 | -2/+2 | |
2019-11-05 | Add support for automatic importing of libbuild2 of installed case | Boris Kolpackov | 1 | -1/+16 | |
2019-11-05 | Add support for supplying MSVC IFCPATH equivalent | Boris Kolpackov | 5 | -13/+62 | |
2019-10-31 | Update comment on Apple Clang to vanilla Clang version mapping | Boris Kolpackov | 1 | -15/+14 | |
2019-10-29 | Add forward declaration header for build state types | Boris Kolpackov | 1 | -2/+1 | |
2019-10-29 | Add support for specifying custom load prefix and version clean patterns | Boris Kolpackov | 1 | -5/+10 | |
2019-10-29 | Tighten up versioned libraries clean patterns | Boris Kolpackov | 2 | -73/+128 | |
2019-10-21 | Work around LLD bug #43744 | Boris Kolpackov | 1 | -0/+23 | |
2019-10-21 | Build thin archives for utility libraries if using llvm-lib | Boris Kolpackov | 1 | -0/+13 | |
2019-10-21 | Add more information on C and C++ compiler mode options to manual | Boris Kolpackov | 1 | -0/+2 | |
2019-10-19 | Add find_stem() utility function | Boris Kolpackov | 1 | -23/+4 | |
2019-10-18 | Add ability to specify "compiler mode" options as part of config.{c,cxx} | Boris Kolpackov | 10 | -213/+363 | |
Such options are (normally) not overridden by buildfiles and are passed last (after cc.coptions and {c,cxx}.coptions) in the resulting command lines. They are also cross-hinted between config.c and config.cxx. For example: $ b config.cxx="g++ -m64" | |||||
2019-10-17 | Derive msvc_cpu from cl.exe signature rather than path | Boris Kolpackov | 1 | -41/+29 | |
2019-10-17 | Add support for VS search by cl.exe path in find_msvc() | Karen Arutyunov | 1 | -48/+93 | |
2019-10-17 | Add temporary fallback to x64 in find_msvc() | Boris Kolpackov | 1 | -3/+8 | |
2019-10-16 | Make target CPU part of msvc_info struct | Boris Kolpackov | 1 | -18/+21 | |
2019-10-16 | Try to find MSVC installation for absolute cl.exe paths | Boris Kolpackov | 2 | -49/+103 | |
Without this extra logic recursive invocation of the build system (e.g., in tests) will fail to obtain the full environment. | |||||
2019-10-15 | Remove no longer used lambda capture | Boris Kolpackov | 1 | -4/+1 | |
2019-10-14 | Fix bug in guess_msvc() | Karen Arutyunov | 1 | -1/+1 | |
2019-10-14 | Add missing #ifndef BUILD2_BOOTSTRAP around find_msvc() call | Boris Kolpackov | 1 | -0/+2 | |
2019-10-14 | Implement MSVC installation discovery for version 15 (2017) and later | Karen Arutyunov | 7 | -182/+1695 | |
In particular, this removes the requirement to build from the Visual Studio command prompt. Note that since MSVC compiler binaries are target-specific (i.e., there are no -m32/-m64 options nor something like /MACHINE), in this case we default to a 64-bit build (a 32-bit build can still be achieved by running from a suitable command prompt). Finally, this mechanism is also used to find Clang bundled with MSVC. | |||||
2019-10-11 | Various fixes to make clang-cl work | Boris Kolpackov | 2 | -31/+45 | |
Note that clang-cl's /showInclude output differs from cl's in the face of missing headers. In particular, it does not issue C1083 that we expect. As a result, this part of clang-cl's support is currently non-functional (the rest seems to work, however). | |||||
2019-10-11 | Switch clang-apple to primary/variant version setup | Boris Kolpackov | 2 | -9/+60 | |
2019-10-11 | Add support for clang-cl | Boris Kolpackov | 4 | -150/+297 | |
The compiler type is `msvc`, variant `clang`. | |||||
2019-10-10 | Add %VCINSTALLDIR%\Tools\Llvm\bin as fallback search directory for Clang | Boris Kolpackov | 1 | -6/+28 | |
2019-10-09 | Prepend pattern search paths to PATH when running binutils | Boris Kolpackov | 1 | -4/+66 | |
This way any dependent tools (such as mt.exe that is invoked by link.exe) are first search for in there. | |||||
2019-10-08 | Extend /LIBPATH handling to win32-msvc target system | Boris Kolpackov | 2 | -2/+4 | |
2019-10-08 | Pass MSVC and Platform SDK bin\ directories as binutils search paths | Boris Kolpackov | 1 | -16/+39 | |
2019-10-08 | Redo bin pattern as PATH-like search paths rather than fallback directory | Boris Kolpackov | 2 | -9/+8 | |
Also, unlike the fallback directory, the search paths are searched first rather than last. |