Version 0.9.29
- added rpmalloc to standard
libtcc1.a
,libtcc.so/lib/dylib
, and cross chains,
this replaces all stdlib.hmalloc
type calls,- just
#include <rpmalloc.h>
- just
- added cthread to standard
libtcc1.a
,libtcc.so/lib/dylib
, and cross chains,
this allows all thread related withC11
like interface calls to go throughpthread
on Windows also,- just
#include <cthread.h>
forC11
emulation, it includes#include <pthread.h>
for Windows.
- just
- 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 ifthread_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 toolchaintcc.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 regulartcc
executable, as cmake's compiler to use.
- On Windows
Full Changelog: v0.9.28...0.9.29