Mercurial > pub > dyncall > dyncall
diff ChangeLog @ 0:3e629dc19168
initial from svn dyncall-1745
author | Daniel Adler |
---|---|
date | Thu, 19 Mar 2015 22:24:28 +0100 |
parents | |
children | ffaf59700cfb |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ChangeLog Thu Mar 19 22:24:28 2015 +0100 @@ -0,0 +1,194 @@ +This file lists bigger/noteworthy changes, only... + +Version 0.9 (upcoming) +dyncall: + o ARM64 support (AAPCS64 on Linux, Apple's derived version on iOS) + o PPC64 support (thanks Masanori!) + o introduced dcArgF and dcVArgF for flexible/convenient argument binding (works like dcCallF/dcVCallF but without the function call) + o added -fPIC by default for FreeBSD + o PPC32 linux syscall support +dyncallback: + o ARM64 support (AAPCS64 on Linux, Apple's derived version on iOS) + o PPC64 support (thanks Masanori!) + o PPC32 System V support (Linux) + o fix for PPC32 Darwin/OS X + o more intuitive specification of callback return type +doc: + o added ARM64 support info and calling convention documentation + o added PPC64 support info + o cleanup, brought all up to date, etc. +tests: + o callf test covers new argf interface +buildsys: + o more flexible testsuite build and 'pack' target for convenience + o fixes/additions for OS X universal builds + o added iOS universal build support for armv7/arm64 + o helper script for generic .elf -> EBOOT.PBP creation for PSP + o Sun make fixes for C++ code in test suite +bindings: + o erldc: Erlang binding (thanks Erik!) + +Version 0.8 +buildsys: + o big simplification make-based build system, no more distinct GNU and BSD makefiles anymore + o new, much simpler ./configure for new make-based build-system + o support for in-source and out-of-source builds for make-based build systems + o made configure.bat guess x64 as target arch for x64 windows hosts + o based more sources on portasm generation +dyncall: + o fix for ARMv7 Thumb-2 code (tested on iPhone 4 CDMA / iOS 6.0.1) + o bugfixes for -O2 builds for SPARC-v9 and SPARC-v7 + o new optimized call kernel for SPARC-v9 without conditionals + o bigger refactoring and optimization of mips o32 + o x64 optimizations +dyncallback: + o added callback support for plan9 + o big cleanup, removal of duplicate files after introduction of portasm + o include path fixes for public facing APIs (removed relative paths) +doc: + o cleanup of manual and corrections + o added info about newly supported and/or tested platforms (e.g. FreeBSD on ARM) + o restructured folder layout for documentation + o added API doc for dyncallback and dynload + o added manpages for dyncallback and dynload +tests: + o added arm/thumb interwork test suite +bindings: + o godc: added bindings for Go + o rbdc: fixed and extended ruby bindings + o shdc: renamed shell binding to shdc and added feature to list shared-objects' symbols + +Version 0.7 +architecture: + o added subproject: portasm - portable (GNU AS,+Apple and MASM) assembly framework + o added subproject: autovar - predefined macro framework (was dyncall_macros.h) + o added support for sparc (32-bit) (tested on linux/debian,openbsd,solaris) + o added support for sparc (64-bit) (tested on linux/debian,openbsd,solaris) + o added support for Solaris and SunPro compiler for i386, x86_64, sparc and sparc64 + o improved auto-detection via preprocessor defines +dyncall updates: + o uses portasm (GNU,Apple,Microsoft) common sources for x86,x64,ppc32,arm32_arm + o bug fixes for x64/win64 calling convention + o added support for mingw32-w64 on x64 + o improved cdecl x86 calling convention: stack always 16 byte aligned + o updated API and initial support for structs (for x86/AMD64) + o initial support for syscalls on x86, added x86 int80h linux/bsd + o added Minix port (stable) + o optimized vector buffer for small type pushing + o minor fix for amd64/sysv: alignment to 32-byte + o bug fix for ppc32/sysv: ellipsis calls work now + o updated API, introduced DC_CALL_C_ELLIPSIS_VARARGS + o changed interface: dcMode does not reset internally anymore +dyncallback updates: + o uses portasm for x86,x64 + o added Solaris/x86/sunpro port (stable) + o added Minix port (unstable) + o callback support for Darwin/ppc32 + o updates source, uses relative includes +dynload updates: + o fixes for missing includes (dyncall_alloc.h) + o fixes for self-resolving symbols on windows + o removed Dbghelf.lib dependency + o bug fixes for cygwin/x86 + o fixes for beos/haiku + o no dependencies to libdyncall sources. +buildsys additions: + o added zero-config (BSD,GNU,SUN) make files (Makefile.embedded) + o added in/out-of-source configure2 w/ (BSD,GNU) make files (Makefile.generic') + o added bootstrap lua script (download/build) + o Nmakefile: more tests included (resolve_self) + o improved cross-compilation for iOS (upgrade to 4.3 sdk) + o darwin 8.0 support + o added 'install' support for Makefile.embedded +buildsys/gmake updates: + o added support for msvc/x64 tool-chain + o default settings for build-dir changed to '.' + o cleanup: removed top-level Make{Prolog,Epilog,Rules} files and updated all sub-projects and tests + o added support for DESTDIR staging installation + o added support for manual page installation +buildsys/cmake updates: + o updated find module scripts (see cmake/Modules) + o added support for using dyncall as sub-project (via *Config.cmake files) + see details in README.CMake + o fixes for msvc and ml + o fixes for CPack + o fixes for universal builds on Mac OS X + o supports SunPro with *.S files. + o added experimental 'dynMake' portable make-based build-system (not stable, yet) +documentation updates: + o added dyncallback documentation + o updated dyncall documentation + o minor updates +tests: + o added flexible test suite for calls (call_suite) based on Lua and C + o added syscall test + o updates to resolve-self test (adding additional link flags to export symbols) + o improved dir name portability (renamed plain_c++ -> plain_cxx) + o renamed *.cpp -> *.cc files (OpenBSD/Sun make has no implicit rules for cpp) + +Version 0.6 +building: + o new build systems: CMake and Plan9's mk + o buildsys/gmake tool chain update: pcc and iphone sdk + o x64 bugfix: added "-fPIC" even for static libs +dynload updates: + o enum symbols update: Mach-O and Win64 (thanks Olivier) + o numerous convenience changes to dynload interface (thanks Olivier) + o added support for resolving application images itself +dyncall updates: + o new platform support: arm/iphone (armv6), x86/Plan9 + o new mips calling conventions: oabi, n64 (both endian models) + o cleanup: unexported functions in MASM files, b/c export not needed (thanks Olivier) + o interface update: added error reporting facility 'dcGetError' + o bugfix for ppc32/sysv: ellipsis calls were broken + o interface update: added new abstract mode for ellipsis calls (DC_CALL_C_ELLIPSIS) +docs: + o comprehensive update +tests: + o plain: split "plain" test up in C and C++ part + o callbacksuite: added multiple configuration support for callback_suite + +Version 0.5 + o renamed arm9 stuff to arm32 + o added non-EABI ABI for arm32 (before, EABI was the default implementation) + o added dyncallback support for x64/windows (thanks Olivier), x64/darwin, arm32/arm, arm32/thumb + o synced documentation again with current state of the source (lots of small changes) + o updated ruby binding to current state of signature string (still some features missing, though) + o added a couple of new options to configure scripts (e.g. prefix-bd, new targets, etc.) + o darwin universal binary support + o added new tests callback_plain and calback_suite + o added Haiku/BeOS support + +Version 0.4 + o added 'doc' makefile target for coherency and ease of use + o fixed nmake buildfiles and configure.bat (were out of date and wrong) + o test suite clean up (GNUmake, BSDmake): + target "config" modified, phony without dependencies to other builds + o bugfix: GNU fastcall calling convention for float and double arguments + was wrong. no skip of register. + o update: x86win32* suite tests are built on cygwin now, added total result output + o signature types change: + C Strings: 'S' -> 'Z' + long: 'l' -> 'j' + long long: 'L' -> 'l' + added unsigned integer type signature characters: upper case encoding + o added: callbacks component (support only for some platforms ATM) + o added: test cases for alloc_wx, thunk + o updated Documentation + +Version 0.3 + o added Linux PPC32 support + o added ARM THUMB mode support + o cosmetic changes, documentation updated + o bugfix: on cygwin exported C symbols in GNU as are prefixed with '_' now. + o removed scons build support + +Version 0.2 + o added scons build support + o configure variables all prefix CONFIG_* now + o configure variable INSTALL_DIR changed to INSTALL_PREFIX + o configure (shell version) option "--prefix" changed to "--prefix=<path>" + +Version 0.1: + o initial release +