Repository: compiler-explorer/compiler-explorer
Pull request #7735 (2025-05-27 20:21:42)

Add bmpi3
Proposing to add the B-MPI3 library to the live site. https://gitlab.com/correaa/boost-mpi3

Followed the steps as best as I could in based on other gitlab type libraries (bmulti)

Feedback on improving the hooks and the organizations of files in the repository is welcome.
The goal is to include the library by doing #include<mpi3/communicator.hpp>.


Patch:
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index 8b6f79185..5e32d01c2 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -161,3 +161,4 @@ From oldest to newest contributor, we would like to thank:
 - [RongDong Xu](https://github.com/arong)
 - [Adrien Bertrand](https://github.com/adriweb)
 - [Roberto Parolin](https://github.com/rparolin)
+- [Alfredo Correa](https://github.com/correaa)
diff --git a/etc/cewrapper/compilers-and-tools.json b/etc/cewrapper/compilers-and-tools.json
index ef1c9ca5f..410ddae0f 100644
--- a/etc/cewrapper/compilers-and-tools.json
+++ b/etc/cewrapper/compilers-and-tools.json
@@ -2,11 +2,6 @@
   "use_appcontainer": true,
   "pids_max": 72,
   "mem_max": 1342177280,
-  "allowed_paths": [
-    {
-      "path": "NUL",
-      "rw": true
-    }
-  ],
+  "allowed_paths": [],
   "allowed_registry": []
 }
diff --git a/etc/config/c++.amazon.properties b/etc/config/c++.amazon.properties
index 777a724ad..3223410ec 100644
--- a/etc/config/c++.amazon.properties
+++ b/etc/config/c++.amazon.properties
@@ -3990,7 +3990,7 @@ compiler.djggp494.semver=4.9.4
 
 #################################
 # Zig c++
-group.zigcxx.compilers=zcxx060:zcxx070:zcxx071:zcxx080:zcxx090:zcxx0100:zcxx0110:zcxx0120:zcxx0121:zcxx0130:zcxx0140:zcxxtrunk
+group.zigcxx.compilers=zcxx060:zcxx070:zcxx071:zcxx080:zcxx090:zcxx0100:zcxx0110:zcxx0120:zcxx0121:zcxx0130:zcxx0140:zcxx0141:zcxxtrunk
 group.zigcxx.intelAsm=-mllvm --x86-asm-syntax=intel
 group.zigcxx.objdumper=/opt/compiler-explorer/gcc-10.2.0/bin/objdump
 group.zigcxx.options=
@@ -4026,6 +4026,8 @@ compiler.zcxx0130.exe=/opt/compiler-explorer/zig-0.13.0/zig
 compiler.zcxx0130.semver=0.13.0
 compiler.zcxx0140.exe=/opt/compiler-explorer/zig-0.14.0/zig
 compiler.zcxx0140.semver=0.14.0
+compiler.zcxx0141.exe=/opt/compiler-explorer/zig-0.14.1/zig
+compiler.zcxx0141.semver=0.14.1
 compiler.zcxxtrunk.exe=/opt/compiler-explorer/zig-master/zig
 compiler.zcxxtrunk.semver=trunk
 compiler.zcxxtrunk.isNightly=true
@@ -4376,7 +4378,7 @@ compiler.z180-clang-1507.options=-target z180 -g0 -nostdinc -fno-threadsafe-stat
 #################################
 #################################
 # Installed libs
-libs=abseil:array:async_simple:belleviews:beman_any_view:beman_exemplar:beman_execution:beman_iterator_interface:beman_inplace_vector:beman_net:beman_optional:beman_scope:beman_task:benchmark:benri:blaze:boost:bmulti:brigand:bronto:catch2:cccl:cctz:cereal:cmcstl2:cnl:cppcoro:cppitertools:cpptrace:crosscables:ctbignum:cthash:ctre:date:dataframe:dawjson:dlib:doctest:eastl:eigen:enoki:entt:etl:eve:expected_lite:fastor:flux:fmt:gcem:gemmlowp:glaze:glm:gnufs:gnulibbacktrace:gnuexp:googletest:gsl:hdf5:hedley:hfsm:highfive:highway:hotels-template-library:immer:jsoncons:jsoncpp:kiwaku:kokkos:kumi:kvasir:kyosu:lager:lagom:lexy:libassert:libbpf:libguarded:libsimdpp:libuv:llvm:llvmfs:lua:magic_enum:mfem:mimicpp:mlir:mp-coro:mp-units:namedtype:nanorange:nlohmann_json:nsimd:ofw:openssl:outcome:pegtl:pipes:proxy:pugixml:pybind11:python:rangesv3:raberu:rapidjson:reactive_plus_plus:scnlib:seastar:seqan3:simde:simdjson:sol2:spdlog:spy:stdexec:strong_type:taojson:taskflow:tbb:thinkcell:tlexpected:toml11:tomlplusplus:trompeloeil:tts:type_safe:unifex:ureact:vcl:xercesc:xsimd:xtensor:xtl:yomm2:zug:cli11:avr-libstdcpp:curl:copperspice:sqlite:ztdcuneicode:ztdencodingtables:ztdidk:ztdstaticcontainers:ztdtext:ztdplatform:qt:quill:pcre2:widberg-defs:jwt-cpp:xieite:option:mdspan
+libs=abseil:array:async_simple:belleviews:beman_any_view:beman_exemplar:beman_execution:beman_iterator_interface:beman_inplace_vector:beman_net:beman_optional:beman_scope:beman_task:benchmark:benri:blaze:boost:bmpi3:bmulti:brigand:bronto:catch2:cccl:cctz:cereal:cmcstl2:cnl:cppcoro:cppitertools:cpptrace:crosscables:ctbignum:cthash:ctre:date:dataframe:dawjson:dlib:doctest:eastl:eigen:enoki:entt:etl:eve:expected_lite:fastor:flux:fmt:gcem:gemmlowp:glaze:glm:gnufs:gnulibbacktrace:gnuexp:googletest:gsl:hdf5:hedley:hfsm:highfive:highway:hotels-template-library:immer:jsoncons:jsoncpp:kiwaku:kokkos:kumi:kvasir:kyosu:lager:lagom:lexy:libassert:libbpf:libguarded:libsimdpp:libuv:llvm:llvmfs:lua:magic_enum:mfem:mimicpp:mlir:mp-coro:mp-units:namedtype:nanorange:nlohmann_json:nsimd:ofw:openssl:outcome:pegtl:pipes:proxy:pugixml:pybind11:python:rangesv3:raberu:rapidjson:reactive_plus_plus:scnlib:seastar:seqan3:simde:simdjson:sol2:spdlog:spy:stdexec:strong_type:taojson:taskflow:tbb:thinkcell:tlexpected:toml11:tomlplusplus:trompeloeil:tts:type_safe:unifex:ureact:vcl:xercesc:xsimd:xtensor:xtl:yomm2:zug:cli11:avr-libstdcpp:curl:copperspice:sqlite:ztdcuneicode:ztdencodingtables:ztdidk:ztdstaticcontainers:ztdtext:ztdplatform:qt:quill:pcre2:widberg-defs:jwt-cpp:xieite:option:mdspan
 
 libs.abseil.name=Abseil
 libs.abseil.versions=202501270
@@ -4571,6 +4573,13 @@ libs.boost.versions.187.version=1.87.0
 libs.boost.versions.187.packagedheaders=true
 libs.boost.versions.187.lookupname=boost_bin
 
+libs.bmpi3.name=B-MPI3
+libs.bmpi3.url=https://gitlab.com/correaa/boost-mpi3
+libs.bmpi3.versions=trunk
+libs.bmpi3.description=Modern C++ MPI-3 wrapper
+libs.bmpi3.versions.trunk.version=trunk
+libs.bmpi3.versions.trunk.path=/opt/compiler-explorer/libs/bmpi3/trunk/include
+
 libs.bmulti.name=B-Multi
 libs.bmulti.url=https://gitlab.com/correaa/boost-multi
 libs.bmulti.versions=trunk
diff --git a/etc/config/c++.amazonwin.properties b/etc/config/c++.amazonwin.properties
index e550632ee..cb9c5e8b8 100644
--- a/etc/config/c++.amazonwin.properties
+++ b/etc/config/c++.amazonwin.properties
@@ -2,6 +2,9 @@ compilers=&clang-cl:&mingw64:&vcpp
 objdumper=Z:/compilers/mingw-w64-12.2.0-15.0.7-10.0.0-ucrt-r4/bin/objdump.exe
 demangler=Z:/compilers/mingw-w64-12.2.0-15.0.7-10.0.0-ucrt-r4/bin/c++filt.exe
 
+buildenvsetup=ceconan
+buildenvsetup.host=https://conan.compiler-explorer.com
+
 group.clang-cl.compilers=clang-cl1810
 group.clang-cl.baseName=clang-cl
 group.clang-cl.compilerType=clang-cl
@@ -69,7 +72,7 @@ compiler.mingw64_ucrt_clang_1403.exe=Z:/compilers/mingw-w64-11.3.0-14.0.3-10.0.0
 compiler.mingw64_ucrt_clang_1403.semver=14.0.3
 
 group.vcpp.compilers=&vcpp_x86:&vcpp_x64:&vcpp_arm64
-group.vcpp.options=/EHsc /utf-8
+group.vcpp.options=/EHsc /utf-8 /MDd
 group.vcpp.compilerType=win32-vc
 group.vcpp.needsMulti=false
 group.vcpp.includeFlag=/I
@@ -91,12 +94,14 @@ group.vcpp_x86.isSemVer=true
 group.vcpp_x86.supportsBinary=true
 group.vcpp_x86.supportsExecute=true
 group.vcpp_x86.instructionSet=amd64
+group.vcpp_x86.extraPath=Z:/compilers/debug_nonredist/x86/Microsoft.VC142.DebugCRT
 
 group.vcpp_x64.compilers=vcpp_v19_latest_x64:vcpp_v19_24_VS16_4_x64:vcpp_v19_25_VS16_5_x64:vcpp_v19_27_VS16_7_x64:vcpp_v19_28_VS16_8_x64:vcpp_v19_28_VS16_9_x64:vcpp_v19_29_VS16_10_x64:vcpp_v19_29_VS16_11_x64:vcpp_v19_20_VS16_0_x64:vcpp_v19_21_VS16_1_x64:vcpp_v19_22_VS16_2_x64:vcpp_v19_23_VS16_3_x64:vcpp_v19_26_VS16_6_x64:vcpp_v19_30_VS17_0_x64:vcpp_v19_31_VS17_1_x64:vcpp_v19_33_VS17_3_x64:vcpp_v19_35_VS17_5_x64:vcpp_v19_37_VS17_7_x64:vcpp_v19_32_VS17_2_x64:vcpp_v19_34_VS17_4_x64:vcpp_v19_36_VS17_6_x64:vcpp_v19_38_VS17_8_x64:vcpp_v19_39_VS17_9_x64:vcpp_v19_40_VS17_10_x64:vcpp_v19_41_VS17_11_x64:vcpp_v19_42_VS17_12_x64:vcpp_v19_43_VS17_13_x64
 group.vcpp_x64.groupName=MSVC x64
 group.vcpp_x64.supportsBinary=true
 group.vcpp_x64.supportsExecute=true
 group.vcpp_x64.instructionSet=amd64
+group.vcpp_x64.extraPath=Z:/compilers/debug_nonredist/x64/Microsoft.VC142.DebugCRT
 
 group.vcpp_arm64.compilers=vcpp_v19_latest_arm64:vcpp_v19_28_VS16_9_arm64:vcpp_v19_29_VS16_10_arm64:vcpp_v19_29_VS16_11_arm64:vcpp_v19_25_VS16_5_arm64:vcpp_v19_27_VS16_7_arm64:vcpp_v19_24_VS16_4_arm64:vcpp_v19_28_VS16_8_arm64:vcpp_v19_20_VS16_0_arm64:vcpp_v19_21_VS16_1_arm64:vcpp_v19_22_VS16_2_arm64:vcpp_v19_23_VS16_3_arm64:vcpp_v19_26_VS16_6_arm64:vcpp_v19_30_VS17_0_arm64:vcpp_v19_31_VS17_1_arm64:vcpp_v19_33_VS17_3_arm64:vcpp_v19_35_VS17_5_arm64:vcpp_v19_37_VS17_7_arm64:vcpp_v19_32_VS17_2_arm64:vcpp_v19_34_VS17_4_arm64:vcpp_v19_36_VS17_6_arm64:vcpp_v19_38_VS17_8_arm64:vcpp_v19_39_VS17_9_arm64:vcpp_v19_40_VS17_10_arm64:vcpp_v19_41_VS17_11_arm64:vcpp_v19_42_VS17_12_arm64:vcpp_v19_43_VS17_13_arm64
 group.vcpp_arm64.groupName=MSVC arm64
@@ -645,7 +650,990 @@ compiler.vcpp_v19_latest_arm64.name=arm64 msvc v19.latest
 compiler.vcpp_v19_latest_arm64.semver=14.43.34810.0
 ########################################
 
-libs=
+
+libs=abseil:benchmark:benri:blaze:boost:brigand:catch2:cctz:cereal:cgal:cppitertools:cpptrace:curl:dataframe:date:dawjson:dlib:doctest:eigen:entt:eve:expected-dark:expected-lite:fastor:flux:fmt:gcem:glaze:glm:googletest:gsl:hedley:hfsm:hfsm2:highway:hip-amd:hpx:jsoncons:jsoncpp:jwt-cpp:kokkos:kumi:kvasir:libassert:libguarded:liblzma:libsimdpp:llvm:magic_enum:mfem:mimicpp:mlir:mp-units:nlohmann_json:nsimd:option:pcre2:pegtl:protobuf:proxy:pugixml:qt:raberu:rangesv3:rapidjson:reactive_plus_plus:scnlib:seastar:simdjson:spdlog:spy:tlexpected:toml11:tomlplusplus:tts:ureact:vcl:vcl1:xercesc:xsimd:xtensor:xtl:array:beman_iterator_interface:cppcoro:crosscables:hfsm_trunk:lexy_trunk:stdexec:taskflow:unifex:ztdcuneicode:ztdencodingtables:ztdidk:ztdplatform
+
+libs.abseil.name=Abseil
+libs.abseil.url=https://abseil.io/
+libs.abseil.packagedheaders=true
+libs.abseil.versions=202501270
+libs.abseil.versions.202501270.version=20250127.0
+libs.abseil.versions.202501270.staticliblink=absl_cordz_sample_token:absl_die_if_null:absl_failure_signal_handler:absl_flags_parse:absl_flags_usage:absl_flags_usage_internal:absl_log_flags:absl_log_initialize:absl_log_internal_check_op:absl_flags_internal:absl_flags_marshalling:absl_flags_reflection:absl_flags_private_handle_accessor:absl_flags_commandlineflag:absl_flags_commandlineflag_internal:absl_flags_config:absl_flags_program_name:absl_log_internal_conditions:absl_log_internal_message:absl_examine_stack:absl_log_internal_format:absl_log_internal_nullguard:absl_log_internal_log_sink_set:absl_log_internal_globals:absl_log_globals:absl_log_sink:absl_log_internal_structured_proto:absl_log_internal_proto:absl_periodic_sampler:absl_poison:absl_random_internal_distribution_test_util:absl_random_distributions:absl_random_seed_sequences:absl_random_internal_pool_urbg:absl_random_internal_randen:absl_random_internal_randen_hwaes:absl_random_internal_randen_hwaes_impl:absl_random_internal_randen_slow:absl_random_internal_platform:absl_random_internal_seed_material:absl_random_seed_gen_exception:absl_raw_hash_set:absl_hash:absl_city:absl_low_level_hash:absl_hashtablez_sampler:absl_scoped_set_env:absl_statusor:absl_status:absl_cord:absl_cordz_info:absl_cord_internal:absl_cordz_functions:absl_exponential_biased:absl_cordz_handle:absl_crc_cord_state:absl_crc32c:absl_crc_internal:absl_crc_cpu_detect:absl_leak_check:absl_strerror:absl_str_format_internal:absl_bad_variant_access:absl_vlog_config_internal:absl_log_internal_fnmatch:absl_synchronization:absl_graphcycles_internal:absl_kernel_timeout_internal:absl_stacktrace:absl_symbolize:absl_debugging_internal:absl_demangle_internal:absl_demangle_rust:absl_decode_rust_punycode:absl_utf8_for_code_point:absl_malloc_internal:absl_time:absl_civil_time:absl_time_zone:absl_tracing_internal:absl_strings:absl_strings_internal:absl_string_view:absl_base:rt:absl_spinlock_wait:absl_int128:absl_throw_delegate:absl_raw_logging_internal:absl_log_severity
+
+libs.benchmark.name=Google Benchmark
+libs.benchmark.url=https://github.com/google/benchmark
+libs.benchmark.packagedheaders=true
+libs.benchmark.versions=120:130:140:141:150:161:162:trunk
+libs.benchmark.staticliblink=benchmark
+libs.benchmark.versions.120.version=1.2.0
+libs.benchmark.versions.130.version=1.3.0
+libs.benchmark.versions.140.version=1.4.0
+libs.benchmark.versions.141.version=1.4.1
+libs.benchmark.versions.150.version=1.5.0
+libs.benchmark.versions.161.version=1.6.1
+libs.benchmark.versions.162.version=1.6.2
+libs.benchmark.versions.trunk.version=trunk
+
+libs.benri.name=benri
+libs.benri.url=https://github.com/jansende/benri
+libs.benri.description=Compile time checking of physical quantities.
+libs.benri.packagedheaders=true
+libs.benri.versions=201:211:trunk
+libs.benri.versions.201.version=2.0.1
+libs.benri.versions.211.version=2.1.1
+libs.benri.versions.trunk.version=trunk
+
+libs.blaze.name=Blaze
+libs.blaze.url=https://bitbucket.org/blaze-lib/blaze
+libs.blaze.packagedheaders=true
+libs.blaze.versions=33:34:35:36:37:38:trunk
+libs.blaze.versions.33.version=3.3
+libs.blaze.versions.34.version=3.4
+libs.blaze.versions.35.version=3.5
+libs.blaze.versions.36.version=3.6
+libs.blaze.versions.37.version=3.7
+libs.blaze.versions.38.version=3.8
+libs.blaze.versions.trunk.version=trunk
+
+libs.boost.name=Boost
+libs.boost.url=https://www.boost.org
+libs.boost.packagedheaders=true
+libs.boost.versions=1850:1860:1870
+libs.boost.versions.1850.version=1.85.0
+libs.boost.versions.1860.version=1.86.0
+libs.boost.versions.1870.version=1.87.0
+
+libs.brigand.name=Brigand
+libs.brigand.url=https://github.com/edouarda/brigand
+libs.brigand.packagedheaders=true
+libs.brigand.versions=130:trunk
+libs.brigand.versions.130.version=1.3.0
+libs.brigand.versions.trunk.version=trunk
+
+libs.catch2.name=Catch2
+libs.catch2.url=https://github.com/catchorg/Catch2
+libs.catch2.description=Catch2
+libs.catch2.packagedheaders=true
+libs.catch2.versions=300-preview2:300-preview3:301:trunk:222:223:230:240:241:242:250:260:261:270:271:272:280:290:291:292:2100:2101:2102:2110:2111:2112:2113:2120:2121
+libs.catch2.versions.300-preview2.version=3.0.0-preview2
+libs.catch2.versions.300-preview2.staticliblink=Catch2
+libs.catch2.versions.300-preview3.version=3.0.0-preview3
+libs.catch2.versions.300-preview3.staticliblink=Catch2
+libs.catch2.versions.301.version=3.0.1
+libs.catch2.versions.301.staticliblink=Catch2d
+libs.catch2.versions.trunk.version=trunk
+libs.catch2.versions.trunk.staticliblink=Catch2d
+libs.catch2.versions.222.version=2.2.2
+libs.catch2.versions.223.version=2.2.3
+libs.catch2.versions.230.version=2.3.0
+libs.catch2.versions.240.version=2.4.0
+libs.catch2.versions.241.version=2.4.1
+libs.catch2.versions.242.version=2.4.2
+libs.catch2.versions.250.version=2.5.0
+libs.catch2.versions.260.version=2.6.0
+libs.catch2.versions.261.version=2.6.1
+libs.catch2.versions.270.version=2.7.0
+libs.catch2.versions.271.version=2.7.1
+libs.catch2.versions.272.version=2.7.2
+libs.catch2.versions.280.version=2.8.0
+libs.catch2.versions.290.version=2.9.0
+libs.catch2.versions.291.version=2.9.1
+libs.catch2.versions.292.version=2.9.2
+libs.catch2.versions.2100.version=2.10.0
+libs.catch2.versions.2101.version=2.10.1
+libs.catch2.versions.2102.version=2.10.2
+libs.catch2.versions.2110.version=2.11.0
+libs.catch2.versions.2111.version=2.11.1
+libs.catch2.versions.2112.version=2.11.2
+libs.catch2.versions.2113.version=2.11.3
+libs.catch2.versions.2120.version=2.12.0
+libs.catch2.versions.2121.version=2.12.1
+
+libs.cctz.name=CCTZ
+libs.cctz.url=https://github.com/google/cctz
+libs.cctz.packagedheaders=true
+libs.cctz.versions=23
+libs.cctz.staticliblink=cctz
+libs.cctz.versions.23.version=2.3
+
+libs.cereal.name=Cereal
+libs.cereal.url=https://uscilab.github.io/cereal/
+libs.cereal.packagedheaders=true
+libs.cereal.versions=132:131:130:122:121:120
+libs.cereal.versions.132.version=1.3.2
+libs.cereal.versions.131.version=1.3.1
+libs.cereal.versions.130.version=1.3.0
+libs.cereal.versions.122.version=1.2.2
+libs.cereal.versions.121.version=1.2.1
+libs.cereal.versions.120.version=1.2.0
+
+libs.cgal.name=cgal
+libs.cgal.packagedheaders=true
+libs.cgal.versions=552
+libs.cgal.versions.552.version=5.5.2
+
+libs.cppitertools.name=cppitertools
+libs.cppitertools.url=https://github.com/ryanhaining/cppitertools
+libs.cppitertools.packagedheaders=true
+libs.cppitertools.versions=20:10:trunk
+libs.cppitertools.versions.20.version=2.0
+libs.cppitertools.versions.10.version=1.0
+libs.cppitertools.versions.trunk.version=trunk
+
+libs.cpptrace.name=cpptrace
+libs.cpptrace.url=https://github.com/jeremy-rifkin/cpptrace
+libs.cpptrace.description=Simple, portable, and self-contained stacktrace library for C++11 and newer
+libs.cpptrace.packagedheaders=true
+libs.cpptrace.versions=082:070:063:062:061:060:050:041:040:031:030:021
+libs.cpptrace.staticliblink=cpptrace
+libs.cpptrace.versions.082.version=0.8.2
+libs.cpptrace.versions.070.version=0.7.0
+libs.cpptrace.versions.063.version=0.6.3
+libs.cpptrace.versions.062.version=0.6.2
+libs.cpptrace.versions.061.version=0.6.1
+libs.cpptrace.versions.060.version=0.6.0
+libs.cpptrace.versions.050.version=0.5.0
+libs.cpptrace.versions.041.version=0.4.1
+libs.cpptrace.versions.040.version=0.4.0
+libs.cpptrace.versions.031.version=0.3.1
+libs.cpptrace.versions.030.version=0.3.0
+libs.cpptrace.versions.021.version=0.2.1
+
+libs.curl.name=curl
+libs.curl.url=https://curl.se
+libs.curl.packagedheaders=true
+libs.curl.versions=7831
+libs.curl.liblink=curl-d
+libs.curl.versions.7831.version=7.83.1
+
+libs.dataframe.name=DataFrame
+libs.dataframe.url=https://github.com/Hosseinmoein/DataFrame
+libs.dataframe.description=C++ DataFrame
+libs.dataframe.packagedheaders=true
+libs.dataframe.versions=1190:trunk
+libs.dataframe.staticliblink=DataFrame
+libs.dataframe.versions.1190.version=1.19.0
+libs.dataframe.versions.trunk.version=trunk
+
+libs.date.name=Date
+libs.date.url=https://github.com/HowardHinnant/date
+libs.date.description=A date and time library based on the C++11/14/17 chrono header. Note that this library depends on Curl.
+libs.date.packagedheaders=true
+libs.date.versions=301:trunk
+libs.date.staticliblink=date-tz
+libs.date.versions.301.version=3.0.1
+libs.date.versions.trunk.version=trunk
+
+libs.dawjson.name=DAW JSON Link
+libs.dawjson.url=https://github.com/beached/daw_json_link/
+libs.dawjson.description=Fast JSON serialization and parsing in C++ with declarative mappings
+libs.dawjson.packagedheaders=true
+libs.dawjson.versions=2911:trunk
+libs.dawjson.versions.2911.version=2.9.11
+libs.dawjson.versions.trunk.version=trunk
+
+libs.dlib.name=dlib
+libs.dlib.url=http://dlib.net/
+libs.dlib.description=Machine learning algorithms and tools
+libs.dlib.packagedheaders=true
+libs.dlib.versions=v197:v199:v1910:trunk
+libs.dlib.staticliblink=dlib
+libs.dlib.versions.v197.version=v19.7
+libs.dlib.versions.v199.version=v19.9
+libs.dlib.versions.v1910.version=v19.10
+libs.dlib.versions.trunk.version=trunk
+
+libs.doctest.name=Doctest
+libs.doctest.url=https://github.com/onqtam/doctest
+libs.doctest.description=The fastest feature-rich C++11 single-header testing framework for unit tests and TDD
+libs.doctest.packagedheaders=true
+libs.doctest.versions=129:200:201:210:220:221:222:223:230:231:232:233:234:235:236:237:238:trunk
+libs.doctest.versions.129.version=1.2.9
+libs.doctest.versions.200.version=2.0.0
+libs.doctest.versions.201.version=2.0.1
+libs.doctest.versions.210.version=2.1.0
+libs.doctest.versions.220.version=2.2.0
+libs.doctest.versions.221.version=2.2.1
+libs.doctest.versions.222.version=2.2.2
+libs.doctest.versions.223.version=2.2.3
+libs.doctest.versions.230.version=2.3.0
+libs.doctest.versions.231.version=2.3.1
+libs.doctest.versions.232.version=2.3.2
+libs.doctest.versions.233.version=2.3.3
+libs.doctest.versions.234.version=2.3.4
+libs.doctest.versions.235.version=2.3.5
+libs.doctest.versions.236.version=2.3.6
+libs.doctest.versions.237.version=2.3.7
+libs.doctest.versions.238.version=2.3.8
+libs.doctest.versions.trunk.version=trunk
+
+libs.eigen.name=Eigen
+libs.eigen.url=http://eigen.tuxfamily.org/index.php?title=Main_Page
+libs.eigen.packagedheaders=true
+libs.eigen.versions=334:335:337:339:340:vtrunk
+libs.eigen.versions.334.version=3.3.4
+libs.eigen.versions.335.version=3.3.5
+libs.eigen.versions.337.version=3.3.7
+libs.eigen.versions.339.version=3.3.9
+libs.eigen.versions.340.version=3.4.0
+libs.eigen.versions.vtrunk.version=vtrunk
+
+libs.entt.name=entt
+libs.entt.url=https://github.com/skypjack/entt
+libs.entt.packagedheaders=true
+libs.entt.versions=3122:3111:3103:390:381:371:360:352:350:trunk
+libs.entt.versions.3122.version=3.12.2
+libs.entt.versions.3111.version=3.11.1
+libs.entt.versions.3103.version=3.10.3
+libs.entt.versions.390.version=3.9.0
+libs.entt.versions.381.version=3.8.1
+libs.entt.versions.371.version=3.7.1
+libs.entt.versions.360.version=3.6.0
+libs.entt.versions.352.version=3.5.2
+libs.entt.versions.350.version=3.5.0
+libs.entt.versions.trunk.version=trunk
+
+libs.eve.name=EVE
+libs.eve.url=https://github.com/jfalcou/eve
+libs.eve.description=C++20 SIMD wrapper
+libs.eve.packagedheaders=true
+libs.eve.versions=2021100:2022030:2022090:2022091:20230215:trunk
+libs.eve.versions.2021100.version=2021.10.0
+libs.eve.versions.2022030.version=2022.03.0
+libs.eve.versions.2022090.version=2022.09.0
+libs.eve.versions.2022091.version=2022.09.1
+libs.eve.versions.20230215.version=2023.02.15
+libs.eve.versions.trunk.version=trunk
+
+libs.expected-dark.name=expected-dark
+libs.expected-dark.packagedheaders=true
+libs.expected-dark.versions=001:trunk
+libs.expected-dark.versions.001.version=0.0.1
+libs.expected-dark.versions.trunk.version=trunk
+
+libs.expected-lite.name=expected-lite
+libs.expected-lite.packagedheaders=true
+libs.expected-lite.versions=010:trunk
+libs.expected-lite.versions.010.version=0.1.0
+libs.expected-lite.versions.trunk.version=trunk
+
+libs.fastor.name=Fastor
+libs.fastor.url=https://github.com/romeric/Fastor
+libs.fastor.description=Fastor is a high performance stack-based tensor (fixed multi-dimensional array) library for modern C++.
+libs.fastor.packagedheaders=true
+libs.fastor.versions=063:trunk
+libs.fastor.versions.063.version=0.6.3
+libs.fastor.versions.trunk.version=trunk
+
+libs.flux.name=Flux
+libs.flux.url=https://github.com/tcbrindle/flux
+libs.flux.description=A C++20 library for sequence-orientated programming. Safer, easier, faster, compatible.
+libs.flux.packagedheaders=true
+libs.flux.versions=040:trunk
+libs.flux.versions.040.version=0.4.0
+libs.flux.versions.trunk.version=trunk
+
+libs.fmt.name={fmt}
+libs.fmt.url=https://fmt.dev/
+libs.fmt.description=A modern formatting library
+libs.fmt.packagedheaders=true
+libs.fmt.versions=400:410:500:510:520:530:600:610:611:612:620:621:700:713:801:811:900:910:1000:1011:1021:1100:1114:1120:trunk
+libs.fmt.staticliblink=fmtd
+libs.fmt.versions.400.version=4.0.0
+libs.fmt.versions.400.staticliblink=fmt
+libs.fmt.versions.410.version=4.1.0
+libs.fmt.versions.410.staticliblink=fmt
+libs.fmt.versions.500.version=5.0.0
+libs.fmt.versions.510.version=5.1.0
+libs.fmt.versions.520.version=5.2.0
+libs.fmt.versions.530.version=5.3.0
+libs.fmt.versions.600.version=6.0.0
+libs.fmt.versions.610.version=6.1.0
+libs.fmt.versions.611.version=6.1.1
+libs.fmt.versions.612.version=6.1.2
+libs.fmt.versions.620.version=6.2.0
+libs.fmt.versions.621.version=6.2.1
+libs.fmt.versions.700.version=7.0.0
+libs.fmt.versions.713.version=7.1.3
+libs.fmt.versions.801.version=8.0.1
+libs.fmt.versions.811.version=8.1.1
+libs.fmt.versions.900.version=9.0.0
+libs.fmt.versions.910.version=9.1.0
+libs.fmt.versions.1000.version=10.0.0
+libs.fmt.versions.1011.version=10.1.1
+libs.fmt.versions.1021.version=10.2.1
+libs.fmt.versions.1100.version=11.0.0
+libs.fmt.versions.1114.version=11.1.4
+libs.fmt.versions.1120.version=11.2.0
+libs.fmt.versions.trunk.version=trunk
+
+libs.gcem.name=GCEM
+libs.gcem.url=https://github.com/kthohr/gcem
+libs.gcem.description=Generalized Constant Expression Math: a C++ compile-time math library using generalized constant expressions
+libs.gcem.packagedheaders=true
+libs.gcem.versions=1170:trunk
+libs.gcem.versions.1170.version=1.17.0
+libs.gcem.versions.trunk.version=trunk
+
+libs.glaze.name=glaze
+libs.glaze.url=https://github.com/stephenberry/glaze
+libs.glaze.description=JSON, reflection, and interface library
+libs.glaze.packagedheaders=true
+libs.glaze.versions=198:203:500:trunk
+libs.glaze.versions.198.version=1.9.8
+libs.glaze.versions.203.version=2.0.3
+libs.glaze.versions.500.version=5.0.0
+libs.glaze.versions.trunk.version=trunk
+
+libs.glm.name=GLM
+libs.glm.url=https://glm.g-truc.net/
+libs.glm.description=OpenGL Mathematics
+libs.glm.packagedheaders=true
+libs.glm.versions=0985:0990:0991:0992:0993:0994:0995:0996:0997:0998:trunk
+libs.glm.versions.0985.version=0.9.8.5
+libs.glm.versions.0990.version=0.9.9.0
+libs.glm.versions.0991.version=0.9.9.1
+libs.glm.versions.0992.version=0.9.9.2
+libs.glm.versions.0993.version=0.9.9.3
+libs.glm.versions.0994.version=0.9.9.4
+libs.glm.versions.0995.version=0.9.9.5
+libs.glm.versions.0996.version=0.9.9.6
+libs.glm.versions.0997.version=0.9.9.7
+libs.glm.versions.0998.version=0.9.9.8
+libs.glm.versions.trunk.version=trunk
+
+libs.googletest.name=Google Test
+libs.googletest.url=https://github.com/google/googletest
+libs.googletest.packagedheaders=true
+libs.googletest.versions=release-1100:release-1110:release-1120:release-1121:trunk
+libs.googletest.versions.release-1100.version=release-1.10.0
+libs.googletest.versions.release-1100.staticliblink=gtestd:gmockd:pthread
+libs.googletest.versions.release-1110.version=release-1.11.0
+libs.googletest.versions.release-1120.version=release-1.12.0
+libs.googletest.versions.release-1121.version=release-1.12.1
+libs.googletest.versions.trunk.version=trunk
+libs.googletest.versions.trunk.staticliblink=gtest:gmock:pthread
+
+libs.gsl.name=GSL
+libs.gsl.url=https://github.com/Microsoft/GSL
+libs.gsl.description=Guidelines Support Library
+libs.gsl.packagedheaders=true
+libs.gsl.versions=100:200:210:300:301:trunk
+libs.gsl.versions.100.version=1.0.0
+libs.gsl.versions.200.version=2.0.0
+libs.gsl.versions.210.version=2.1.0
+libs.gsl.versions.300.version=3.0.0
+libs.gsl.versions.301.version=3.0.1
+libs.gsl.versions.trunk.version=trunk
+
+libs.hedley.name=hedley
+libs.hedley.url=https://github.com/nemequ/hedley
+libs.hedley.description=A C/C++ header to help move ifdefs out of your code
+libs.hedley.packagedheaders=true
+libs.hedley.versions=12:trunk
+libs.hedley.versions.12.version=12
+libs.hedley.versions.trunk.version=trunk
+
+libs.hfsm.name=HFSM
+libs.hfsm.url=https://github.com/andrew-gresyk/HFSM
+libs.hfsm.description=Hierarchical Finite State Machine Framework
+libs.hfsm.packagedheaders=true
+libs.hfsm.versions=08:010
+libs.hfsm.versions.08.version=0.8
+libs.hfsm.versions.010.version=0.10
+
+libs.hfsm2.name=hfsm2
+libs.hfsm2.packagedheaders=true
+libs.hfsm2.versions=1_2_1
+libs.hfsm2.versions.1_2_1.version=1_2_1
+
+libs.highway.name=Highway
+libs.highway.url=https://github.com/google/highway
+libs.highway.packagedheaders=true
+libs.highway.versions=0122:trunk
+libs.highway.staticliblink=hwy
+libs.highway.versions.0122.version=0.12.2
+libs.highway.versions.trunk.version=trunk
+
+libs.hip-amd.name=hip-amd
+libs.hip-amd.packagedheaders=true
+libs.hip-amd.versions=452:502:513:523:532:570:602:612:624:633:640
+libs.hip-amd.versions.452.version=4.5.2
+libs.hip-amd.versions.502.version=5.0.2
+libs.hip-amd.versions.513.version=5.1.3
+libs.hip-amd.versions.523.version=5.2.3
+libs.hip-amd.versions.532.version=5.3.2
+libs.hip-amd.versions.570.version=5.7.0
+libs.hip-amd.versions.602.version=6.0.2
+libs.hip-amd.versions.612.version=6.1.2
+libs.hip-amd.versions.624.version=6.2.4
+libs.hip-amd.versions.633.version=6.3.3
+libs.hip-amd.versions.640.version=6.4.0
+
+libs.hpx.name=hpx
+libs.hpx.packagedheaders=true
+libs.hpx.versions=1100
+libs.hpx.versions.1100.version=1.10.0
+
+libs.jsoncons.name=jsoncons
+libs.jsoncons.url=https://github.com/danielaparker/jsoncons
+libs.jsoncons.description=jsoncons is a C++, header-only library for constructing JSON and JSON-like data formats such as CBOR.
+libs.jsoncons.packagedheaders=true
+libs.jsoncons.versions=01683
+libs.jsoncons.versions.01683.version=0.168.3
+
+libs.jsoncpp.name=JsonCpp
+libs.jsoncpp.url=https://github.com/open-source-parsers/jsoncpp
+libs.jsoncpp.description=JsonCpp is a C++ library that allows manipulating JSON values, including serialization and deserialization to and from strings
+libs.jsoncpp.packagedheaders=true
+libs.jsoncpp.versions=194:195
+libs.jsoncpp.staticliblink=jsoncpp
+libs.jsoncpp.versions.194.version=1.9.4
+libs.jsoncpp.versions.195.version=1.9.5
+
+libs.jwt-cpp.name=jwt-cpp
+libs.jwt-cpp.url=https://github.com/Thalhammer/jwt-cpp
+libs.jwt-cpp.description=A header only library for creating and validating json web tokens in c++
+libs.jwt-cpp.packagedheaders=true
+libs.jwt-cpp.versions=070:060:052
+libs.jwt-cpp.versions.070.version=0.7.0
+libs.jwt-cpp.versions.060.version=0.6.0
+libs.jwt-cpp.versions.052.version=0.5.2
+
+libs.kokkos.name=kokkos
+libs.kokkos.url=https://github.com/kokkos/kokkos
+libs.kokkos.description=C++ Performance Portability Programming Model
+libs.kokkos.packagedheaders=true
+libs.kokkos.versions=4001:4100:4200:4201:4300:4301:4400:4401:4500:4501:4600:4601
+libs.kokkos.staticliblink=kokkoscore:kokkoscontainers:kokkossimd
+libs.kokkos.versions.4001.version=4.0.01
+libs.kokkos.versions.4100.version=4.1.00
+libs.kokkos.versions.4200.version=4.2.00
+libs.kokkos.versions.4201.version=4.2.01
+libs.kokkos.versions.4300.version=4.3.00
+libs.kokkos.versions.4301.version=4.3.01
+libs.kokkos.versions.4400.version=4.4.00
+libs.kokkos.versions.4401.version=4.4.01
+libs.kokkos.versions.4500.version=4.5.00
+libs.kokkos.versions.4501.version=4.5.01
+libs.kokkos.versions.4600.version=4.6.00
+libs.kokkos.versions.4601.version=4.6.01
+
+libs.kumi.name=kumi
+libs.kumi.url=https://github.com/jfalcou/kumi
+libs.kumi.description=C++20 Compact Tuple Library
+libs.kumi.packagedheaders=true
+libs.kumi.versions=10:20:21:30:trunk
+libs.kumi.versions.10.version=1.0
+libs.kumi.versions.20.version=2.0
+libs.kumi.versions.21.version=2.1
+libs.kumi.versions.30.version=3.0
+libs.kumi.versions.trunk.version=trunk
+
+libs.kvasir.name=Kvasir::mpl
+libs.kvasir.url=https://github.com/kvasir-io/mpl
+libs.kvasir.packagedheaders=true
+libs.kvasir.versions=development
+libs.kvasir.versions.development.version=development
+
+libs.libassert.name=libassert
+libs.libassert.url=https://github.com/jeremy-rifkin/libassert
+libs.libassert.description=The most over-engineered and overpowered C++ assertion library.
+libs.libassert.packagedheaders=true
+libs.libassert.versions=10:11:12:121:200-alpha:201:202:210
+libs.libassert.liblink=assert
+libs.libassert.versions.10.version=1.0
+libs.libassert.versions.11.version=1.1
+libs.libassert.versions.12.version=1.2
+libs.libassert.versions.121.version=1.2.1
+libs.libassert.versions.200-alpha.version=2.0.0-alpha
+libs.libassert.versions.201.version=2.0.1
+libs.libassert.versions.202.version=2.0.2
+libs.libassert.versions.210.version=2.1.0
+
+libs.libguarded.name=CsLibGuarded
+libs.libguarded.url=https://github.com/copperspice/cs_libguarded
+libs.libguarded.packagedheaders=true
+libs.libguarded.versions=libguarded-110:trunk
+libs.libguarded.versions.libguarded-110.version=libguarded-1.1.0
+libs.libguarded.versions.trunk.version=trunk
+
+libs.liblzma.name=liblzma
+libs.liblzma.packagedheaders=true
+libs.liblzma.versions=562
+libs.liblzma.versions.562.version=5.6.2
+
+libs.libsimdpp.name=libsimdpp
+libs.libsimdpp.url=https://github.com/p12tic/libsimdpp
+libs.libsimdpp.packagedheaders=true
+libs.libsimdpp.versions=21
+libs.libsimdpp.versions.21.version=2.1
+
+libs.llvm.name=LLVM
+libs.llvm.url=https://llvm.org/
+libs.llvm.description=LLVM
+libs.llvm.packagedheaders=true
+libs.llvm.versions=401:500:501:502:600:601:700:701:800:900:1000:1001:1100:1200:1201:1300:1301:1400:1406:1500:1507:1600:1606:1701:1706:1810:1910:2010:trunk
+libs.llvm.versions.401.version=4.0.1
+libs.llvm.versions.500.version=5.0.0
+libs.llvm.versions.501.version=5.0.1
+libs.llvm.versions.502.version=5.0.2
+libs.llvm.versions.600.version=6.0.0
+libs.llvm.versions.601.version=6.0.1
+libs.llvm.versions.700.version=7.0.0
+libs.llvm.versions.701.version=7.0.1
+libs.llvm.versions.800.version=8.0.0
+libs.llvm.versions.900.version=9.0.0
+libs.llvm.versions.1000.version=10.0.0
+libs.llvm.versions.1001.version=10.0.1
+libs.llvm.versions.1100.version=11.0.0
+libs.llvm.versions.1200.version=12.0.0
+libs.llvm.versions.1201.version=12.0.1
+libs.llvm.versions.1300.version=13.0.0
+libs.llvm.versions.1301.version=13.0.1
+libs.llvm.versions.1400.version=14.0.0
+libs.llvm.versions.1406.version=14.0.6
+libs.llvm.versions.1500.version=15.0.0
+libs.llvm.versions.1507.version=15.0.7
+libs.llvm.versions.1600.version=16.0.0
+libs.llvm.versions.1606.version=16.0.6
+libs.llvm.versions.1701.version=17.0.1
+libs.llvm.versions.1706.version=17.0.6
+libs.llvm.versions.1810.version=18.1.0
+libs.llvm.versions.1910.version=19.1.0
+libs.llvm.versions.1910.staticliblink=LLVMWindowsManifest:LLVMXRay:LLVMLibDriver:LLVMDlltoolDriver:LLVMTextAPIBinaryReader:LLVMCoverage:LLVMLineEditor:LLVMXCoreDisassembler:LLVMXCoreCodeGen:LLVMXCoreDesc:LLVMXCoreInfo:LLVMX86TargetMCA:LLVMX86Disassembler:LLVMX86AsmParser:LLVMX86CodeGen:LLVMX86Desc:LLVMX86Info:LLVMWebAssemblyDisassembler:LLVMWebAssemblyAsmParser:LLVMWebAssemblyCodeGen:LLVMWebAssemblyUtils:LLVMWebAssemblyDesc:LLVMWebAssemblyInfo:LLVMVEDisassembler:LLVMVEAsmParser:LLVMVECodeGen:LLVMVEDesc:LLVMVEInfo:LLVMSystemZDisassembler:LLVMSystemZAsmParser:LLVMSystemZCodeGen:LLVMSystemZDesc:LLVMSystemZInfo:LLVMSparcDisassembler:LLVMSparcAsmParser:LLVMSparcCodeGen:LLVMSparcDesc:LLVMSparcInfo:LLVMRISCVTargetMCA:LLVMRISCVDisassembler:LLVMRISCVAsmParser:LLVMRISCVCodeGen:LLVMRISCVDesc:LLVMRISCVInfo:LLVMPowerPCDisassembler:LLVMPowerPCAsmParser:LLVMPowerPCCodeGen:LLVMPowerPCDesc:LLVMPowerPCInfo:LLVMNVPTXCodeGen:LLVMNVPTXDesc:LLVMNVPTXInfo:LLVMMSP430Disassembler:LLVMMSP430AsmParser:LLVMMSP430CodeGen:LLVMMSP430Desc:LLVMMSP430Info:LLVMMipsDisassembler:LLVMMipsAsmParser:LLVMMipsCodeGen:LLVMMipsDesc:LLVMMipsInfo:LLVMLoongArchDisassembler:LLVMLoongArchAsmParser:LLVMLoongArchCodeGen:LLVMLoongArchDesc:LLVMLoongArchInfo:LLVMLanaiDisassembler:LLVMLanaiCodeGen:LLVMLanaiAsmParser:LLVMLanaiDesc:LLVMLanaiInfo:LLVMHexagonDisassembler:LLVMHexagonCodeGen:LLVMHexagonAsmParser:LLVMHexagonDesc:LLVMHexagonInfo:LLVMBPFDisassembler:LLVMBPFAsmParser:LLVMBPFCodeGen:LLVMBPFDesc:LLVMBPFInfo:LLVMAVRDisassembler:LLVMAVRAsmParser:LLVMAVRCodeGen:LLVMAVRDesc:LLVMAVRInfo:LLVMARMDisassembler:LLVMARMAsmParser:LLVMARMCodeGen:LLVMARMDesc:LLVMARMUtils:LLVMARMInfo:LLVMAMDGPUTargetMCA:LLVMAMDGPUDisassembler:LLVMAMDGPUAsmParser:LLVMAMDGPUCodeGen:LLVMAMDGPUDesc:LLVMAMDGPUUtils:LLVMAMDGPUInfo:LLVMAArch64Disassembler:LLVMAArch64AsmParser:LLVMAArch64CodeGen:LLVMAArch64Desc:LLVMAArch64Utils:LLVMAArch64Info:LLVMOrcDebugging:LLVMOrcJIT:LLVMWindowsDriver:LLVMMCJIT:LLVMJITLink:LLVMInterpreter:LLVMExecutionEngine:LLVMRuntimeDyld:LLVMOrcTargetProcess:LLVMOrcShared:LLVMDWP:LLVMDebugInfoLogicalView:LLVMDebugInfoGSYM:LLVMOption:LLVMObjectYAML:LLVMObjCopy:LLVMMCA:LLVMMCDisassembler:LLVMLTO:LLVMFrontendOpenACC:LLVMFrontendHLSL:LLVMFrontendDriver:LLVMExtensions:LLVMPasses:LLVMHipStdPar:LLVMCoroutines:LLVMCFGuard:LLVMipo:LLVMInstrumentation:LLVMVectorize:LLVMLinker:LLVMFrontendOpenMP:LLVMFrontendOffloading:LLVMDWARFLinkerParallel:LLVMDWARFLinkerClassic:LLVMDWARFLinker:LLVMGlobalISel:LLVMMIRParser:LLVMAsmPrinter:LLVMSelectionDAG:LLVMCodeGen:LLVMTarget:LLVMObjCARCOpts:LLVMCodeGenTypes:LLVMIRPrinter:LLVMInterfaceStub:LLVMFileCheck:LLVMFuzzMutate:LLVMScalarOpts:LLVMInstCombine:LLVMAggressiveInstCombine:LLVMTransformUtils:LLVMBitWriter:LLVMAnalysis:LLVMProfileData:LLVMSymbolize:LLVMDebugInfoBTF:LLVMDebugInfoPDB:LLVMDebugInfoMSF:LLVMDebugInfoDWARF:LLVMObject:LLVMTextAPI:LLVMMCParser:LLVMIRReader:LLVMAsmParser:LLVMMC:LLVMDebugInfoCodeView:LLVMBitReader:LLVMFuzzerCLI:LLVMCore:LLVMRemarks:LLVMBitstreamReader:LLVMBinaryFormat:LLVMTargetParser:LLVMTableGen:LLVMSupport:LLVMDemangle
+libs.llvm.versions.2010.version=20.1.0
+libs.llvm.versions.2010.staticliblink=LLVMWindowsManifest:LLVMXRay:LLVMLibDriver:LLVMDlltoolDriver:LLVMTextAPIBinaryReader:LLVMCoverage:LLVMLineEditor:LLVMXCoreDisassembler:LLVMXCoreCodeGen:LLVMXCoreDesc:LLVMXCoreInfo:LLVMX86TargetMCA:LLVMX86Disassembler:LLVMX86AsmParser:LLVMX86CodeGen:LLVMX86Desc:LLVMX86Info:LLVMWebAssemblyDisassembler:LLVMWebAssemblyAsmParser:LLVMWebAssemblyCodeGen:LLVMWebAssemblyUtils:LLVMWebAssemblyDesc:LLVMWebAssemblyInfo:LLVMVEDisassembler:LLVMVEAsmParser:LLVMVECodeGen:LLVMVEDesc:LLVMVEInfo:LLVMSystemZDisassembler:LLVMSystemZAsmParser:LLVMSystemZCodeGen:LLVMSystemZDesc:LLVMSystemZInfo:LLVMSparcDisassembler:LLVMSparcAsmParser:LLVMSparcCodeGen:LLVMSparcDesc:LLVMSparcInfo:LLVMRISCVTargetMCA:LLVMRISCVDisassembler:LLVMRISCVAsmParser:LLVMRISCVCodeGen:LLVMRISCVDesc:LLVMRISCVInfo:LLVMPowerPCDisassembler:LLVMPowerPCAsmParser:LLVMPowerPCCodeGen:LLVMPowerPCDesc:LLVMPowerPCInfo:LLVMNVPTXCodeGen:LLVMNVPTXDesc:LLVMNVPTXInfo:LLVMMSP430Disassembler:LLVMMSP430AsmParser:LLVMMSP430CodeGen:LLVMMSP430Desc:LLVMMSP430Info:LLVMMipsDisassembler:LLVMMipsAsmParser:LLVMMipsCodeGen:LLVMMipsDesc:LLVMMipsInfo:LLVMLoongArchDisassembler:LLVMLoongArchAsmParser:LLVMLoongArchCodeGen:LLVMLoongArchDesc:LLVMLoongArchInfo:LLVMLanaiDisassembler:LLVMLanaiCodeGen:LLVMLanaiAsmParser:LLVMLanaiDesc:LLVMLanaiInfo:LLVMHexagonDisassembler:LLVMHexagonCodeGen:LLVMHexagonAsmParser:LLVMHexagonDesc:LLVMHexagonInfo:LLVMBPFDisassembler:LLVMBPFAsmParser:LLVMBPFCodeGen:LLVMBPFDesc:LLVMBPFInfo:LLVMAVRDisassembler:LLVMAVRAsmParser:LLVMAVRCodeGen:LLVMAVRDesc:LLVMAVRInfo:LLVMARMDisassembler:LLVMARMAsmParser:LLVMARMCodeGen:LLVMARMDesc:LLVMARMUtils:LLVMARMInfo:LLVMAMDGPUTargetMCA:LLVMAMDGPUDisassembler:LLVMAMDGPUAsmParser:LLVMAMDGPUCodeGen:LLVMAMDGPUDesc:LLVMAMDGPUUtils:LLVMAMDGPUInfo:LLVMAArch64Disassembler:LLVMAArch64AsmParser:LLVMAArch64CodeGen:LLVMAArch64Desc:LLVMAArch64Utils:LLVMAArch64Info:LLVMOrcDebugging:LLVMOrcJIT:LLVMWindowsDriver:LLVMMCJIT:LLVMJITLink:LLVMInterpreter:LLVMExecutionEngine:LLVMRuntimeDyld:LLVMOrcTargetProcess:LLVMOrcShared:LLVMDWP:LLVMDebugInfoLogicalView:LLVMDebugInfoGSYM:LLVMOption:LLVMObjectYAML:LLVMObjCopy:LLVMMCA:LLVMMCDisassembler:LLVMLTO:LLVMFrontendOpenACC:LLVMFrontendHLSL:LLVMFrontendDriver:LLVMExtensions:LLVMPasses:LLVMHipStdPar:LLVMCoroutines:LLVMCFGuard:LLVMipo:LLVMInstrumentation:LLVMVectorize:LLVMLinker:LLVMFrontendOpenMP:LLVMFrontendOffloading:LLVMDWARFLinkerParallel:LLVMDWARFLinkerClassic:LLVMDWARFLinker:LLVMGlobalISel:LLVMMIRParser:LLVMAsmPrinter:LLVMSelectionDAG:LLVMCodeGen:LLVMTarget:LLVMObjCARCOpts:LLVMCodeGenTypes:LLVMIRPrinter:LLVMInterfaceStub:LLVMFileCheck:LLVMFuzzMutate:LLVMScalarOpts:LLVMInstCombine:LLVMAggressiveInstCombine:LLVMTransformUtils:LLVMBitWriter:LLVMAnalysis:LLVMProfileData:LLVMSymbolize:LLVMDebugInfoBTF:LLVMDebugInfoPDB:LLVMDebugInfoMSF:LLVMDebugInfoDWARF:LLVMObject:LLVMTextAPI:LLVMMCParser:LLVMIRReader:LLVMAsmParser:LLVMMC:LLVMDebugInfoCodeView:LLVMBitReader:LLVMFuzzerCLI:LLVMCore:LLVMRemarks:LLVMBitstreamReader:LLVMBinaryFormat:LLVMTargetParser:LLVMTableGen:LLVMSupport:LLVMDemangle
+libs.llvm.versions.trunk.version=trunk
+libs.llvm.versions.trunk.staticliblink=LLVMWindowsManifest:LLVMXRay:LLVMLibDriver:LLVMDlltoolDriver:LLVMTextAPIBinaryReader:LLVMCoverage:LLVMLineEditor:LLVMXCoreDisassembler:LLVMXCoreCodeGen:LLVMXCoreDesc:LLVMXCoreInfo:LLVMX86TargetMCA:LLVMX86Disassembler:LLVMX86AsmParser:LLVMX86CodeGen:LLVMX86Desc:LLVMX86Info:LLVMWebAssemblyDisassembler:LLVMWebAssemblyAsmParser:LLVMWebAssemblyCodeGen:LLVMWebAssemblyUtils:LLVMWebAssemblyDesc:LLVMWebAssemblyInfo:LLVMVEDisassembler:LLVMVEAsmParser:LLVMVECodeGen:LLVMVEDesc:LLVMVEInfo:LLVMSystemZDisassembler:LLVMSystemZAsmParser:LLVMSystemZCodeGen:LLVMSystemZDesc:LLVMSystemZInfo:LLVMSparcDisassembler:LLVMSparcAsmParser:LLVMSparcCodeGen:LLVMSparcDesc:LLVMSparcInfo:LLVMRISCVTargetMCA:LLVMRISCVDisassembler:LLVMRISCVAsmParser:LLVMRISCVCodeGen:LLVMRISCVDesc:LLVMRISCVInfo:LLVMPowerPCDisassembler:LLVMPowerPCAsmParser:LLVMPowerPCCodeGen:LLVMPowerPCDesc:LLVMPowerPCInfo:LLVMNVPTXCodeGen:LLVMNVPTXDesc:LLVMNVPTXInfo:LLVMMSP430Disassembler:LLVMMSP430AsmParser:LLVMMSP430CodeGen:LLVMMSP430Desc:LLVMMSP430Info:LLVMMipsDisassembler:LLVMMipsAsmParser:LLVMMipsCodeGen:LLVMMipsDesc:LLVMMipsInfo:LLVMLoongArchDisassembler:LLVMLoongArchAsmParser:LLVMLoongArchCodeGen:LLVMLoongArchDesc:LLVMLoongArchInfo:LLVMLanaiDisassembler:LLVMLanaiCodeGen:LLVMLanaiAsmParser:LLVMLanaiDesc:LLVMLanaiInfo:LLVMHexagonDisassembler:LLVMHexagonCodeGen:LLVMHexagonAsmParser:LLVMHexagonDesc:LLVMHexagonInfo:LLVMBPFDisassembler:LLVMBPFAsmParser:LLVMBPFCodeGen:LLVMBPFDesc:LLVMBPFInfo:LLVMAVRDisassembler:LLVMAVRAsmParser:LLVMAVRCodeGen:LLVMAVRDesc:LLVMAVRInfo:LLVMARMDisassembler:LLVMARMAsmParser:LLVMARMCodeGen:LLVMARMDesc:LLVMARMUtils:LLVMARMInfo:LLVMAMDGPUTargetMCA:LLVMAMDGPUDisassembler:LLVMAMDGPUAsmParser:LLVMAMDGPUCodeGen:LLVMAMDGPUDesc:LLVMAMDGPUUtils:LLVMAMDGPUInfo:LLVMAArch64Disassembler:LLVMAArch64AsmParser:LLVMAArch64CodeGen:LLVMAArch64Desc:LLVMAArch64Utils:LLVMAArch64Info:LLVMOrcDebugging:LLVMOrcJIT:LLVMWindowsDriver:LLVMMCJIT:LLVMJITLink:LLVMInterpreter:LLVMExecutionEngine:LLVMRuntimeDyld:LLVMOrcTargetProcess:LLVMOrcShared:LLVMDWP:LLVMDebugInfoLogicalView:LLVMDebugInfoGSYM:LLVMOption:LLVMObjectYAML:LLVMObjCopy:LLVMMCA:LLVMMCDisassembler:LLVMLTO:LLVMFrontendOpenACC:LLVMFrontendHLSL:LLVMFrontendDriver:LLVMExtensions:LLVMPasses:LLVMHipStdPar:LLVMCoroutines:LLVMCFGuard:LLVMipo:LLVMInstrumentation:LLVMVectorize:LLVMLinker:LLVMFrontendOpenMP:LLVMFrontendOffloading:LLVMDWARFLinkerParallel:LLVMDWARFLinkerClassic:LLVMDWARFLinker:LLVMGlobalISel:LLVMMIRParser:LLVMAsmPrinter:LLVMSelectionDAG:LLVMCodeGen:LLVMTarget:LLVMObjCARCOpts:LLVMCodeGenTypes:LLVMIRPrinter:LLVMInterfaceStub:LLVMFileCheck:LLVMFuzzMutate:LLVMScalarOpts:LLVMInstCombine:LLVMAggressiveInstCombine:LLVMTransformUtils:LLVMBitWriter:LLVMAnalysis:LLVMProfileData:LLVMSymbolize:LLVMDebugInfoBTF:LLVMDebugInfoPDB:LLVMDebugInfoMSF:LLVMDebugInfoDWARF:LLVMObject:LLVMTextAPI:LLVMMCParser:LLVMIRReader:LLVMAsmParser:LLVMMC:LLVMDebugInfoCodeView:LLVMBitReader:LLVMFuzzerCLI:LLVMCore:LLVMRemarks:LLVMBitstreamReader:LLVMBinaryFormat:LLVMTargetParser:LLVMTableGen:LLVMSupport:LLVMDemangle
+
+libs.magic_enum.name=magic_enum
+libs.magic_enum.url=https://github.com/Neargye/magic_enum
+libs.magic_enum.description=Header-only C++17 library provides static reflection for enums, work with any enum type without any macro or boilerplate code
+libs.magic_enum.packagedheaders=true
+libs.magic_enum.versions=073:trunk
+libs.magic_enum.versions.073.version=0.7.3
+libs.magic_enum.versions.trunk.version=trunk
+
+libs.mfem.name=mfem
+libs.mfem.url=https://mfem.org
+libs.mfem.description=MFEM is a free, lightweight, scalable C++ library for finite element methods.<br /><br />Note that the trunk version is no longer available, use v4.7 instead.
+libs.mfem.packagedheaders=true
+libs.mfem.versions=47
+libs.mfem.staticliblink=mfem
+libs.mfem.versions.47.version=4.7
+
+libs.mimicpp.name=mimic++
+libs.mimicpp.url=https://github.com/DNKpp/mimicpp
+libs.mimicpp.description=A modern and (mostly) macro free mocking framework.
+libs.mimicpp.packagedheaders=true
+libs.mimicpp.versions=6:5:4:3:2:1:trunk
+libs.mimicpp.versions.6.version=6
+libs.mimicpp.versions.5.version=5
+libs.mimicpp.versions.4.version=4
+libs.mimicpp.versions.3.version=3
+libs.mimicpp.versions.2.version=2
+libs.mimicpp.versions.1.version=1
+libs.mimicpp.versions.trunk.version=trunk
+
+libs.mlir.name=MLIR
+libs.mlir.url=https://mlir.llvm.org/
+libs.mlir.description=MLIR
+libs.mlir.packagedheaders=true
+libs.mlir.versions=1400:1405:1600:trunk
+libs.mlir.versions.1400.version=14.0.0
+libs.mlir.versions.1405.version=14.0.5
+libs.mlir.versions.1600.version=16.0.0
+libs.mlir.versions.trunk.version=trunk
+
+libs.mp-units.name=mp-units
+libs.mp-units.url=https://github.com/mpusz/mp-units
+libs.mp-units.description=A quantities and units library for C++<br /><br />Note that in some cases, you also need to add the {fmt} library.
+libs.mp-units.packagedheaders=true
+libs.mp-units.versions=v031:v040:v050:v060:v070:v080:v200:v210:v220:v230:v240:trunk
+libs.mp-units.versions.v031.version=v0.3.1
+libs.mp-units.versions.v040.version=v0.4.0
+libs.mp-units.versions.v050.version=v0.5.0
+libs.mp-units.versions.v060.version=v0.6.0
+libs.mp-units.versions.v070.version=v0.7.0
+libs.mp-units.versions.v080.version=v0.8.0
+libs.mp-units.versions.v200.version=v2.0.0
+libs.mp-units.versions.v210.version=v2.1.0
+libs.mp-units.versions.v220.version=v2.2.0
+libs.mp-units.versions.v230.version=v2.3.0
+libs.mp-units.versions.v240.version=v2.4.0
+libs.mp-units.versions.trunk.version=trunk
+
+libs.nlohmann_json.name=nlohmann::json
+libs.nlohmann_json.url=https://github.com/nlohmann/json
+libs.nlohmann_json.packagedheaders=true
+libs.nlohmann_json.versions=211:312:360:361:373:380:391:3105:3111:trunk
+libs.nlohmann_json.versions.211.version=2.1.1
+libs.nlohmann_json.versions.312.version=3.1.2
+libs.nlohmann_json.versions.360.version=3.6.0
+libs.nlohmann_json.versions.361.version=3.6.1
+libs.nlohmann_json.versions.373.version=3.7.3
+libs.nlohmann_json.versions.380.version=3.8.0
+libs.nlohmann_json.versions.391.version=3.9.1
+libs.nlohmann_json.versions.3105.version=3.10.5
+libs.nlohmann_json.versions.3111.version=3.11.1
+libs.nlohmann_json.versions.trunk.version=trunk
+
+libs.nsimd.name=NSIMD
+libs.nsimd.url=https://github.com/agenium-scale/nsimd/
+libs.nsimd.packagedheaders=true
+libs.nsimd.versions=v22
+libs.nsimd.versions.v22.version=v2.2
+
+libs.option.name=option
+libs.option.url=https://github.com/NUCLEAR-BOMB/option
+libs.option.description=Replacement for std::optional with efficient memory usage and additional features
+libs.option.packagedheaders=true
+libs.option.versions=131
+libs.option.versions.131.version=1.3.1
+
+libs.pcre2.name=PCRE2
+libs.pcre2.url=https://www.pcre.org/
+libs.pcre2.description=PCRE2 with 16 bit support
+libs.pcre2.packagedheaders=true
+libs.pcre2.versions=pcre2-1042
+libs.pcre2.liblink=pcre2-16
+libs.pcre2.versions.pcre2-1042.version=pcre2-10.42
+
+libs.pegtl.name=PEGTL
+libs.pegtl.url=https://github.com/taocpp/PEGTL
+libs.pegtl.description=Parsing Expression Grammar Template Library
+libs.pegtl.packagedheaders=true
+libs.pegtl.versions=280:trunk
+libs.pegtl.versions.280.version=2.8.0
+libs.pegtl.versions.trunk.version=trunk
+
+libs.protobuf.name=protobuf
+libs.protobuf.packagedheaders=true
+libs.protobuf.versions=3201
+libs.protobuf.versions.3201.version=3.20.1
+
+libs.proxy.name=Proxy
+libs.proxy.url=https://github.com/microsoft/proxy
+libs.proxy.description=C++20 Polymorphism Library
+libs.proxy.packagedheaders=true
+libs.proxy.versions=330:trunk
+libs.proxy.versions.330.version=3.3.0
+libs.proxy.versions.trunk.version=trunk
+
+libs.pugixml.name=pugixml
+libs.pugixml.url=https://pugixml.org/
+libs.pugixml.description=pugixml is a light-weight C++ XML processing library
+libs.pugixml.packagedheaders=true
+libs.pugixml.versions=1114
+libs.pugixml.staticliblink=pugixml
+libs.pugixml.versions.1114.version=1.11.4
+
+libs.qt.name=Qt
+libs.qt.url=https://www.qt.io
+libs.qt.packagedheaders=true
+libs.qt.versions=642:652:660:670:680:690
+libs.qt.liblink=Qt6Cored
+libs.qt.versions.642.version=6.4.2
+libs.qt.versions.652.version=6.5.2
+libs.qt.versions.660.version=6.6.0
+libs.qt.versions.670.version=6.7.0
+libs.qt.versions.680.version=6.8.0
+libs.qt.versions.690.version=6.9.0
+
+libs.raberu.name=Raberu
+libs.raberu.url=https://github.com/jfalcou/raberu
+libs.raberu.description=C++20 Named Parameters Library
+libs.raberu.packagedheaders=true
+libs.raberu.versions=10:11:trunk
+libs.raberu.versions.10.version=1.0
+libs.raberu.versions.11.version=1.1
+libs.raberu.versions.trunk.version=trunk
+
+libs.rangesv3.name=range-v3
+libs.rangesv3.url=https://github.com/ericniebler/range-v3
+libs.rangesv3.packagedheaders=true
+libs.rangesv3.versions=030:035:036:040:091:0100:0110:0120:trunk
+libs.rangesv3.versions.030.version=0.3.0
+libs.rangesv3.versions.035.version=0.3.5
+libs.rangesv3.versions.036.version=0.3.6
+libs.rangesv3.versions.040.version=0.4.0
+libs.rangesv3.versions.091.version=0.9.1
+libs.rangesv3.versions.0100.version=0.10.0
+libs.rangesv3.versions.0110.version=0.11.0
+libs.rangesv3.versions.0120.version=0.12.0
+libs.rangesv3.versions.trunk.version=trunk
+
+libs.rapidjson.name=RapidJSON
+libs.rapidjson.url=https://rapidjson.org/
+libs.rapidjson.description=A fast JSON parser/generator for C++ with both SAX/DOM style API
+libs.rapidjson.packagedheaders=true
+libs.rapidjson.versions=110:102:101:100:trunk
+libs.rapidjson.versions.110.version=1.1.0
+libs.rapidjson.versions.102.version=1.0.2
+libs.rapidjson.versions.101.version=1.0.1
+libs.rapidjson.versions.100.version=1.0.0
+libs.rapidjson.versions.trunk.version=trunk
+
+libs.reactive_plus_plus.name=ReactivePlusPlus
+libs.reactive_plus_plus.url=https://github.com/victimsnino/ReactivePlusPlus
+libs.reactive_plus_plus.description=Functional reactive programming library for c++20 inspired by ReactiveX
+libs.reactive_plus_plus.packagedheaders=true
+libs.reactive_plus_plus.versions=v023:v2
+libs.reactive_plus_plus.versions.v023.version=v0.2.3
+libs.reactive_plus_plus.versions.v2.version=v2
+
+libs.scnlib.name=scnlib
+libs.scnlib.url=https://scnlib.dev
+libs.scnlib.description=scnlib is a modern C++ library for scanning values. Think of it as more C++-y scanf, or the inverse of fmtlib.
+libs.scnlib.packagedheaders=true
+libs.scnlib.versions=04:112:200:203:302:401
+libs.scnlib.staticliblink=scn
+libs.scnlib.versions.04.version=0.4
+libs.scnlib.versions.112.version=1.1.2
+libs.scnlib.versions.200.version=2.0.0
+libs.scnlib.versions.200.staticliblink=scn:simdutf
+libs.scnlib.versions.203.version=2.0.3
+libs.scnlib.versions.203.staticliblink=scn:simdutf
+libs.scnlib.versions.302.version=3.0.2
+libs.scnlib.versions.401.version=4.0.1
+
+libs.seastar.name=Seastar
+libs.seastar.url=http://seastar.io
+libs.seastar.description=SeaStar is an event-driven framework allowing you to write non-blocking, asynchronous code in a relatively straightforward manner.
+libs.seastar.packagedheaders=true
+libs.seastar.versions=seastar-18080:seastar-22110:trunk
+libs.seastar.versions.seastar-18080.version=seastar-18.08.0
+libs.seastar.versions.seastar-22110.version=seastar-22.11.0
+libs.seastar.versions.trunk.version=trunk
+
+libs.simdjson.name=simdjson
+libs.simdjson.url=https://github.com/simdjson/simdjson
+libs.simdjson.packagedheaders=true
+libs.simdjson.versions=301:315:3100
+libs.simdjson.staticliblink=simdjson
+libs.simdjson.versions.301.version=3.0.1
+libs.simdjson.versions.315.version=3.1.5
+libs.simdjson.versions.3100.version=3.10.0
+
+libs.spdlog.name=spdlog
+libs.spdlog.url=https://github.com/gabime/spdlog
+libs.spdlog.packagedheaders=true
+libs.spdlog.versions=150:160:161:170:180:192:1100:1110:1120:1130:1141:1152
+libs.spdlog.staticliblink=spdlogd
+libs.spdlog.versions.150.version=1.5.0
+libs.spdlog.versions.160.version=1.6.0
+libs.spdlog.versions.161.version=1.6.1
+libs.spdlog.versions.170.version=1.7.0
+libs.spdlog.versions.180.version=1.8.0
+libs.spdlog.versions.192.version=1.9.2
+libs.spdlog.versions.1100.version=1.10.0
+libs.spdlog.versions.1110.version=1.11.0
+libs.spdlog.versions.1120.version=1.12.0
+libs.spdlog.versions.1130.version=1.13.0
+libs.spdlog.versions.1141.version=1.14.1
+libs.spdlog.versions.1152.version=1.15.2
+
+libs.spy.name=SPY
+libs.spy.url=https://github.com/jfalcou/spy
+libs.spy.description=C++17 constexpr settings detectors
+libs.spy.packagedheaders=true
+libs.spy.versions=004:100:110:trunk
+libs.spy.versions.004.version=0.0.4
+libs.spy.versions.100.version=1.0.0
+libs.spy.versions.110.version=1.1.0
+libs.spy.versions.trunk.version=trunk
+
+libs.tlexpected.name=tl::expected
+libs.tlexpected.url=https://github.com/TartanLlama/expected
+libs.tlexpected.description=Single header implementation of std::expected with functional-style extensions.
+libs.tlexpected.packagedheaders=true
+libs.tlexpected.versions=100:trunk
+libs.tlexpected.versions.100.version=1.0.0
+libs.tlexpected.versions.trunk.version=trunk
+
+libs.toml11.name=toml11
+libs.toml11.url=https://github.com/ToruNiina/toml11
+libs.toml11.description=toml11 is a C++11 (or later) header-only toml parser/encoder depending only on C++ standard library
+libs.toml11.packagedheaders=true
+libs.toml11.versions=371:trunk
+libs.toml11.versions.371.version=3.7.1
+libs.toml11.versions.trunk.version=trunk
+
+libs.tomlplusplus.name=toml++
+libs.tomlplusplus.url=https://marzer.github.io/tomlplusplus
+libs.tomlplusplus.description=TOML parser and serializer for modern C++
+libs.tomlplusplus.packagedheaders=true
+libs.tomlplusplus.versions=133:124:trunk
+libs.tomlplusplus.versions.133.version=1.3.3
+libs.tomlplusplus.versions.124.version=1.2.4
+libs.tomlplusplus.versions.trunk.version=trunk
+
+libs.tts.name=TTS
+libs.tts.url=https://github.com/jfalcou/tts
+libs.tts.description=C++20 Unit Test Framework for Numerical Applications
+libs.tts.packagedheaders=true
+libs.tts.versions=01:02:10:20:21:trunk
+libs.tts.versions.01.version=0.1
+libs.tts.versions.02.version=0.2
+libs.tts.versions.10.version=1.0
+libs.tts.versions.20.version=2.0
+libs.tts.versions.21.version=2.1
+libs.tts.versions.trunk.version=trunk
+
+libs.ureact.name=µReact
+libs.ureact.url=https://github.com/YarikTH/ureact
+libs.ureact.description=Functional reactive programming library for c++
+libs.ureact.packagedheaders=true
+libs.ureact.versions=main:dev
+libs.ureact.versions.main.version=main
+libs.ureact.versions.dev.version=dev
+
+libs.vcl.name=VCL
+libs.vcl.url=https://github.com/vectorclass
+libs.vcl.description=Agner Fog's vector class library
+libs.vcl.packagedheaders=true
+libs.vcl.versions=20001:20103
+libs.vcl.versions.20001.version=2.00.01
+libs.vcl.versions.20103.version=2.01.03
+
+libs.vcl1.name=vcl1
+libs.vcl1.packagedheaders=true
+libs.vcl1.versions=130
+libs.vcl1.versions.130.version=1.30
+
+libs.xercesc.name=Xerces-C++
+libs.xercesc.url=https://xerces.apache.org/
+libs.xercesc.description=Xerces-C++ is a validating XML parser written in a portable subset of C++
+libs.xercesc.packagedheaders=true
+libs.xercesc.versions=323
+libs.xercesc.staticliblink=xerces-c
+libs.xercesc.versions.323.version=3.2.3
+
+libs.xsimd.name=xsimd
+libs.xsimd.url=http://xsimd.readthedocs.io
+libs.xsimd.packagedheaders=true
+libs.xsimd.versions=614:700:760:803:805:810:900:901:trunk
+libs.xsimd.versions.614.version=6.1.4
+libs.xsimd.versions.700.version=7.0.0
+libs.xsimd.versions.760.version=7.6.0
+libs.xsimd.versions.803.version=8.0.3
+libs.xsimd.versions.805.version=8.0.5
+libs.xsimd.versions.810.version=8.1.0
+libs.xsimd.versions.900.version=9.0.0
+libs.xsimd.versions.901.version=9.0.1
+libs.xsimd.versions.trunk.version=trunk
+
+libs.xtensor.name=xtensor
+libs.xtensor.url=http://xtensor.readthedocs.io
+libs.xtensor.packagedheaders=true
+libs.xtensor.versions=0174:0182:0194:trunk
+libs.xtensor.versions.0174.version=0.17.4
+libs.xtensor.versions.0182.version=0.18.2
+libs.xtensor.versions.0194.version=0.19.4
+libs.xtensor.versions.trunk.version=trunk
+
+libs.xtl.name=xtl
+libs.xtl.url=http://xtl.readthedocs.io
+libs.xtl.packagedheaders=true
+libs.xtl.versions=0416:053:trunk
+libs.xtl.versions.0416.version=0.4.16
+libs.xtl.versions.053.version=0.5.3
+libs.xtl.versions.trunk.version=trunk
+
+libs.array.name=Array
+libs.array.url=https://github.com/dsharlet/array
+libs.array.description=A multidimensional array class for C++, with optional compile-time parameters
+libs.array.packagedheaders=true
+libs.array.versions=master
+libs.array.versions.master.version=master
+
+libs.beman_iterator_interface.name=beman.iterator_interface
+libs.beman_iterator_interface.url=https://github.com/bemanproject/iterator_interface
+libs.beman_iterator_interface.packagedheaders=true
+libs.beman_iterator_interface.versions=main
+libs.beman_iterator_interface.staticliblink=beman.iterator_interface
+libs.beman_iterator_interface.versions.main.version=main
+
+libs.cppcoro.name=cppcoro
+libs.cppcoro.url=https://github.com/andreasbuhr/cppcoro
+libs.cppcoro.description=Coroutine abstractions for the Coroutines TS
+libs.cppcoro.packagedheaders=true
+libs.cppcoro.versions=trunk
+libs.cppcoro.staticliblink=cppcoro
+libs.cppcoro.versions.trunk.version=trunk
+
+libs.crosscables.name=Crosscables
+libs.crosscables.url=https://github.com/partouf/Crosscables
+libs.crosscables.description=A statically linked C++98 cross-platform and multi-purpose library. Includes templates, classes and functions for custom strings, encoding, containers, threading, filesystem and networking.
+libs.crosscables.packagedheaders=true
+libs.crosscables.versions=trunk
+libs.crosscables.staticliblink=Jumpropes:Groundfloor
+libs.crosscables.versions.trunk.version=trunk
+
+libs.hfsm_trunk.name=hfsm_trunk
+libs.hfsm_trunk.packagedheaders=true
+libs.hfsm_trunk.versions=trunk
+libs.hfsm_trunk.versions.trunk.version=trunk
+
+libs.lexy_trunk.name=lexy_trunk
+libs.lexy_trunk.packagedheaders=true
+libs.lexy_trunk.versions=trunk
+libs.lexy_trunk.versions.trunk.version=trunk
+
+libs.stdexec.name=stdexec (std::execution)
+libs.stdexec.url=https://github.com/NVIDIA/stdexec
+libs.stdexec.description=The proposed C++ framework for asynchronous and parallel programming
+libs.stdexec.packagedheaders=true
+libs.stdexec.versions=trunk
+libs.stdexec.versions.trunk.version=trunk
+
+libs.taskflow.name=taskflow
+libs.taskflow.url=https://github.com/taskflow/taskflow
+libs.taskflow.description=taskflow is a C++ Header-only General-purpose Parallel and Heterogeneous Task Programming System
+libs.taskflow.packagedheaders=true
+libs.taskflow.versions=trunk
+libs.taskflow.versions.trunk.version=trunk
+
+libs.unifex.name=libunifex
+libs.unifex.url=https://github.com/facebookexperimental/libunifex
+libs.unifex.packagedheaders=true
+libs.unifex.versions=trunk
+libs.unifex.staticliblink=unifex
+libs.unifex.versions.trunk.version=trunk
+
+libs.ztdcuneicode.name=ztd.cuneicode
+libs.ztdcuneicode.url=https://github.com/soasis/cuneicode
+libs.ztdcuneicode.description=Robust C-style text encoding library<br /><br />Note that to use, you must add the "ztd.idk" and "ztd.encoding_tables" libraries
+libs.ztdcuneicode.packagedheaders=true
+libs.ztdcuneicode.versions=main
+libs.ztdcuneicode.staticliblink=ztd.cuneicode
+libs.ztdcuneicode.versions.main.version=main
+
+libs.ztdencodingtables.name=ztd.encoding_tables
+libs.ztdencodingtables.url=https://github.com/soasis/encoding_tables
+libs.ztdencodingtables.description=Collection of encoding tables for C and C++ programs to handle most table-driven and other styles of single and multi-byte encodings<br /><br />Note that to use, you must add the "ztd.idk" library
+libs.ztdencodingtables.packagedheaders=true
+libs.ztdencodingtables.versions=main
+libs.ztdencodingtables.staticliblink=ztd.encoding_tables
+libs.ztdencodingtables.versions.main.version=main
+
+libs.ztdidk.name=ztd.idk
+libs.ztdidk.url=https://github.com/soasis/idk
+libs.ztdidk.description=Industrial Development Kit (IDK) for core utilities (bit functions, comparison functions, and more) found across software engineering disciplines
+libs.ztdidk.packagedheaders=true
+libs.ztdidk.versions=main
+libs.ztdidk.staticliblink=ztd.idk
+libs.ztdidk.versions.main.version=main
+
+libs.ztdplatform.name=ztd.platform
+libs.ztdplatform.url=https://github.com/soasis/platform
+libs.ztdplatform.description=A library containing a myriad of platform-specific utilities and directives<br /><br />Note that to use, you must add the "ztd.idk" library
+libs.ztdplatform.packagedheaders=true
+libs.ztdplatform.versions=main
+libs.ztdplatform.staticliblink=ztd.platform
+libs.ztdplatform.versions.main.version=main
+
 
 tools=MicrosoftAnalysisTool
 tools.MicrosoftAnalysisTool.exe=Z:/compilers/msvc/14.37.32822-14.37.32826.1/bin/Hostx64/x64/cl.exe
diff --git a/etc/config/c.amazon.properties b/etc/config/c.amazon.properties
index 476ab1d7a..c68c57769 100644
--- a/etc/config/c.amazon.properties
+++ b/etc/config/c.amazon.properties
@@ -3705,7 +3705,7 @@ compiler.tinycc0927.semver=0.9.27
 
 #################################
 # Zig cc
-group.zigcc.compilers=zcc060:zcc070:zcc071:zcc080:zcc090:zcc0100:zcc0110:zcc0120:zcc0121:zcc0130:zcc0140:zcctrunk
+group.zigcc.compilers=zcc060:zcc070:zcc071:zcc080:zcc090:zcc0100:zcc0110:zcc0120:zcc0121:zcc0130:zcc0140:zcc0141:zcctrunk
 group.zigcc.intelAsm=-mllvm --x86-asm-syntax=intel
 group.zigcc.objdumper=/opt/compiler-explorer/gcc-10.2.0/bin/objdump
 group.zigcc.options=
@@ -3740,6 +3740,8 @@ compiler.zcc0130.exe=/opt/compiler-explorer/zig-0.13.0/zig
 compiler.zcc0130.semver=0.13.0
 compiler.zcc0140.exe=/opt/compiler-explorer/zig-0.14.0/zig
 compiler.zcc0140.semver=0.14.0
+compiler.zcc0141.exe=/opt/compiler-explorer/zig-0.14.1/zig
+compiler.zcc0141.semver=0.14.1
 compiler.zcctrunk.exe=/opt/compiler-explorer/zig-master/zig
 compiler.zcctrunk.semver=trunk
 compiler.zcctrunk.isNightly=true
diff --git a/etc/config/go.amazon.properties b/etc/config/go.amazon.properties
index 56d75fba5..89b62a304 100644
--- a/etc/config/go.amazon.properties
+++ b/etc/config/go.amazon.properties
@@ -166,10 +166,10 @@ compiler.gl12113.goroot=/opt/compiler-explorer/golang-1.21.13/go
 compiler.gl12212.exe=/opt/compiler-explorer/golang-1.22.12/go/bin/go
 compiler.gl12212.semver=1.22.12
 compiler.gl12212.goroot=/opt/compiler-explorer/golang-1.22.12/go
-compiler.gl1238.exe=/opt/compiler-explorer/golang-1.23.2/go/bin/go
+compiler.gl1238.exe=/opt/compiler-explorer/golang-1.23.8/go/bin/go
 compiler.gl1238.semver=1.23.8
 compiler.gl1238.goroot=/opt/compiler-explorer/golang-1.23.8/go
-compiler.gl1242.exe=/opt/compiler-explorer/golang-1.24.8/go/bin/go
+compiler.gl1242.exe=/opt/compiler-explorer/golang-1.24.2/go/bin/go
 compiler.gl1242.semver=1.24.2
 compiler.gl1242.goroot=/opt/compiler-explorer/golang-1.24.2/go
 compiler.gltip.exe=/opt/compiler-explorer/go-tip/bin/go
diff --git a/etc/config/rust.amazon.properties b/etc/config/rust.amazon.properties
index 5c1b8e8c6..8f4328f9b 100644
--- a/etc/config/rust.amazon.properties
+++ b/etc/config/rust.amazon.properties
@@ -1011,7 +1011,7 @@ libs.zerocopy.versions.0732.path=libzerocopy.rlib
 #################################
 # Installed tools
 
-tools=clippy:ldd:llvm-mcatrunk:llvm-dwarfdumptrunk:osacatrunk:pahole:readelf:nm:strings:rustfmt1436:bloaty11
+tools=clippy:miri:ldd:llvm-mcatrunk:llvm-dwarfdumptrunk:osacatrunk:pahole:readelf:nm:strings:rustfmt1436:bloaty11
 
 tools.clippy.name=Clippy
 # overridden by `runTool`
@@ -1024,6 +1024,13 @@ tools.clippy.includeKey=supportsClippy
 # https://github.com/compiler-explorer/compiler-explorer/pull/7477#pullrequestreview-2662514775
 tools.clippy.exclude=r1280:r1271:r1270:r1260:r1250:r1240:r1230:r1220:r1210:r1200:r1190:r1180:r1170:r1160:r1151:r1140:r1130:r1120:r1110:r1100:r190$:r180$:r170$:r160$:r150$:r140$:r130$:r120$:r110$:r100$
 
+tools.miri.name=Miri nightly
+tools.miri.exe=/opt/compiler-explorer/rust-miri-nightly/bin/miri
+tools.miri.options=--sysroot=/opt/compiler-explorer/rust-miri-nightly/miri-sysroot --color=always
+tools.miri.type=independent
+tools.miri.class=miri-tool
+tools.miri.stdinHint=disabled
+
 tools.ldd.name=ldd
 tools.ldd.exe=/usr/bin/ldd
 tools.ldd.type=postcompilation
diff --git a/etc/config/zig.amazon.properties b/etc/config/zig.amazon.properties
index f1299b770..5e7972d07 100644
--- a/etc/config/zig.amazon.properties
+++ b/etc/config/zig.amazon.properties
@@ -1,8 +1,8 @@
 compilers=&zig
-defaultCompiler=z0140
+defaultCompiler=z0141
 
 # When adding a compiler here, please add it in the &zigcc and &zigcxx compiler groups too (C and C++ files, respectively)
-group.zig.compilers=ztrunk:z020:z030:z040:z050:z060:z070:z071:z080:z090:z0100:z0110:z0120:z0121:z0130:z0140
+group.zig.compilers=ztrunk:z020:z030:z040:z050:z060:z070:z071:z080:z090:z0100:z0110:z0120:z0121:z0130:z0140:z0141
 group.zig.objdumper=/opt/compiler-explorer/gcc-11.1.0/bin/objdump
 group.zig.isSemVer=true
 group.zig.baseName=zig
@@ -46,6 +46,8 @@ compiler.z0130.exe=/opt/compiler-explorer/zig-0.13.0/zig
 compiler.z0130.semver=0.13.0
 compiler.z0140.exe=/opt/compiler-explorer/zig-0.14.0/zig
 compiler.z0140.semver=0.14.0
+compiler.z0141.exe=/opt/compiler-explorer/zig-0.14.1/zig
+compiler.z0141.semver=0.14.1
 
 #################################
 #################################
diff --git a/lib/base-compiler.ts b/lib/base-compiler.ts
index ba95a2602..90938867f 100644
--- a/lib/base-compiler.ts
+++ b/lib/base-compiler.ts
@@ -960,6 +960,19 @@ export class BaseCompiler {
         });
     }
 
+    getSharedLibraryBinPaths(libraries: SelectedLibraryVersion[], dirPath?: string): string[] {
+        return libraries.flatMap(selectedLib => {
+            const foundVersion = this.findLibVersion(selectedLib);
+            if (!foundVersion) return [];
+
+            const paths: string[] = [];
+            if (this.buildenvsetup && !this.buildenvsetup.extractAllToRoot && dirPath) {
+                paths.push(path.join(dirPath, selectedLib.id, 'bin'));
+            }
+            return paths;
+        });
+    }
+
     protected getSharedLibraryPathsAsArguments(
         libraries: SelectedLibraryVersion[],
         libDownloadPath: string | undefined,
@@ -2168,6 +2181,13 @@ export class BaseCompiler {
             );
         }
 
+        executeParameters.env.PATH = [
+            ...this.getSharedLibraryBinPaths(key.libraries, buildResult.dirPath),
+            executeParameters.env.PATH,
+        ]
+            .filter(Boolean)
+            .join(path.delimiter);
+
         const execTriple = await RemoteExecutionQuery.guessExecutionTripleForBuildresult(buildResult);
         if (!this.compiler.emulated && !matchesCurrentHost(execTriple)) {
             if (await RemoteExecutionQuery.isPossible(execTriple)) {
diff --git a/lib/binaries/win-utils.ts b/lib/binaries/win-utils.ts
index 44a28025a..722488cb6 100644
--- a/lib/binaries/win-utils.ts
+++ b/lib/binaries/win-utils.ts
@@ -101,9 +101,13 @@ export async function copyNeededDlls(
     execoptions: ExecutionOptionsWithEnv,
 ): Promise<void> {
     const winutils = new WinUtils(execFunction, objdumper, execoptions);
-    const dlls = await winutils.get_dlls_used(executableFilename);
-    for (const dll of dlls) {
-        const infolder = path.join(dirPath, path.basename(dll));
-        await fs.copyFile(dll, infolder);
+    try {
+        const dlls = await winutils.get_dlls_used(executableFilename);
+        for (const dll of dlls) {
+            const infolder = path.join(dirPath, path.basename(dll));
+            await fs.copyFile(dll, infolder);
+        }
+    } catch (e) {
+        logger.error(`Error while retreiving or copying dll dependencies of ${executableFilename}`);
     }
 }
diff --git a/lib/buildenvsetup/base.ts b/lib/buildenvsetup/base.ts
index b2c7b77c2..c19dc86b4 100644
--- a/lib/buildenvsetup/base.ts
+++ b/lib/buildenvsetup/base.ts
@@ -50,6 +50,7 @@ export class BuildEnvSetupBase {
     public compilerArch: string | false;
     protected compilerTypeOrGCC: any;
     public compilerSupportsX86: boolean;
+    public compilerSupportsAMD64: boolean;
     public defaultLibCxx: string;
 
     constructor(compilerInfo: CompilerInfo, env: CompilationEnvironment) {
@@ -61,22 +62,54 @@ export class BuildEnvSetupBase {
         this.compilerTypeOrGCC = compilerInfo.compilerType || 'gcc';
         if (this.compilerTypeOrGCC === 'clang-intel') this.compilerTypeOrGCC = 'gcc';
         this.compilerSupportsX86 = !this.compilerArch;
+        this.compilerSupportsAMD64 = this.compilerSupportsX86;
         this.defaultLibCxx = 'libstdc++';
     }
 
     async initialise(execCompilerCachedFunc: ExecCompilerCachedFunc) {
         if (this.compilerArch) return;
+
         await this.hasSupportForArch(execCompilerCachedFunc, 'x86')
             .then(res => (this.compilerSupportsX86 = res))
             .catch(error => {
                 // Log & keep going, we assume x86 is supported
                 logger.error('Could not check for x86 arch support', error);
             });
+
+        if (this.compilerTypeOrGCC === 'win32-vc') {
+            await this.hasSupportForArch(execCompilerCachedFunc, 'x86_64')
+                .then(res => (this.compilerSupportsAMD64 = res))
+                .catch(error => {
+                    logger.error('Could not check for x86_64 arch support', error);
+                });
+
+            if (this.compilerSupportsX86) {
+                this.compilerArch = 'x86';
+            } else if (this.compilerSupportsAMD64) {
+                this.compilerArch = 'x86_64';
+            }
+        }
+
+        logger.debug(
+            `Compiler ${this.compiler.exe} supports x86: ${this.compilerSupportsX86}, x86_64: ${this.compilerSupportsAMD64}`,
+        );
+    }
+
+    protected get_support_check_text(group: string, compilerType: string, arch: string) {
+        if (group.includes('icc')) {
+            if (arch === 'x86') return '-m32';
+            if (arch === 'x86_64') return '-m64';
+        } else if (compilerType === 'win32-vc') {
+            if (arch === 'x86') return 'for x86';
+            if (arch === 'x86_64') return 'for x64';
+            if (arch === 'arm64') return 'for ARM64';
+        }
+
+        return arch;
     }
 
     async hasSupportForArch(execCompilerCached: ExecCompilerCachedFunc, arch: Arch): Promise<boolean> {
         let result: any;
-        let searchFor = arch as string;
         if (this.compiler.exe.includes('icpx')) {
             return arch === 'x86' || arch === 'x86_64';
         }
@@ -85,26 +118,29 @@ export class BuildEnvSetupBase {
         }
         if (this.compiler.group === 'icc') {
             result = await execCompilerCached(this.compiler.exe, ['--help']);
-            if (arch === 'x86') {
-                searchFor = '-m32';
-            } else if (arch === 'x86_64') {
-                searchFor = '-m64';
-            }
-        } else if (this.compilerTypeOrGCC === 'gcc') {
+        } else if (this.compilerTypeOrGCC === 'gcc' || this.compilerTypeOrGCC === 'win32-mingw-gcc') {
             if (this.compiler.exe.includes('/icpx')) {
                 return arch === 'x86' || arch === 'x86_64';
             }
             result = await execCompilerCached(this.compiler.exe, ['--target-help']);
-        } else if (this.compilerTypeOrGCC === 'clang') {
+        } else if (this.compilerTypeOrGCC === 'clang' || this.compilerTypeOrGCC === 'win32-mingw-clang') {
             const binpath = path.dirname(this.compiler.exe);
             const llc = path.join(binpath, 'llc');
             if (await utils.fileExists(llc)) {
                 result = await execCompilerCached(llc, ['--version']);
             }
+        } else if (this.compilerTypeOrGCC === 'win32-vc') {
+            result = await execCompilerCached(this.compiler.exe, []);
         }
 
         if (result) {
-            return result.stdout ? result.stdout.includes(searchFor) : false;
+            const searchFor = this.get_support_check_text(this.compiler.group, this.compilerTypeOrGCC, arch as string);
+            if (this.compilerTypeOrGCC === 'win32-vc' && result.stderr) return result.stderr.includes(searchFor);
+            if (result.stdout) {
+                return result.stdout.includes(searchFor);
+            }
+
+            return false;
         }
 
         return false;
@@ -170,6 +206,12 @@ export class BuildEnvSetupBase {
     }
 
     getTarget(key: CacheKey): string {
+        if (this.compilerTypeOrGCC === 'win32-vc') {
+            if (this.compilerSupportsX86) return 'x86';
+            if (this.compilerSupportsAMD64) return 'x86_64';
+            return '';
+        }
+
         if (!this.compilerSupportsX86) return '';
         if (this.compilerArch) return this.compilerArch;
 
diff --git a/lib/buildenvsetup/ceconan.ts b/lib/buildenvsetup/ceconan.ts
index 0d105380f..d192a5121 100644
--- a/lib/buildenvsetup/ceconan.ts
+++ b/lib/buildenvsetup/ceconan.ts
@@ -22,6 +22,7 @@
 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 // POSSIBILITY OF SUCH DAMAGE.
 
+import os from 'node:os';
 import path from 'node:path';
 import {Readable} from 'node:stream';
 import zlib from 'node:zlib';
@@ -63,6 +64,7 @@ export class BuildEnvSetupCeConanDirect extends BuildEnvSetupBase {
     protected host: any;
     protected onlyonstaticliblink: any;
     protected extractAllToRoot: boolean;
+    protected conan_os: string;
 
     static get key() {
         return 'ceconan';
@@ -74,6 +76,7 @@ export class BuildEnvSetupCeConanDirect extends BuildEnvSetupBase {
         this.host = compilerInfo.buildenvsetup!.props('host', '');
         this.onlyonstaticliblink = compilerInfo.buildenvsetup!.props('onlyonstaticliblink', '');
         this.extractAllToRoot = false;
+        this.conan_os = os.platform() === 'win32' ? 'Windows' : 'Linux';
     }
 
     async getAllPossibleBuilds(libid: string, version: string): Promise<any> {
@@ -233,7 +236,7 @@ export class BuildEnvSetupCeConanDirect extends BuildEnvSetupBase {
         const flagcollection = '';
 
         return {
-            os: 'Linux',
+            os: this.conan_os,
             build_type: 'Debug',
             compiler: this.compilerTypeOrGCC,
             'compiler.version': this.compiler.id,
@@ -247,9 +250,18 @@ export class BuildEnvSetupCeConanDirect extends BuildEnvSetupBase {
     async findMatchingHash(buildProperties: ConanBuildProperties, possibleBuilds: any) {
         return _.findKey(possibleBuilds, elem => {
             return _.all(buildProperties, (val, key) => {
+                if ((key === 'compiler' || key === 'compiler.version') && elem.settings[key] === 'headeronly') {
+                    return true;
+                }
                 if ((key === 'compiler' || key === 'compiler.version') && elem.settings[key] === 'cshared') {
                     return true;
                 }
+                if (key === 'compiler.libcxx' && elem.settings['compiler'] === 'headeronly') {
+                    return true;
+                }
+                if (key === 'arch' && elem.settings['compiler'] === 'headeronly') {
+                    return true;
+                }
                 if (key === 'compiler.libcxx' && elem.settings['compiler'] === 'cshared') {
                     return true;
                 }
diff --git a/lib/compilers/mojo.ts b/lib/compilers/mojo.ts
index 6f15c26ca..5f1a8bef5 100644
--- a/lib/compilers/mojo.ts
+++ b/lib/compilers/mojo.ts
@@ -22,9 +22,11 @@
 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 // POSSIBILITY OF SUCH DAMAGE.
 
+import fs from 'node:fs/promises';
 import path from 'node:path';
 import type {ParseFiltersAndOutputOptions} from '../../types/features/filters.interfaces.js';
 import {BaseCompiler} from '../base-compiler.js';
+import {changeExtension} from '../utils.js';
 
 export class MojoCompiler extends BaseCompiler {
     static get key() {
@@ -34,19 +36,21 @@ export class MojoCompiler extends BaseCompiler {
     constructor(info, env) {
         super(info, env);
         this.delayCleanupTemp = true;
+        this.compiler.supportsOptOutput = true;
         this.compiler.supportsIrView = true;
-        this.compiler.irArg = ['--emit=llvm'];
+        this.compiler.irArg = ['--emit', 'llvm'];
+        this.compiler.minIrArgs = ['--emit=llvm'];
     }
 
     override getOutputFilename(dirPath: string, inputFileBase: string) {
         // This method tells CE where to find the assembly output
-        const outputPath = path.join(dirPath, 'example.s');
+        const outputPath = path.join(dirPath, inputFileBase + '.s');
         return outputPath;
     }
 
     override optionsForFilter(filters: ParseFiltersAndOutputOptions, outputFilename: string, userOptions: string[]) {
         if (filters.binary) return ['build'];
-        return ['build', '--emit=asm'];
+        return ['build', '--emit=asm', '-o', outputFilename];
     }
 
     override getSharedLibraryPathsAsArguments() {
@@ -54,6 +58,41 @@ export class MojoCompiler extends BaseCompiler {
     }
 
     override getExecutableFilename(dirPath: string, outputFilebase: string) {
-        return path.join(dirPath, 'example');
+        const executablePath = path.join(dirPath, 'example');
+        return executablePath;
+    }
+
+    override getIrOutputFilename(inputFilename: string): string {
+        return inputFilename.replace(/\.mojo$/, '.ll');
+    }
+
+    override async generateIR(
+        inputFilename: string,
+        options: string[],
+        irOptions: any,
+        produceCfg: boolean,
+        filters: any,
+    ) {
+        // Remove -o/--emit and their values from options
+        const filteredOptions: string[] = options.filter(
+            (opt, idx, arr) =>
+                opt !== '-o' &&
+                opt !== '--emit' &&
+                !opt.startsWith('--emit=') &&
+                arr[idx - 1] !== '-o' &&
+                arr[idx - 1] !== '--emit',
+        );
+        // Compute the .ll output path
+        const llPath = changeExtension(inputFilename, '.ll');
+        const newOptions = [...filteredOptions, '--emit=llvm', '-o', llPath];
+        const execOptions = this.getDefaultExecOptions();
+        execOptions.maxOutput = 1024 * 1024 * 1024;
+        const output = await this.runCompiler(this.compiler.exe, newOptions, this.compileFilename, execOptions);
+        if (output.code !== 0) {
+            console.error('Mojo IR build failed:', newOptions, output.stderr, output.stdout);
+            return {asm: [{text: 'Failed to run compiler to get IR code'}]};
+        }
+        const irText = await fs.readFile(llPath, 'utf8');
+        return {asm: irText.split('\n').map(text => ({text}))};
     }
 }
diff --git a/lib/compilers/win32.ts b/lib/compilers/win32.ts
index 4ec8615b1..e890dc0c8 100644
--- a/lib/compilers/win32.ts
+++ b/lib/compilers/win32.ts
@@ -27,13 +27,15 @@ import path from 'node:path';
 import _ from 'underscore';
 
 import {splitArguments} from '../../shared/common-utils.js';
-import type {CacheKey, ExecutionOptions} from '../../types/compilation/compilation.interfaces.js';
+import type {BuildResult, CacheKey, ExecutionOptions} from '../../types/compilation/compilation.interfaces.js';
 import type {ConfiguredOverrides} from '../../types/compilation/compiler-overrides.interfaces.js';
 import type {PreliminaryCompilerInfo} from '../../types/compiler.interfaces.js';
+import {UnprocessedExecResult} from '../../types/execution/execution.interfaces.js';
 import type {ParseFiltersAndOutputOptions} from '../../types/features/filters.interfaces.js';
 import {SelectedLibraryVersion} from '../../types/libraries/libraries.interfaces.js';
 import {unwrap} from '../assert.js';
 import {BaseCompiler} from '../base-compiler.js';
+import {copyNeededDlls} from '../binaries/win-utils.js';
 import {CompilationEnvironment} from '../compilation-env.js';
 import {MapFileReaderVS} from '../mapfiles/map-file-vs.js';
 import {AsmParser} from '../parsers/asm-parser.js';
@@ -64,10 +66,15 @@ export class Win32Compiler extends BaseCompiler {
         return this.getExecutableFilename(path.dirname(defaultOutputFilename), 'output');
     }
 
-    override getSharedLibraryPathsAsArguments(libraries: SelectedLibraryVersion[]) {
-        const libPathFlag = this.compiler.libpathFlag || '/LIBPATH:';
+    override getSharedLibraryPathsAsArguments(
+        libraries: SelectedLibraryVersion[],
+        libDownloadPath: string | undefined,
+        toolchainPath: string | undefined,
+        dirPath: string,
+    ): string[] {
+        const libPathFlag = '/LIBPATH:';
 
-        return this.getSharedLibraryPaths(libraries).map(path => libPathFlag + path);
+        return this.getSharedLibraryPaths(libraries, dirPath).map(path => libPathFlag + path);
     }
 
     // Ofek: foundVersion having 'liblink' makes me suspicious of the decision to annotate everywhere
@@ -110,7 +117,9 @@ export class Win32Compiler extends BaseCompiler {
             options = options.concat(unwrap(this.compiler.optArg));
         }
 
-        const libIncludes = this.getIncludeArguments(libraries, path.dirname(inputFilename));
+        const dirPath = path.dirname(inputFilename);
+
+        const libIncludes = this.getIncludeArguments(libraries, dirPath);
         const libOptions = this.getLibraryOptions(libraries);
         let libLinks: any[] = [];
         let libPaths: string[] = [];
@@ -120,7 +129,7 @@ export class Win32Compiler extends BaseCompiler {
         if (filters.binary) {
             preLink = ['/link'];
             libLinks = this.getSharedLibraryLinks(libraries);
-            libPaths = this.getSharedLibraryPathsAsArguments(libraries);
+            libPaths = this.getSharedLibraryPathsAsArguments(libraries, undefined, undefined, dirPath);
             staticlibLinks = this.getStaticLibraryLinks(libraries);
         }
 
@@ -162,6 +171,12 @@ export class Win32Compiler extends BaseCompiler {
         ) {
             options = options.filter(option => option !== '/utf-8');
         }
+
+        // test for debug/release switches to override with, default is /MDd because libraries use that
+        if (userOptions.some(option => option.startsWith('/MD') || option.startsWith('/MT'))) {
+            options = options.filter(option => option !== '/MDd');
+        }
+
         return [options, overrides];
     }
 
@@ -203,7 +218,7 @@ export class Win32Compiler extends BaseCompiler {
         return this.asm.process(result.asm, filters);
     }
 
-    override exec(compiler: string, args: string[], options_: ExecutionOptions) {
+    override async exec(compiler: string, args: string[], options_: ExecutionOptions): Promise<UnprocessedExecResult> {
         const options = Object.assign({}, options_);
         options.env = Object.assign({}, options.env);
 
@@ -219,4 +234,23 @@ export class Win32Compiler extends BaseCompiler {
 
         return super.exec(compiler, args, options);
     }
+
+    override async buildExecutableInFolder(key: CacheKey, dirPath: string): Promise<BuildResult> {
+        const result = await super.buildExecutableInFolder(key, dirPath);
+
+        if (result.code === 0) {
+            const execOptions = this.getDefaultExecOptions();
+            execOptions.customCwd = dirPath;
+
+            await copyNeededDlls(
+                dirPath,
+                result.executableFilename,
+                this.exec.bind(this),
+                this.compiler.objdumper,
+                execOptions,
+            );
+        }
+
+        return result;
+    }
 }
diff --git a/lib/tooling/_all.ts b/lib/tooling/_all.ts
index 408974a01..650f49ab1 100644
--- a/lib/tooling/_all.ts
+++ b/lib/tooling/_all.ts
@@ -43,3 +43,4 @@ export {TestingTool} from './testing-tool.js';
 export {BloatyTool} from './bloaty-tool.js';
 export {ClippyTool} from './clippy-tool.js';
 export {BrontoRefactorTool} from './bronto-refactor-tool.js';
+export {MiriTool} from './miri-tool.js';
diff --git a/lib/tooling/miri-tool.ts b/lib/tooling/miri-tool.ts
new file mode 100644
index 000000000..267825ae0
--- /dev/null
+++ b/lib/tooling/miri-tool.ts
@@ -0,0 +1,38 @@
+// Copyright (c) 2025, Compiler Explorer Authors
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are met:
+//
+//     * Redistributions of source code must retain the above copyright notice,
+//       this list of conditions and the following disclaimer.
+//     * Redistributions in binary form must reproduce the above copyright
+//       notice, this list of conditions and the following disclaimer in the
+//       documentation and/or other materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+// POSSIBILITY OF SUCH DAMAGE.
+
+import type {ResultLine} from '../../types/resultline/resultline.interfaces.js';
+import {parseRustOutput} from '../utils.js';
+
+import {BaseTool} from './base-tool.js';
+
+export class MiriTool extends BaseTool {
+    static get key() {
+        return 'miri-tool';
+    }
+
+    override parseOutput(lines: string, inputFilename?: string, pathPrefix?: string): ResultLine[] {
+        return parseRustOutput(lines, inputFilename, pathPrefix);
+    }
+}


Test patch:
diff --git a/test/filter-tests.ts b/test/filter-tests.ts
index 4b3706392..06eda3d95 100644
--- a/test/filter-tests.ts
+++ b/test/filter-tests.ts
@@ -71,7 +71,7 @@ function testFilter(filename: string, suffix: string, filters: ParseFiltersAndOu
 }
 
 describe('Filter test cases', () => {
-    if (process.platform === 'win32') {
+    if (process.platform === 'win32' || process.platform === 'darwin') {
         it('should skip filter-tests on Windows', () => {
             expect(true).toBe(true);
         });
@@ -93,7 +93,7 @@ describe('Filter test cases', () => {
         }
     });
     describe('Binary, directives, labels and comments', () => {
-        if (process.platform !== 'win32') {
+        if (process.platform !== 'win32' && process.platform !== 'darwin') {
             for (const x of cases) {
                 testFilter(x, '.binary.directives.labels.comments', {
                     binary: true,
@@ -105,7 +105,7 @@ describe('Filter test cases', () => {
         }
     });
     describe('Binary, directives, labels, comments and library code', () => {
-        if (process.platform !== 'win32') {
+        if (process.platform !== 'win32' && process.platform !== 'darwin') {
             for (const x of cases) {
                 if (!x.endsWith('-bin.asm')) continue;
 
@@ -120,7 +120,7 @@ describe('Filter test cases', () => {
         }
     });
     describe('Binary, directives, labels, comments and library code with dontMaskFilenames', () => {
-        if (process.platform !== 'win32') {
+        if (process.platform !== 'win32' && process.platform !== 'darwin') {
             for (const x of cases) {
                 if (!x.endsWith('-bin.asm')) continue;