Skip to content

Conversation

github-actions[bot]
Copy link

🤖 New release

  • cc: 1.2.34 -> 2.0.0 (⚠ API breaking changes)

cc breaking changes

--- failure inherent_method_missing: pub method removed or renamed ---

Description:
A publicly-visible method or associated fn is no longer available under its prior name. It may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.43.0/src/lints/inherent_method_missing.ron

Failed in:
  Build::prefer_clang_cl_over_msvc, previously in file /tmp/.tmpsoo0M7/cc/src/lib.rs:1369
Changelog

2.0.0 - 2025-10-17

Added

  • add i686-pc-windows-gnullvm prefix detection (#1283)
  • add cargo_output to eliminate last vestiges of stdout pollution (#1141)
  • Query rustc for clang target triples instead of hardcoding them (#1004)
  • move debug logging behind an environment variable (#972)
  • Simplify code by using String::split_ascii_whitespace (#558)

Fixed

  • add -mcpu=mvp and -mmutable-globals for wasm32v1-none (#1524)
  • fix new clippy lint introduced in rust 1.89.0 (#1509)
  • force windows compiler to run in out_dir to prevent artifacts in cwd (#1415)
  • fix finding toolchains when invoked by msbuild (#1201)
  • emscripten build on windows (#1054)
  • fix xcrun sdk version arg (#1007)
  • (env_tool) return None if env is empty (#1021)
  • fix llvm-ar as archiver for msvc targets; fix clang-cl detection; fix assembler output flag detection; add clang/clang-cl windows CI (#1015)
  • only print out debug info if cargo_warnings is true (#960)
  • fix broken intradoc links (#922)
  • Add apple tvos support (#881)
  • (flag_check) never link to avoid false positives (#839)
  • fix msbuild from vs2022 not being found
  • find_msvc_environment argument order (#628)
  • fix some typos (#604)
  • fix find_tool and find_vs_version might returns incompatible values (#488)
  • fix 2
  • fix
  • (flag_check) Send flag to MSVC telling it not to link
  • fix arm-linux-androideabi-gcc -Oz error

Other

  • release v1.2.34 (#1528)
  • Optimize parse_version in find_tools.rs (#1527)
  • Fallback to manually searching for tool dir (#1526)
  • release v1.2.33 (#1522)
  • Regenerate target info (#1521)
  • Bump actions/checkout from 4 to 5 (#1520)
  • [win][arm64ec] Add testing for Arm64EC Windows (#1512)
  • Fix gen-windows-sys-binding (#1518)
  • Fix parsing of nigthly targets (#1517)
  • [win][arm64ec] Fix finding assembler and setting is_arm for Arm64EC (#1511)
  • release v1.2.32 (#1510)
  • clarify cargo default if no rerun emitted (#1508)
  • extract compile_objects_sequential (#1507)
  • Windows find_tools: add support for finding Clang (#1506)
  • Add m68k-unknown-linux-gnu cross-compile target (#1505)
  • release v1.2.31 (#1504)
  • Add doc for using sccache/ccache etc (#1502)
  • ability to statically link against C++ stdlib (#1497)
  • Add instructions on using sccache (#1503)
  • Add support for recognizing some architectures supported by GCC, but not LLVM. (#1500)
  • release v1.2.30 (#1498)
  • define _REENTRANT by default (#1496)
  • Update rusqlite requirement from 0.36.0 to 0.37.0 (#1494)
  • release v1.2.29 (#1493)
  • Fix target parsing for powerpc (#1490)
  • release v1.2.28 (#1491)
  • Recognize mlibc environment (#1488)
  • Fix clippy warnings about not using variables in format! strings (#1489)
  • release v1.2.27 (#1486)
  • Regenerate windows sys bindings (#1485)
  • Update windows-bindgen requirement from 0.61 to 0.62 (#1484)
  • Regenerate target info (#1483)
  • release v1.2.26 (#1481)
  • Also set SDKROOT when building apple platforms (#1475)
  • use windows 2022 in CI (#1479)
  • Detect -Wslash-u-filename warning on clang-cl (#1477)
  • release v1.2.25 (#1478)
  • make powerp64 use powerpc64-linux-gnu prefix (#1474)
  • Update rusqlite requirement from 0.35.0 to 0.36.0 (#1476)
  • release v1.2.24 (#1472)
  • Regenerate windows sys bindings (#1471)
  • release v1.2.23 (#1470)
  • support "vxworks" and "nto" OSes on get_base_archiver_variant (#1456)
  • release v1.2.22 (#1467)
  • Add flags method to cc::Build for adding multiple flags (#1466)
  • release v1.2.21 (#1464)
  • Fix wasm32-unknown-unknown by passing -c (#1424)
  • release v1.2.20 (#1462)
  • Regenerate target info (#1461)
  • Update rusqlite requirement from 0.34.0 to 0.35.0 (#1460)
  • Fix parser.rs on latest rustc nightly (#1459)
  • release v1.2.19 (#1458)
  • Fix musl compilation: Add musl as a prefix fallback (#1455)
  • release v1.2.18 (#1451)
  • Regenerate target info (#1450)
  • Use std::thread::available_parallelism for determining the default number of jobs (#1447)
  • Fix mips64-openwrt-linux-musl parsing (#1449)
  • Use compiler prefix x86_64-linux-musl (#1443)
  • release v1.2.17 (#1435)
  • Regenerate target info (#1439)
  • Regenerate windows sys bindings (#1437)
  • Update windows-bindgen requirement from 0.60 to 0.61 (#1436)
  • Fix wasm32-wali-linux-musl target parsing (#1434)
  • fix creating issue comment (#1433)
  • Fix failure from cargo not propagating because of pipe (#1432)
  • Parse rustc target names (#1413)
  • Regenerate target info (#1429)
  • Added base support for wasm32-wali-linux-musl target (#1373)
  • Update rusqlite requirement from 0.33.0 to 0.34.0 (#1428)
  • release v1.2.16 (#1427)
  • use /arch:SSE2 for x86 target arch (#1425)
  • Regenerate windows-sys binding (#1422)
  • Fix gen-windows-sys-binding (#1419)
  • Fix regenerate-windows-sys.yml (#1420)
  • Regenerate target info (#1418)
  • Add LIB var when compiling flag_check (#1417)
  • Change flag ordering (#1403)
  • Update windows-bindgen requirement from 0.59 to 0.60 (#1412)
  • Fix archiver detection for musl cross compilation (#1404)
  • release v1.2.15 (#1408)
  • Regenerate target info (#1406)
  • Always read from all CFLAGS-style flags (#1401)
  • Simplify the error output on failed Command invocation (#1397)
  • release v1.2.14 (#1400)
  • Regenerate target info (#1398)
  • Add support for setting -gdwarf-{version} based on RUSTFLAGS (#1395)
  • Add support for alternative network stack io-sock on QNX 7.1 aarch64 and x86_64 (#1312)
  • release v1.2.13 (#1394)
  • Fix cross-compiling for Apple platforms (#1389)
  • release v1.2.12 (#1387)
  • Split impl Build (#1382)
  • ensure clang --driver-mode=cl is MSVC- and clang-cl-like (#1381)
  • allow specifying rustc when generating target information (#1385)
  • Don't specify both -target and -mtargetos= on Apple targets (#1384)
  • release v1.2.11 (#1377)
  • Fix more flag inheritance (#1380)
  • Include wrapper args. in stdout family heuristics to restore classifying clang --driver-mode=cl as Msvc { clang_cl: true } (#1378)
  • Constrain -Clto and -Cembed-bitcode flag inheritance to be clang-only (#1379)
  • Pass deployment target with -m*-version-min= (#1339)
  • Regenerate target info (#1376)
  • Update rusqlite requirement from 0.32.0 to 0.33.0 (#1374)
  • release v1.2.10 (#1370)
  • Fix CC_FORCE_DISABLE=0 evaluating to true (#1371)
  • Regenerate target info (#1369)
  • (ci) move ubuntu-20 job to ubuntu-22 (#1368)
  • Make hidden lifetimes explicit. (#1366)
  • release v1.2.9 (#1365)
  • Don't pass inherited PGO flags to GNU compilers (#1363)
  • Adjusted zig cc judgment and avoided zigbuild errors(#1360) (#1361)
  • Fix compilation on macOS using clang and fix compilation using zig-cc (#1364)
  • release v1.2.8 (#1355)
  • Add is_like_clang_cl() getter (#1357)
  • Fix clippy error in lib.rs (#1356)
  • Fix opening PR in regenerate-windows-sys.yml (#1353)
  • Regenerate target info (#1352)
  • Fix opening PR in regenerate-target-info.yml (#1351)
  • Fix compiler family detection issue with clang-cl on macOS (#1328)
  • Run regenerate-windows-sys on Thu (#1348)
  • Run regenerate-target-info on Thu (#1349)
  • Update windows-bindgen dependency (#1347)
  • Fix clippy warnings (#1346)
  • Optimize CI (#1344)
  • Fix cuda testing (#1343)
  • release v1.2.7 (#1341)
  • Regenerate target info (#1342)
  • Add "test-pass" job (#1340)
  • Document new supported architecture names in windows::find
  • Make is_flag_supported_inner take an &Tool (#1337)
  • Fix is_flag_supported on msvc (#1336)
  • Allow using Visual Studio target names in find_tool (#1335)
  • Fix caching (#1334)
  • release v1.2.6 (#1333)
  • Don't inherit the /Oy flag for 64-bit targets (#1330)
  • release v1.2.5 (#1323)
  • Check linking when testing if compiler flags are supported (#1322)
  • release v1.2.4 (#1320)
  • Add support for C/C++ compiler for Neutrino QNX: qcc (#1319)
  • use -maix64 instead of -m64 (#1307)
  • release v1.2.3 (#1316)
  • Enable manual-run of release-pr.yml (#1318)
  • Improve detection of environment when compiling from msbuild or msvc (#1310)
  • Better error message when failing on unknown targets (#1313)
  • Optimize RustcCodegenFlags (#1305)
  • release v1.2.2 (#1306)
  • Inherit flags from rustc (#1279)
  • Add support for using sccache wrapper with cuda/nvcc (#1304)
  • Fix msvc stdout not shown on error (#1303)
  • Avoid running scheduled jobs on forks (#1302)
  • Regenerate target info (#1301)
  • Fix compilation of C++ code for armv7-unknown-linux-gnueabihf (#1298)
  • Fetch target info from Cargo even if Build::target is manually set (#1299)
  • Fix two files with different extensions having the same object name (#1295)
  • Allow disabling cc's ability to compile via env var CC_FORCE_DISABLE (#1292)
  • Regenerate target info (#1293)
  • Cap release at once per week (#1291)
  • release v1.2.1 (#1289)
  • When invoking cl -?, set stdin to null (#1288)
  • release v1.1.38 (#1286)
  • Allow only specifying the architecture (#1285)
  • Fix WASM vs. WASI options (#1284)
  • release v1.1.37 (#1282)
  • Use relative directory for obj files hash (#1270)
  • Regenerate target info (#1280)
  • release v1.1.36 (#1274)
  • Fix CUDA build with clang++. (#1273)
  • release v1.1.35 (#1267)
  • Remove support for FRC (#1268)
  • Do not add -fPIC by default on UEFI targets (#1263)
  • Use -windows-gnu for all UEFI targets (#1264)
  • release v1.1.34 (#1259)
  • Remove redundant flags (#1256)
  • release v1.1.33 (#1258)
  • Reduce size of cc::Build and size of generated targets (#1257)
  • release v1.1.32 (#1250)
  • Use rustc's knowledge of LLVM/Clang target triples (#1252)
  • Use Cargo's target information when possible (#1225)
  • release v1.1.31 (#1248)
  • Add comment explaining why cc does not rebuild on env PATH change (#1247)
  • release (#1246)
  • Don't pass -fPIC by default on wasm (#1245)
  • release (#1244)
  • Regenerate target info (#1243)
  • release (#1239)
  • Environment variables: For one accepting boolean, treat "0", "false" and empty env as false (#1238)
  • release (#1235)
  • Revert "Use debug version of MSVC runtime library on debug (#1231)" (#1237)
  • Disable CC_ENABLE_DEBUG_OUTPUT if it is set to "0" (#1234)
  • release (#1232)
  • Use debug version of MSVC runtime library on debug (#1231)
  • release (#1229)
  • Remove incorrect "lib" prefixes in CXXSTDLIB doc comments (#1228)
  • release (#1223)
  • Fix wasm32-wasip1-threads: shared-memory disallowed due to not compiled with 'atomics' or 'bulk-memory' features (#1221)
  • Reduce the need for the host target triple (#1224)
  • Add auto cancellation for CI jobs (#1222)
  • release (#1220)
  • Update doc for detecting changes/upgrades of compilers (#1218)
  • release (#1216)
  • Don't rerun if PATH changes (#1215)
  • release (#1213)
  • disable pic for targets that end in -none (#1212)
  • release (#1210)
  • Add buildcache as known Rust and C/C++ compiler wrapper (#1209)
  • release (#1208)
  • Add support arm64e-apple-darwin (#1207)
  • release (#1204)
  • Fixed unsoundness in StderrForwarder::forward_available (#1203)
  • release (#1202)
  • release (#1199)
  • Treat VxWorks wr-cc as a Gnu compiler (#1198)
  • release (#1195)
  • Add -mfloat-abi=hard as a default argument when using any arm/thumb-none-eabihf target (#1194)
  • release (#1191)
  • allow finding tools from path if VisualStudioDir is set
  • release (#1187)
  • Fix detect family: should detect emscripten as clang, closes emcc/em++ are detected as ToolFamily::Msvc rust-lang/cc-rs#1185 (#1186)
  • release (#1184)
  • improve docs (#1183)
  • release (#1182)
  • Add support for parsing shell encoded *FLAGS (#1181)
  • Replace vector of tuples with BTreeMap which already is sorted and free of duplicates (#1177)
  • release (#1179)
  • Remap Windows targets triples to their LLVM counterparts (#1176)
  • release (#1178)
  • Add custom CC wrapper to the wrapper whitelist (#1175)
  • release (#1174)
  • Fix broken link in docs.rs (#1173)
  • release (#1168)
  • add .objects (#1166)
  • release (#1164)
  • Clippy fixes (#1163)
  • release (#1162)
  • Fix cyclic compilation: Use vendored once_cell (#1154)
  • release (#1161)
  • Support compiling on wasm targets (Supersede Support compiling on wasm targets rust-lang/cc-rs#1068) (#1160)
  • release (#1155)
  • Reduce msrv to 1.63 (#1158)
  • Revert "Use raw-dylib for windows-sys (#1137)" (#1157)
  • Fix typos (#1152)
  • Fix doc_lazy_continuation lints (#1153)
  • release (#1151)
  • Add empty jobserver feature. (#1150)
  • release (#1149)
  • Fix is_flag_supported not respecting emit_rerun_if_env_changed (#1147) (#1148)
  • release (#1145)
  • release (#1142)
  • Drop support for Visual Studio 12 (2013) (#1046)
  • Use raw-dylib for windows-sys (#1137)
  • Bump msrv to 1.67 (#1143)
  • Bump msrv to 1.65 (#1140)
  • Fix clippy warnings (#1138)
  • release (#1136)
  • Regenerate windows sys bindings (#1132)
  • Fix generate-windows-sys-bindings (#1133)
  • Fix gen-windows-sys-binding (#1130)
  • Fix gen-windows-sys-binding (#1127)
  • Update windows-bindgen requirement from 0.57 to 0.58 (#1123)
  • release (#1119)
  • Fixed link break about compile-time-requirements (#1118)
  • release (#1116)
  • Fix compilation for wasm: env WASI_SYSROOT should be optional (#1114)
  • release (#1112)
  • Fix invalid wasi targets compatibility (#1105)
  • Speedup regenerate-target-info and regenerate-windows-sys (#1110)
  • release (#1106)
  • Use Build::getenv instead of env::var* in anywhere that makes sense (#1103)
  • release (#1102)
  • Update publish.yml to use release-plz (#1101)
  • Accpet OsStr instead of str for flags (#1100)
  • Use dep: syntax to avoid implicit features. (#1099)
  • Minor clippy fixes. (#1098)
  • Fix WASI compilation for C++ (#1083)
  • Regenerate windows sys bindings (#1096)
  • Rename regenerate-windows-sys to regenerate-windows-sys.yml (#1095)
  • Create regenerate-windows-sys.yml (#1094)
  • Update windows-bindgen requirement from 0.56 to 0.57 (#1091)
  • Eagerly close tempfile to fix Compiler family detection failed - cl.exe "cannot open source file" rust-lang/cc-rs#1082 (#1087)
  • Output msvc.exe in the output directory (#1090)
  • Fix clippy warnings on Windows (#1088)
  • Don't try to free DLL on drop (#1089)
  • Fix panic safety issue in StderrForwarder (#1079)
  • Release cc 1.0.99 (#1086)
  • Allow opt-out the -ccbin flag (#1085)
  • Release cc 1.0.98 (#1073)
  • Fix detect_compiler_family.c not being created (#1072)
  • Fix paths on Mac Catalyst (#1070)
  • Cleanup some deprecated, unused allows (#1067)
  • Release cc 1.0.97 (#1066)
  • Avoid recursive calls into try_get_compiler when items are in the cache (#1050)
  • Bump actions/checkout from 3 to 4 (#1064)
  • Rm unnecessary println in try_get_compiler (#1063)
  • Don't use the value of SDKROOT if it doesn't match the target. (#1047)
  • Run cargo-semver-checks for every PR and commits to main (#1053)
  • Fix commit message in regenerate-target-info.yml (#1062)
  • Regenerate target info (#1061)
  • Fix regenerate-target-info.yml (#1060)
  • Fix running gen-target-info in regenerate-target-info.yml (#1057)
  • Fix file extension for pipelime regenerate-target-info (#1056)
  • Create regenerate-target-info (#1055)
  • Release cc 1.0.96 (#1045)
  • Add support for linking against the "spectre-mitigated" CRT (#673)
  • Use specified include directories prior to CFLAGS (#1043)
  • Release cc 1.0.95 (#1038)
  • Optimize jobserver try_acquire (#1037)
  • Bump msrv to 1.63 (#1031)
  • Update windows-bindgen requirement from 0.55 to 0.56 (#1035)
  • Release cc 1.0.94 (#1034)
  • Release cc-rs 1.0.93 (#1032)
  • Add visionOS support (#1029)
  • Release cc 1.0.92 (#1028)
  • Fix linking with llvm-lib (#1027)
  • Release cc 1.0.91 (#1024)
  • Fix caching of supported compiler flag (#1002)
  • Also shim llvm-ar in the clang_android test on non-Windows (#1016)
  • Fix regression in compiler family detection (#1014)
  • Optimize code based on cargo clippy suggestions (#1013)
  • Fix compile family detection: Use C macros instead of $compiler -v (#1000)
  • Fix safety comment for LibraryHandle::get_proc_address (#1010)
  • Add automatic publish on tag creation (#978)
  • Accept non utf-8 characters in compiler and archiver (#998)
  • Update windows-bindgen requirement from 0.54 to 0.55 (#999)
  • Release cc 1.0.90 (#996)
  • Merge pull request Fix the clang targets for RISC-V Rust targets rust-lang/cc-rs#993 from djkoloski/fix-riscv-clang-targets
  • Drop support for Visual Studio 11 (2012) (#981)
  • Fix arm-android compile-ui tests (#991)
  • Revert "refactor target flags (#873)" (#992)
  • Release cc 1.0.89 (#988)
  • Fix make resource failure when cc parallel is enabled (#985)
  • Add a public file iterator (#987)
  • Use llvm-ar, llvm-ranlib for Android NDK (#983)
  • Also support finding Windows tools on non-Windows host (#907)
  • Update windows-bindgen requirement from 0.53 to 0.54 (#982)
  • refactor target flags (#873)
  • Release cc 1.0.88 (#977)
  • Fix set_blocking (#975)
  • Add /System/iOSSupport to header/library search paths on Mac Catalyst (#961)
  • Release cc 1.0.87 (#967)
  • Fix use of cc with make <4.3: Clear O_NONBLOCK after compilaton (#966)
  • add armv8r-none-eabihf (#836)
  • Support native ARM64 MSVC toolchain, and fallback to x64 if emulation is available (#957)
  • Added tvos-sim support (#951)
  • Fix CI (Test) nightly (#956)
  • Release cc 1.0.86 (#952)
  • Cache compiler versions detected (#932)
  • Fix setting O_NONBLOCK in parallel::stderr::set_non_blocking (#946)
  • Fix jobserver: Last --jobserver-auth wins (#949)
  • Run test on aarch64-apple-darwin (#947)
  • Merge pull request Release cc 1.0.85 rust-lang/cc-rs#944 from rust-lang/NobodyXu-patch-1
  • move documentation from README.md to lib.rs (#921)
  • Fix default deployment target behavior (#943)
  • Fix typos. (#942)
  • Remove dependency on pipe, unless parallel (#940)
  • Add support for riscv32imac-esp-espidf (#939)
  • add comment explaining gcc-shim. (#935)
  • move Windows code into a module (#924)
  • use full import path in tool module (#933)
  • do not publish tests or gcc-shim with crate (#934)
  • split Tool and ToolFamily to a new tool module (#929)
  • split miscellaneous code into a new command_helpers module (#931)
  • move cc-test & gen-windows-sys-binding into workspace (#927)
  • move retain_unordered_mut function into parallel module (#930)
  • add comment why tvOS CI job is separate from the matrix (#928)
  • move src/os_pipe.rs to src/os_pipe/mod.rs (#925)
  • do not publish cc-test crate (#926)
  • move async_executor and job_token modules into new parallel module (#923)
  • Use RUSTC_WRAPPER if no other wrapper is provided (#918)
  • Add cargo_warnings config to control the use of the cargo warning instruction (#917)
  • Add new compile_intermediates function. (#914)
  • Merge pull request Add support for ARM64EC when building with MSVC rust-lang/cc-rs#910 from dpaoliello/arm64ec
  • Link against libc++ on *-linux-ohos
  • Add -- for files in try_expand (like in For non-MSVC, separate flags/options from the input file. (#513) rust-lang/cc-rs#514) (#911)
  • Some clippy fixes (#879)
  • Fix unconditional cargo metadata printing on flag support check (#908)
  • Fix Apple deployment version floor when linking C++ (#901)
  • Merge pull request fix: fix the usage of include directories for the Rust analyzer rust-lang/cc-rs#854 from aminya/directory-path
  • Release cc v1.0.84 (#898)
  • added a function to remove flags (#885)
  • Vendor jobserver impl and rm thread spawning in parallel compile_objects (#889)
  • Disable msrv checking on macos-latest
  • Bump MSRV to 1.53.0 and re-enable macos MSRV check
  • Fix msrv CI: Check for --all-features (#890)
  • Pass -Wno-unused-command-line-argument to clang in is_flag_supported (#886)
  • Merge pull request Bump actions/checkout from 3 to 4 rust-lang/cc-rs#863 from rust-lang/dependabot/github_actions/actions/checkout-4
  • Add a TODO for retain_unordered_mut
  • Fix MSRV: Remove use of Vec::retain_mut
  • Merge pull request feat: Use channels to maintain job tokens & reuse the implicit token without dropping it first rust-lang/cc-rs#878 from osiewicz/no_drops_on_implicit_job_token
  • Fix --target getting passed twice to the Android NDK clang on Windows
  • Detect msvc version if there is no default
  • minimal maxosx deployment target is 10.9 when cpp (#872)
  • Remove -fembed-bitcode flag (#812)
  • detect clang/gcc using --version (#709)
  • Fix xctoolchain AppleClang to corrrectly use -isysroot (#703)
  • Add AppleTVOS support (#704)
  • Be more specific about not passing -c to armasm[64].exe. (#869)
  • Pass self.definitions to armasm[64].exe. (#868)
  • Don't pass compiler flags to MSVC assembers. (#867)
  • Use rustc's Apple deployment target defaults when available (#848)
  • Separate source args with -- when compiling assembly with clang-cl (#857)
  • Release version 1.0.83 (#861)
  • Stop using feature "libc/std" (#860)
  • Add method for specifying C/C++ standard version (#761)
  • Release cc v1.0.82 (#850)
  • Fix Build::compile_objects perf regression and deadlock (#849)
  • Bump version to 1.0.81
  • Fix PrintThread: Read stderr as bytes instead of str (#842)
  • Bump version to 1.0.80 (#834)
  • Handle x86_64h-apple-darwin target (#840)
  • Vendor windows-sys crate (#837)
  • Harmonize README.md with reality. (#835)
  • Disambiguate Windows run-times when using clang to compile. (#825)
  • Optimize Build::compile_objects on feature parallel (#833)
  • Optimize Build::env_cache: Store Option<Arc<str>> as key (#832)
  • Optimize Build::get_out_dir: Return Cow<'_, Path> (#831)
  • Cleanup mod com, registry, setup_config and winapi (#828)
  • Fix Build::compile_objects deadlock on parallel (#829)
  • Use correct ABI on NetBSD/riscv64, and add target entry for same. (#815)
  • Remove outdated doc about build parallelism (#827)
  • Optimize cc::Build::try_compile: Reuse PrintThread (#817)
  • Optimize Error::new: Avoid unnecessary heap alloc (#823)
  • Optimize Build::print: Avoid unnecessary heap alloc (#824)
  • Vendor dependency os_pipe (#822)
  • Use gnu -o flag for obj out path instead of -Fo when using gcc & g++ on Windows (#820)
  • add a function to populate flags from an arbitrary environment variable (#818)
  • Merge pull request Optimize Build::compile_objects: Only spawns one thread rust-lang/cc-rs#780 from NobodyXu/optimize
  • Be more stringent about handling Android NDK.
  • Merge pull request Enable dependabot for GitHub Action Workflows rust-lang/cc-rs#806 from NobodyXu/enable-dependabot-for-gha
  • Enable dependabot for Github Action Workflows
  • Link against libc++ on AIX
  • Merge pull request Improve docs for the C++ usage rust-lang/cc-rs#600 from SallySoul/change-getcpplib-doc
  • Refine CUDA documentation.
  • Add loongarch64 support
  • Default to llvm-ar when compiling for wasm. (#657)
  • Change approach for native and cross-compilation with clang++ on FreeBSD (#794)
  • Prevent cloning on every get_xxx() call (#793)
  • Clarify implementation limitations of funcs in doc comment
  • Reword push_cc_arg() doc comments.
  • Append freebsd-version to all --target=*-freebsd if executed on FreeBSD. (#788)
  • Fix --target cflag on FreeBSD when compiling against clang (#785)
  • Speedup Build::clone: Use Arc instead of String/PathBuf/OsString (#782)
  • If a file path references a parent directory, transform it to ensure we keep inside the OUT_DIR (#786)
  • Prioritize RUSTC_LINKER over target->cross-compile-prefix table. (#767)
  • Make windows_registry::VsVers non_exhaustive (#783)
  • Bump MSRV to 1.46.0 (#781)
  • Prep release 1.0.79
  • Fix gcc-shim, apply clippy warning & optimizations to it (#777)
  • Add support for riscv32imc-esp-espidf (#776)
  • Fix Build::is_flag_supported: Check exit status of the compiler (#757)
  • Expose get_archiver and get_ranlib (#763)
  • Fix "-arch arm64" flag for aarch64-ios-sim (#759)
  • Update bitcode TODO
  • Prep release 1.0.78
  • Default to llvm-lib when using clang-cl in msvc environment.
  • Map source absolute paths to OUT_DIR as relative. (#684)
  • Update CUDA toolchain.
  • Refine CUDA support.
  • Allow to use clang++ with CUDA compiler.
  • Only pass .asm files to masm
  • Prep release 1.0.77
  • Add Build::asm_flag
  • Use a DWARF version consistent with rustc
  • Prep release 1.0.76
  • Don't separate files/opt when using msvc assembler
  • Prep release 1.0.75
  • Fix location of atlmfc directory on MSVC 15+
  • Merge pull request Add debuginfo flags for msvc assemblers rust-lang/cc-rs#742 from nagisa/ml-debuginfo
  • Prefer -ar to -gcc-ar
  • Merge pull request Be more defensive about how windows RegistryKeys are handled rust-lang/cc-rs#739 from thomcc/hkey-paranoia
  • Adjust comment on HKEY_LOCAL_MACHINE
  • Be much more defensive about how windows RegistryKeys are handled
  • Prepare release 1.0.74
  • Avoid rerun-if-env-changed on vars set by cargo for build scripts
  • Default emit_rerun_if_env_changed to true
  • Change getenv to only emit metadata once per var
  • Run cargo fmt
  • Add option to emit rerun-if-env-changed metadata
  • Use specified compiler in is_flag_supported
  • Continue to support binutils ar
  • Add LLVM based MinGW targets
  • Correctly infer ranlib/ar from cross-gcc
  • Add support for riscv32imac-unknown-xous-elf
  • Use RUSTC_LINKER's prefix as last resort for prefix_for_target().
  • Remove support for to gh-pages
  • Fix repository and homepage links in Cargo.toml
  • Support native library modifiers (RFC 2951)
  • Support clang >13.1 for aarch64-apple-ios-macabi and x86_64-apple-ios-macabi targets
  • Use SDKROOT when set.
  • force mingw32 test to Windows 2019.
  • Merge pull request Update CUDA Linux GPG repository key [and compiler version]. rust-lang/cc-rs#677 from dot-asm/nvidia-pub-key-update
  • Merge pull request Add support for Apple WatchOS rust-lang/cc-rs#662 from vladimir-ea/watch_os
  • Merge pull request Update Cargo.toml rust-lang/cc-rs#660 from atouchet/lic
  • Merge pull request For non-MSVC, separate flags/options from the input file. (#513) rust-lang/cc-rs#514 from ncalexan/dash-dash
  • Bump to 1.0.73
  • Try to fix CI (#659)
  • Fail fast and more helpfully on invalid compile argument (#655)
  • Add guidance on what string to pass compile (#658)
  • Fixes Support getting Windows SDK from the environment rust-lang/cc-rs#625 Support getting Windows SDK from the environment (#646)
  • Identify Visual Studio 2022 by MSBuild (#648)
  • Support aarch64-pc-windows-gnu (#645)
  • Support riscv64-unknown-openbsd (#643)
  • Added arbitrary flag support to try_expand() (#640)
  • Support riscv64gc-unknown-freebsd (#642)
  • Add armv7 assembly for cc-test (#629)
  • Bump to 1.0.72
  • Add Visual Studio 17 (2022) (#632)
  • Use riscv32-unknown-linux-gnu for target on clang (#631)
  • Update CI config for main
  • Fix armhf build for GCC-11 (#627)
  • Bump to 1.0.71
  • add prefixes for x86 to support cross-compiling from non-x86 targets (#621)
  • Adds cachepot to the known wrappers set (#626)
  • Add SOLID target support (#609)
  • Support UEFI: fix object generation type for UEFI target. (#623)
  • Bump to 1.0.70
  • Address issues with new Catalyst/M1 simulator targets (#614)
  • When spawn() fails, include the underlying error in the message. (#613)
  • Improve CUDA support (#612)
  • allow cachepot als alternative to sccache (#599)
  • Bump to 1.0.69
  • Use riscv64-unknown-linux-gnu for target on clang. (#608)
  • Add -arch compiler flag on older macOS systems (#607)
  • Probe for ARM64 MSBuild (#605)
  • Bump to 1.0.68
  • Attempt to use the current environment to find the tool (#603)
  • Support finding Visual Studio instances using vswhere.exe (#597)
  • Upgrade to GitHub-native Dependabot (#598)
  • use the eprintln macro (#591)
  • Fix typo in atl_paths ("atlfmc" --> "atlmfc") (#592)
  • Use GNU AR for illumos (#585)
  • Bump to 1.0.67
  • Match abi and march settings for riscv on linux (#583)
  • Pick version for iOS simulator target (#582)
  • Fix a typo (#581)
  • Replace -ios with apple-ios (#579)
  • Avoid checking for overly-broad "cl" substring (#578)
  • Use clang when cross-compiling to iOS targets (#577)
  • Add an apt-get update
  • Some Readme updates (#575)
  • Bump to 1.0.66
  • Call clang directly when cross-compiling from Windows to Android (#572)
  • Split s out of the ar invocation (#570)
  • Bump to 1.0.64
  • Switch from the r option on ar to q (#569)
  • Bump to 1.0.63
  • progressive linking (#564)
  • Document CXXSTDLIB and change the Android default (#561)
  • Support mips(el)-unknown-linux-musl (#562)
  • Bump to 1.0.62
  • Show a better message when xcrun is missing
  • add macos catalyst support (#556)
  • exclude .github folder from publish (#553)
  • Bump to 1.0.61
  • Method to add multiple includes: build.includes(...) (#550)
  • Bump to 1.0.60
  • Apply Darwin target modifications for Clang as well (#549)
  • Remove outdated notice (#548)
  • use wr-cc for C file, use wr-c++ for CPP file (#546)
  • Bump to 1.0.59
  • Fix typo: s/compilier/compiler/ (#544)
  • Detect standalone android compiler with regex (#539)
  • handle wrong SDKROOT for macos->macos build (#537)
  • Add arm64e ABI support. (#534)
  • Add support for hexagon-unknown-linux-musl-clang (#533)
  • Bump to 1.0.58
  • Always specify architecture for x86_64 / aarch64 Darwin (#527)
  • use push_cc_arg for options add (#528)
  • Add -nologo command-line option to Microsoft assembler. (#525)
  • Bump to 1.0.57
  • Add the host architecture Windows 10 SDK bin directory to the PATH, not the target. (#524)
  • Bump to 1.0.56
  • Don't set definition flags for MSVC ARM targets (#518)
  • Use a search list to find a compatible toolchain (#521)
  • Bump to 1.0.55
  • Use x86 hosted msvc on arm64 windows (#522)
  • Add cross-compiler prefix for armv7 without hf (#515)
  • Name wrangling c++ caveat in Readme (#511)
  • Add missing README syntax highlighting (#509)
  • Fix for multi-component Android compiler paths (#507)
  • Bump to 1.0.54
  • Find prefixed AR when cross compiling. (#502)
  • vs2019 preview search path added (#501)
  • In windows_registry::find_tool, set the ToolFamily to Msvc (#499)
  • Bump to 1.0.53
  • Implement autodetection for default compiler from NDK (#495)
  • Check for the right compiler we're testing
  • Bump to 1.0.51
  • Switch to output() from spawn() to avoid zombies
  • Fix Android clang compiler path when building with Windows host (#489)
  • use "gcc" by default on illumos systems (#487)
  • Add tool autodetection for armv7a targets (#479)
  • Use gnu -o flag for obj out path instead of -Fo when using clang & clang++ on Windows (#483)
  • Do not set the -fPIC flag for Windows targets when using clang for CXX builds (#481)
  • Add 'armv5te-unknown-linux-musleabi' target support (#478)
  • Detect and use sccache by introspecting RUSTC_WRAPPER (#475)
  • Update CI installation of Rust on macos
  • Clear CFLAGS and CXXFLAGS before tests (#472)
  • disable pic for bare metal by default (#470)
  • Use medany model (#467)
  • Bump to 1.0.50
  • Don't depend on num_cpus for parallelism
  • Bump to 1.0.49
  • Add cross prefix for riscv64gc-unknown-linux-gnu => riscv64-linux-gnu (#465)
  • Implement std::error::Error for Error (#464)
  • Enable -fPIC on non-bare-metal RISC-V (#461)
  • Bump to 1.0.48
  • Default to double-float ABI on RISC-V Linux (#460)
  • Migrate tests to tempfile from deprecated tempdir (#457)
  • Detect clang cl driver mode (#455)
  • More fixes for GitHub changes
  • Fix Github Actions for recent system changes
  • Bump to 1.0.46
  • Added public function to add flags to archiver
  • Fix typo in lib.rs doc
  • add mechanism for forcing frame pointer.
  • Fix Windows CI for now
  • Bump to 1.0.45
  • More jobserver rejiggering
  • Bump to 1.0.44
  • Fix acquire release typo
  • Bump to 1.0.43
  • Account for the jobserver implicit token
  • Migrate CI to GitHub Actions
  • Bump to 1.0.42
  • Update to the 2018 edition
  • Bump MSRV to 1.31.0
  • Rejigger parallel compilation support
  • Pass /Brepro on MSVC by default (#437)
  • Set ZERO_AR_DATE for archiver invocations
  • Bump to 1.0.41
  • Add no_default_flags method (#435)
  • Fix a build warning on Windows
  • Bump to 1.0.40
  • Fix a bad merge typo
  • Bump to 1.0.39
  • Add CUDA support for MSVC (#426)
  • Merge pull request #433 from turboladen/feature/config-ios-version-min
  • use wr-c++ instead of vx-cxx
  • Merge pull request #430 from laanwj/2019_08_rv_nopic
  • Set ABI correctly for 32-bit targets
  • Add RISC-V support
  • Bump to 1.0.38
  • Remove --test-threads 1 on Azure
  • Don't hard link the gcc-shim executable on macOS
  • Move env var tests into separate modules
  • Improve error reporting
  • use vx-cxx
  • Add support for vxWorks using vx-cc
  • Correct documentation for Build::debug
  • Merge pull request #398 from chouquette/add_uwp
  • Hopefully last fix for CI...
  • Don't self-update existing rustup
  • Fix some bash syntax
  • Pray bash works
  • Ok pwsh.exe isn't on the 2015 image
  • Try running a different powershell
  • Fix scripts for MSVC
  • Fix scripts for MSVC
  • Still install rustup on older Windows images...
  • Don't self-update on Windows
  • Attempt to fix CI
  • Add find msbuild vs16 logic.
  • Merge pull request #410 from ogoffart/master
  • Merge pull request #411 from spl/tempdir-in
  • Create temp dir in same dir as gcc-shim
  • Merge pull request #406 from spl/test-path-fn
  • Localize path split and join to one function
  • Bump to 1.0.37
  • Recognize the "wasm32-wasi" target tuple.
  • Bump to 1.0.36
  • Fix build with Rust 1.16.0.
  • Run the Minimum Rust CI job on Windows and fix Linux.
  • Run rustfmt
  • Tweak error printing
  • Add support of MIPS r6, o32 and n64
  • Bump to 1.0.35
  • Make detection more robust
  • Autodetect VS 2019
  • Run rustfmt
  • More typos...
  • Install 32-bit libc++
  • Install gcc-multilib for 32-bit compiles on Linux
  • Actually execute tests on Linux
  • Bump to 1.0.34
  • Preserve env vars from windows_registry in lib.exe detection
  • Remove badges from Cargo.toml
  • Bump to 1.0.33
  • Merge pull request #387 from froydnj/lib-alternatives-on-windows
  • Set up CI with Azure Pipelines
  • Bump to 1.0.32
  • Minimally support Visual Studio 2019.
  • use clang for wasm32-unknown-unknown target
  • Bump to 1.0.31
  • Disable automatic turning off defaults
  • Use self.getenv instead of env::var
  • Fix typo in readme.
  • Bump to 1.0.30
  • Add wasi target definition
  • Move addition of default flags to own method
  • Insert CFLAGS after default flags; addresses #376
  • Disable default args when they may conflict with CFLAGS/CXXFLAGS
  • Add enviroment variable to disable default flags: CRATE_CC_NO_DEFAULTS
  • Don't set duplicate/conflicting optimization flags
  • Bump to 1.0.29
  • Use --target with non x86/x86_64 clang-cl targets
  • Crate category
  • Update travis
  • Update README
  • Update travis config
  • Bump to 1.0.28
  • Allow(deprecated) to avoid needlessly breaking the Rust ecosystem
  • Revert "Update minimum version"
  • Revert "Replace future deprecated call"
  • Bump to 1.0.27
  • Fix a deprecation on Windows
  • Update minimum version
  • Replace future deprecated call
  • Add the Armv8-M targets
  • Merge pull request #361 from piersfinlayson/master
  • Correctly handle both hard and soft floating point
  • Generate valid sintructions on ARMv6 (see rust-lang/rust issue #50583)
  • Remove readme testing
  • exclude CI files
  • Merge pull request #331 from nmlgc/master
  • Fall back on finding devenv and MSBuild via the previous registry-based method
  • find_tool_in_vs15_path(): Filter nonexistent executables
  • Find devenv and MSBuild via SetupConfiguration rather than registry keys
  • Split MSVC 15 instance iterator retrieval into a separate function
  • Bump to 1.0.18
  • Pass cc_wrapper_args to all compiler invocations
  • Stray println
  • special case for devenv.exe
  • Set explicit host when checking supported flags.
  • Don't override host when checking supported flags.
  • Bump to 1.0.17
  • Merge pull request #321 from hsivonen/neon
  • Bump to 1.0.16
  • Add new cppwinrt folder to Windows 10 SDK includes.
  • Bump to 1.0.15
  • Fix i586-pc-windows-msvc on clang-cl
  • Version 1.0.14
  • Pass -m32 and -m64 for clang-cl
  • make extra_warning_flags return an Option
  • bump minor version
  • add option to enable/disable -Wextra on gcc/clang
  • Remove rustfmt builder
  • Bump to 1.0.12
  • Don't classify clang as MSVC
  • Bump to 1.0.11
  • Run cargo fmt
  • Fix compile on stable
  • Set env vars for clang-cl invocations
  • Detect clang-cl correctly
  • Bump to 1.0.10
  • Allow overwriting the default cpp_link_stdlib
  • Pass -static depending on crt-static on linux too.
  • Bump to 1.0.9
  • cargo fmt
  • Support CC env vars like CC='cc -foo'
  • Bump to 1.0.8
  • rustfmt
  • Merge pull request #306 from jdm/parallel-supported-flags2
  • Extend critical section to encompass full supported flags check.
  • Msvc needs /O1 (which implies /Os) to generate smallest binaries
  • Run cargo fmt
  • Handle paths to ccache-like wrappers
  • Add icecc to ccache-like whitelist
  • Bump to 1.0.7
  • Trim spaces around env vars
  • Bump to 1.0.6
  • Some tweaks for iOS
  • Bump to 1.0.5
  • Pass lib.exe arguments though a file when the arg list is too long.
  • Add sparc-unknown-linux-gnu cross-compile target
  • Add powerpc-unknown-linux-gnuspe cross-compile target
  • Merge pull request #285 from ratake/master
  • Fix compiling C++ libraries on iOS
  • Simplify the parallel Result with collect()
  • Only build the threadpool if customized
  • Update to rayon 1.0
  • Merge pull request #282 from Mrmaxmeier/cache-is_flag_supported
  • document new is_flag_supported behaviour
  • reuse result of previous is_flag_supported-calls
  • Doc
  • Make is_flag_supported public
  • Don't treat 'x86_64-unknown-cloudabi-cc' as being MSVC.
  • Add support for {armv4t,armv5te}-unknown-linux-gnueabi
  • Pick the right compiler for CloudABI.
  • Don't export Object for now
  • Merge remote-tracking branch 'upstream/master' into peterhj-cuda
  • Cleanup after merging with latest master.
  • Merge remote-tracking branch 'origin/master' into peterhj-cuda-devel
  • Clarify wording of license information in README.
  • Fix a typo in the docs
  • Bump to 1.0.3
  • tests for no-ccache environments
  • rename cc to cc_wrapper
  • actually using ccache for compiler command
  • merged
  • env_tool returning additional param for ccache case
  • Separated cflags and command args
  • Add a homepage to Cargo.toml
  • Bump to 1.0.1
  • Add -mx32 to x86_64-unknown-linux-gnux32
  • Fix badges
  • Add custom flags after -Wall
  • Use cmd /c emar.bat on Windows emscripten
  • Merge pull request #244 from makotokato/android-thumb2
  • Update Travis/AppVeyor configs
  • Note that this is a rename crate
  • Bump to 1.0.0
  • Fix tests from rename
  • Rename the crate to cc
  • Bump to 0.3.54
  • Only pass -Oz to clang
  • Execute cmd directory for bat scripts on Windows
  • Add sccache to the whitelist of ccache-like compilers
  • Add tests for flag_if_supported in C++ mode.
  • Fix flag_if_supported for C++ sources.
  • Defer flag checks until compile() is called.
  • Switch MSVC from /Wall to /W4
  • Don't capitalize library names
  • Bump to 0.3.53
  • Correct lookup of DEBUG
  • Bump to 0.3.52
  • Add useful derives for VsVers
  • Explain emitted cargo metadata
  • Fix non-delimited library names
  • Merge branch 'try-refactor' of https://github.com/marco9999/gcc-rs
  • Add

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

0 participants