2
0
mirror of https://github.com/boostorg/build.git synced 2026-01-19 04:02:14 +00:00

13490 Commits

Author SHA1 Message Date
Rene Rivera
f608cb41ce Fix invalid regex escape sequence. 2024-06-09 20:48:09 -05:00
Rene Rivera
38db3fd518 Fix use of deprecated mktemp that was causing intermittent test failures. 2024-06-09 10:32:20 -05:00
Rene Rivera
47e69b8a4c Add releae note comment. 2024-06-09 09:16:23 -05:00
Rene Rivera
fccc03473e Undo /Ox optimization flag now that the vs2022 build problem is resolved. 2024-06-09 08:41:07 -05:00
Rene Rivera
6f15b88896 Back to latest msvc for installer build now that the build is fixed. 2024-06-08 23:00:05 -05:00
Rene Rivera
00756449a3 Use static msvc runtime.
It's not worth the trouble of dealing with the dynamic msvc runtime. Especially all the times AZP and GHA forget to properly install VS updates and break dynamic linking. So stay with the larger binary sizes and static runtime.
2024-06-08 22:24:12 -05:00
Rene Rivera
da42fb20f0 Noop prep command to avoid empty var errors. 2024-06-08 22:15:50 -05:00
Rene Rivera
565cd275b4 Install latest LLVM on clang-win tests, always. 2024-06-08 10:36:12 -05:00
Rene Rivera
a653bff1de Avoid the broken AZP/GHA vs2022 images. 2024-06-08 09:31:59 -05:00
Rene Rivera
036867d6af Test latest VS, clang, and cygwin as comparison for AZP. 2024-06-08 09:08:43 -05:00
Rene Rivera
20e800dde4 Check if if it's just b2 -v that fails on AZP. 2024-06-08 08:57:13 -05:00
Rene Rivera
57de4e1b9b Revert "Debug clang-cl AZP CI."
This reverts commit 5576cba4d4.
2024-06-08 08:53:19 -05:00
Rene Rivera
5576cba4d4 Debug clang-cl AZP CI. 2024-06-07 23:16:21 -05:00
Rene Rivera
772ed6a378 Use a clean/minimal PATH for AZP to avoid errant execs. 2024-06-07 22:53:29 -05:00
Rene Rivera
379659c671 Debug clang-cl AZP CI. 2024-06-07 22:40:31 -05:00
Rene Rivera
10b229e3c2 Debug clang-cl AZP CI. 2024-06-07 22:38:35 -05:00
Rene Rivera
0c4a2c01b5 Less agressive speed optimizations. 2024-06-07 12:00:58 -05:00
Rene Rivera
7c05476e23 Rework engine build flags for vc143. 2024-06-07 08:02:46 -05:00
Rene Rivera
13d2f146d1 Fix msvc : all not discovering all versions. 2024-06-06 22:42:45 -05:00
Rene Rivera
815a590897 Fix property_db::write_file_json dangling open FILE in some error conditions.
Without clang-tidy cleanups. As those seem to cause some optimization problems.
2024-06-05 20:41:45 -05:00
Rene Rivera
4255e3de45 Revert "Fix property_db::write_file_json dangling open FILE in some error conditions."
This reverts commit ef71f55dd3.
2024-06-05 20:05:52 -05:00
Rene Rivera
ef71f55dd3 Fix property_db::write_file_json dangling open FILE in some error conditions.
Also apply some clang-tidy cleanups.
2024-06-04 23:13:21 -05:00
Rene Rivera
5f32bc3ea1 Add a clangdb config to use the new compile_commands.json support.
[skip ci]
2024-06-04 21:57:41 -05:00
Rene Rivera
ebfaa03c19 Older clangs don't have Wno-attributes. Use Wno-c++14-extensions to cover those also. 2024-06-03 23:40:03 -05:00
Rene Rivera
0c35ad03d3 Fixes errors when the compile action command config variable is empty. 2024-06-03 22:20:05 -05:00
Rene Rivera
738b29cb04 Use space indent for jam code.
[skip ci]
2024-06-02 10:42:17 -05:00
René Ferdinand Rivera Morell
fbb7fb175a Implement command database generation (i.e. compile_commands.json). (#399)
This implements obtaining and generating compile commands from toolsets that compile C or C++ sources. I.e. implements both the --command-database=json amd --command-database-out=<filename> CLI options. Although it implements the toolset changes for most compilers, only a few are tested.

Fixes #395
2024-06-02 10:38:38 -05:00
Rene Rivera
63a760361c Add change note for db module. 2024-05-27 20:09:58 -05:00
René Ferdinand Rivera Morell
c30bce8e2d Add property-db class to record & write structured data. (#397)
Add property-db class to record & write structured data.

This adds a utility to record structured data in the form of a property database where the keys are a property path with string or number values. The data can be converted to a string, or written to a file, as JSON.
2024-05-27 20:04:58 -05:00
Rene Rivera
e329ca3aa2 Formatting fixes, tabs instead of space. 2024-05-27 00:22:51 -05:00
Rene Rivera
64860ef4ca Update history notes with current changes. 2024-05-27 00:17:51 -05:00
Nikita Kniazev
376470fadd exception-handling=off should define _HAS_EXCEPTIONS=0 for Dinkumware/MSSTL 2024-05-26 13:57:36 -05:00
Dimitry Andric
2d756eb245 msvc: recognize Visual Studio 2022 v17.10.0, which uses toolchain version 14.40.33807. 2024-05-24 11:15:31 -05:00
Dmitry Arkhipov
7baf56d187 improve handling of install directories
1. Consider options when constructing values for install directories.
2. Evaluate explicitly-provided values for directories relative to PWD,
   not base directory.
3. Change 2 requires a different implementation of staging-prefix
   handling.
2024-05-24 06:47:04 -05:00
Nikita Kniazev
bf6992bad7 Suppress annoying 1 file(s) copied. after every test (#390) 2024-05-23 20:59:36 -05:00
Dmitry
9242cd55f2 allow adding dll-path to usage requirements of searched libraries (#389) 2024-05-23 17:07:35 -05:00
Nikita Kniazev
5cde9e891e msvc: register only the version that have been asked to (#387) 2024-05-22 20:58:09 -05:00
Nikita Kniazev
cd7c1537f8 Rename os unknown to none (#386)
Apparently it was a Clang target normalization bug (issues/89582).
2024-05-21 20:50:39 -05:00
Nikita Kniazev
a7af57e291 clang-win: use lld linker, fix embed-manifest-via=linker (#385)
Fixes bfgroup/b2/issues/159
2024-05-21 14:28:36 -05:00
Nikita Kniazev
0c9c98086b bootstrap: embed manifest only when targeting windows (#384)
Fixes bfgroup/b2/issues/382
2024-05-21 07:03:38 -05:00
Rene Rivera
fe69c24302 Fix release and wix uploads. 2024-05-20 22:41:02 -05:00
Nikita Kniazev
006b1ec71d gcc/clang: -m* flags when architecture is not explicitly set (#379)
GCC is picky, -m32/-m64 flags are available only on a subset of targets. Clang supports -m32/-m64 universally.
2024-05-09 13:00:27 -05:00
Nikita Kniazev
4e2ad2c01f cpp is a preprocessor, don't try to compile with it (#383)
It dpesn't support multiple input files, leading to an error:
`
cpp: fatal error: too many input files

Fixes bfgroup/b2/issues/323
Fixes boostorg/build/issues/613
Fixes boostorg/build/issues/614
2024-05-09 06:56:13 -05:00
Dmitry
b159938246 fix broken multiple configurations for some toolset modules (#388) 2024-05-09 06:37:04 -05:00
Rene Rivera
bed068acd6 The msys2/setup-msys2 only works for released tags. 2024-04-24 09:13:02 -05:00
Rene Rivera
0db639cba6 Update most of the GH CI action versions. 2024-04-24 09:01:00 -05:00
Rene Rivera
f7df545f12 Add history note for PR #375. 2024-04-23 19:06:08 -05:00
Dmitry
33de696182 fix usage of configure.get-relevant-features (#375)
The rule was misnamed, as it returned relevant properties,  not
features. The misnomer seems to had been the source of misuse: ac module
did not consider any feature other than <link> to be relevant when
checking for library existance. That could result in incorrect config
checks.

The change renames the rule to get-relevant-properties, and adds back
get-relevant-features that returns features. In addition, it fixes the
usage of get-relevant-features in ac module (it called the rule without
arguments), and removes another usage where its invocation could not
result in anything meaningful.
2024-04-23 17:41:48 -05:00
Rene Rivera
6f383e26fd Add history note for PR #374. 2024-04-22 22:03:25 -05:00
Dmitry
fb743b7dbe make repeated 'using X ;' a no-op (#374)
This change allows putting `using X ;` into build scripts (as opposed to
user configs) without creating a conflicting or wrong setup for module
X. This is so that build scripts could rely on toolset modules having
been configured (at least with default values).

The commit only updates toolset modules which allow `using` without
arguments in the first place. It also does not change toolset modules
for C++ compilers, as nobody does e.g. `using gcc ;` in their build
scripts anyway.
2024-04-22 21:39:51 -05:00