Skip to content

Releases: zelang-dev/tinycc

0.9.29

04 Oct 02:03
Compare
Choose a tag to compare

Version 0.9.29

  • added rpmalloc to standard libtcc1.a, libtcc.so/lib/dylib, and cross chains,
    this replaces all stdlib.h malloc type calls,
    • just #include <rpmalloc.h>
  • added cthread to standard libtcc1.a, libtcc.so/lib/dylib, and cross chains,
    this allows all thread related with C11 like interface calls to go through pthread on Windows also,
    • just #include <cthread.h> for C11 emulation, it includes #include <pthread.h> for Windows.
  • the cthread library addsthrd_local macro to emulate tls thread local storage if needed, using normal usage behaviors as functions,
    the macro can be used the same even if thread_local is really available.
  • added dlopen api for Windows, the Dynamically Load behavior works the same as Linux.
  • moved all source files into src subdirectory.
  • converted build system to use cmake only with a simple cross toolchain tcc.cmake file.
  • packaged cmake to create downloadable installer binaries for all supported platforms by default,
    this uses the platforms default package manager for setup.

Installer includes

  • armv7-tcc, i386-win32-tcc, x86_64-tcc, x86_64-win32-tcc, arm64-tcc, riscv64-tcc, x86_64-osx-tcc, i386-tcc, arm64-osx-tcc, armv7-wince-tcc, arm64-osx-libtcc1.a, armv7-wince-libtcc1.a, x86_64-win32-libtcc1.a, arm64-libtcc1.a, i386-libtcc1.a, x86_64-libtcc1.a, riscv64-libtcc1.a, x86_64-osx-libtcc1.a, armv7-libtcc1.a, i386-win32-libtcc1.a, all cross chain binaries.
  • tcc_prompt, launch shell with path and custom environment for compiler.
  • cmake_tcc, launch normal cmake command with some pre configuration, can pass two additional arguments,
    an shortcut to:
    • On Windows
      cmake .. -G "NMake Makefiles" -DCMAKE_TOOLCHAIN_FILE="%CMAKE_TOOLCHAIN_FILE%" -DCMAKE_BUILD_TYPE=%1 -DSYSTEM_NAME=%2 -DHOST_ARCH=%3 %4 %5
    • Otherwise
      cmake .. -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE -DCMAKE_BUILD_TYPE=$1 -DSYSTEM_NAME=$2 -DHOST_ARCH=$3 $4 $5
    • Therefore
      cmake_tcc Debug Native x86_64, will setup and launch regular tcc executable, as cmake's compiler to use.

Full Changelog: v0.9.28...0.9.29

v0.9.28

13 Apr 17:23
Compare
Choose a tag to compare

User interface:

  • new tcc -ar x and t flags (herman ten brugge)

Platforms:

  • new RISC-V (riscv64) target
  • native macOS support for x86_64/arm64 (Herman ten Brugge)

Features:

  • Improved support for C11
  • C11 _Static_assert support (matthias)

Fixes:

  • fix preprocessor line (#line) directive (Herman ten Brugge)
    Many more! see also git shortlog release_0_9_27...HEAD