Download Latest Version dcr-i686-pc-windows-msvc-0.8.5.exe (1.3 MB)
Email in envelope

Get an email when there's a new version of dcr

Home / v0.6.8
Name Modified Size InfoDownloads / Week
Parent folder
dcr-0.6.8-1-x86_64.pkg.tar.zst 2026-05-27 2.1 MB
dcr-debug-0.6.8-1-x86_64.pkg.tar.zst 2026-05-27 262.6 kB
dcr-x86_64-pc-windows-gnu-0.6.8.exe 2026-05-27 9.1 MB
dcr-x86_64-apple-darwin-0.6.8 2026-05-27 5.5 MB
dcr-x86_64-pc-windows-msvc-0.6.8.exe 2026-05-27 6.2 MB
dcr-x86_64-unknown-linux-musl-0.6.8 2026-05-27 4.8 MB
dcr-aarch64-unknown-linux-musl-0.6.8 2026-05-27 4.3 MB
dcr-aarch64-unknown-linux-gnu-0.6.8 2026-05-27 4.3 MB
dcr-x86_64-unknown-freebsd-0.6.8 2026-05-27 4.8 MB
dcr-aarch64-pc-windows-msvc-0.6.8.exe 2026-05-27 4.2 MB
dcr-x86_64-unknown-linux-gnu-0.6.8 2026-05-27 6.3 MB
dcr-aarch64-apple-darwin-0.6.8 2026-05-27 5.2 MB
README.md 2026-05-27 2.1 kB
v0.6.8 source code.tar.gz 2026-05-27 127.8 kB
v0.6.8 source code.zip 2026-05-27 187.2 kB
Totals: 15 Items   57.4 MB 0

Added:

  • build.cxx_standard — separate C++ language standard for .cpp/.cxx/.cc files. When set, overrides build.standard for C++ sources. Example:

toml [build] language = ["c", "c++"] standard = "gnu11" cxx_standard = "gnu++17"

  • Variable substitution for cflags, ldflags, and include directory entries. All {version}, {version_major}, {name}, {profile} and other step variables are now available. Example:

toml [build] cflags = ['-DPROJECT_VERSION="{version}"']

  • FreeBSD build support in CI — new run_bsd workflow input and build-bsd job that cross-compiles x86_64-unknown-freebsd via cargo-zigbuild.

Changed:

  • License changed from MIT to GPL-3.0-or-later. All source files now carry the GPL-3.0 header. Default license in dcr new / dcr init changed to "GPL-3.0-or-later". README, FAQ, and CONTRIBUTING.md updated accordingly.
  • get_list_with_profile_and_target no longer duplicates list values when inherit = true and the profile/target value is identical to the base value.

Fixed:

  • Multi-language language array (e.g. ["c", "c++", "asm"]) no longer drops c++ during internal parsing — .cxx/.cpp/.cc source files are correctly discovered and compiled.
  • -std= flag is no longer passed to C++ files when only standard (C standard) is configured — uses cxx_standard when available, otherwise skips -std= for C++ sources, avoiding clang error invalid argument '-std=c11' not allowed with 'C++'.
  • Object file collision: source files with the same stem but different extensions (e.g. gdt.cxx and gdt.S) no longer overwrite each other. Object filenames now include the original source extension (e.g. gdt.cxx.o, gdt.S.o).
  • MSVC backend compile step now detects language per source file extension instead of using the global language field, fixing mixed C/C++ compilation with MSVC.
  • Assembler -x flag in unix_cc.rs and gen.rs is now placed before the source file, as required by clang/gcc.
  • {version} variables in build.clean are now correctly substituted.
Source: README.md, updated 2026-05-27