Skip to content

Releases: AmigaLabs/clib4

v2.0.0

16 Aug 16:37
ab40f98

Choose a tag to compare

Notice: Applications that were compiled with older version of clib4, need to be recompiled to use the new version without issues

Highlights in this major release

  • Memory allocator: overhauled. wmem now supports aligned allocations (e.g., memalign / posix_memalign).
  • Pthreads: heavily optimized. Semaphores were replaced with mutexes where appropriate. Thread-local storage (TLS) operations are now much faster thanks to targeted inline assembly.
  • I/O: fixes and speedups to stdio/unistd paths; performance now closely matches newlib’s.
  • Startup: fixed issues when launching programs from Workbench tooltypes. Note: existing programs may need to be recompiled.
  • ctype: fully rewritten; up to ~80% faster.
  • Environment: getenv() / setenv() reimplemented for higher performance.
  • Misc: numerous additional fixes and improvements.

What's Changed

Full Changelog: v1.6.0...v2.0.0

v1.6.0

28 Apr 20:03
da4edaa

Choose a tag to compare

What's Changed

Full Changelog: v1.5.0...v1.6.0

v1.5.0

24 Feb 18:56
29bc6cd

Choose a tag to compare

What's Changed

Full Changelog: v1.4.1...v1.5.0

v1.4.1

17 Dec 18:07
5d728de

Choose a tag to compare

What's Changed

Full Changelog: v1.4.0...v1.4.1

v1.4.0

26 Nov 18:54
1e4d165

Choose a tag to compare

What's Changed

  • Fix problems with pipe and O_NONBLOCK. by @elfpipe in #185
  • Fixed Spawnv. Added waitpid/wait functions by @afxgroup in #186
  • Reverse the order of SBM_(NON_)BLOCKING. (Second attempt.) by @elfpipe in #188
  • Added ERROR_WOULD_BLOCK == EWOULDBLOCK to __translate_io_error_to_err… by @elfpipe in #189
  • Added handling of O_NONBLOCK fds for select/poll. by @elfpipe in #190
  • Poll mode reported avaibale data,even that isn't the case by @migthymax in #192
  • Added private function __search_expand_command_path() by @elfpipe in #193
  • Further patches on the unix->amiga path translation algorithm by @elfpipe in #194
  • Suggestion to implement spawnvpe_callback + fix a few thangs with regular spawnvpe by @elfpipe in #196
  • Beta10 - spawnvpe contributions by @elfpipe in #198
  • Test for spawnvpe (+pipe) by @elfpipe in #199
  • Remove unneeded assertion in getcwd, because are valid input parameter by @migthymax in #200
  • Added sigsuspend by @migthymax in #202
  • Update version in repo after a release by @walkero-gr in #201
  • Make announcement in discord by @walkero-gr in #203
  • Beta10 - patches to fix performance of spawnvpe+waitpid by @elfpipe in #204
  • Fix return code for spawnvpe/waitpid. by @elfpipe in #205
  • Revert initializer to 0 instead of EOF (stdio/fwrite.c). by @elfpipe in #206
  • Fix popen/pclose and add test for popen. by @elfpipe in #207
  • Remove command size limit in spawning functions. by @elfpipe in #209
  • Wmem new memory allocator by @afxgroup in #213
  • Preparing release of the v1.4.0 by @walkero-gr in #214

New Contributors

Full Changelog: v1.3.0...v1.4.0

v1.3.0

04 Jun 12:47
90c4621

Choose a tag to compare

What's Changed

Full Changelog: v1.2.0...v1.3.0

More details on some changes

  • Moved all runtime optimized functions check to library initialization.This will speedup drastically a lot of functions
  • Add an additional test on mkdir to avoid the possibility to use more than one : in name
  • Fixed TIOCSWINSZ ioctl command. Check comment for details. Added FDF_IS_SERIAL to implement serial communication over fd (not yet implemented)
  • Added the possibility to profile the clib4
  • Fixed resolv problem was causing bad nameserver reading. Added _SC_TTY_NAME_MAX to sysconf
  • Fixed pipe2 was not using a reentrant pipenum variable. Fixed a problem in name resolution was not correctly loading search domain and hosts file
  • Pthread constructor is not static because needs to be called from shared amiga libraries if needed since constructors are not called due lack of main and all initialization done in _start
  • Fixed the destructor problem
  • Don't call GETCLIB4 on checkabort if we have already called it previously
  • Fixed some SPE errors during compilation. Move tzname* variables to global. Some minor makefile changes
  • Added elf.h
  • Implemented tzset was empty and reworked _tzname, _timezone and _daylight variables
  • Added missing in_pktinfo in in.h
  • Fixed dos.h to define BOOL. Added into features.h inline and define keyword if -ansi/-stdc=90 is used (not in c++)
  • Accept revisions of clib4 higher that current
  • Fixed socket flags was causing ffmpeg to fail
  • Determine the SDK version for which clib4 is being built with during the building of a cross compiler
  • Fixed a bug in fgets was using trashed buffers if used in while
  • Fixing pthread_timer_cond bug and some time problems
  • Fixed a problem in timersub

v1.1.0

21 Mar 15:05
5df86b2

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: clib4-1.0.0...v1.1.0

clib4-1.0.0b1

04 Oct 17:20
6afaaf8

Choose a tag to compare

clib4-1.0.0b1 Pre-release
Pre-release

First clib4.library version with the new name

Beta10

04 Jul 10:22
28aa4ee

Choose a tag to compare

Beta10 Pre-release
Pre-release

Clib2 now is an AmigaOS shared library
Clib2 now is fully reentrant
Clib2 now supports Unix sockets (emulated using native sockets)
SYSV library is now included into clib2 and external library is not needed anymore
Many new functions and fixes
Added AmigaOS installer

Beta9

07 Mar 17:01
ea6adcd

Choose a tag to compare

Beta9 Pre-release
Pre-release

Added aio* POSIX functions with some minor limitations
Fixed shared objects libraries (They needs a new elf.library)
Added sigsetjmp/siglongjmp
pthread moved into libc. libpthread however exists for compatibility reasons
Some minor fixes
Added more test programs