./devel/libffcall, Foreign function call libraries

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 2.4, Package name: libffcall-2.4, Maintainer: adam

GNU libffcall is a library which can be used to build foreign
function call interfaces in embedded interpreters.


Required to build:
[pkgtools/cwrappers]

Master sites: (Expand)

Filesize: 1224.382 KB

Version history: (Expand)


CVS history: (Expand)


   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2021-06-23 21:05:20 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
libffcall: update to 2.4.

New in 2.4:

* Added support for the following platforms:
  (Previously, a build on these platforms failed.)
  - arm64: macOS 11.
  - arm: FreeBSD 12.
  - sparc: Solaris 11 32-bit.

New in 2.3:

* Added support for the following platforms:
  (Previously, a build on these platforms failed.)
  - x86_64: FreeBSD 13, OpenBSD 6.5 and newer.
  - powerpc64: AIX 7 with xlclang compiler.

* Fixed a couple of multithread-safety bugs in the trampoline and callback
  packages.
   2020-04-19 00:00:40 by Joerg Sonnenberger | Files touched by this commit (2)
Log message:
.eh_frame section on amd64 is supposed to be read-only.
   2019-10-10 13:53:12 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
libffcall: update to 2.2.

New in 2.2:

* Added support for the following platforms:
  (Previously, a build on these platforms failed.)
  - armv6 (Raspberry Pi): Linux.
  - hppa: Linux 32-bit.
  - riscv32: Linux with ilp32d ABI.
  - riscv64: Linux with lp64d ABI.

* The build for the mips 32-bit ABI is now compatible with toolchains for
  the 'fpxx' ABI variant.  The downside is that the mips1 architecture is
  no longer supported.

* Fixed a bug regarding passing of more than 8 arguments on the following
  platforms:
  - arm64: Linux 64-bit.

* Fixed a stack corruption bug on the following platforms:
  - hppa: HP-UX 32-bit.
   2018-02-25 22:08:53 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
libffcall: update to 2.1.

New in 2.1:

* Added support for the following platforms:
  (Previously, a build on these platforms failed.)
  - x86_64: Solaris 11.3.
  - OpenBSD 6.1.
  - HardenedBSD 10 and 11.

* Fixed a bug regarding passing of pointers on the following platforms:
  - x86_64: Linux with x32 ABI: CC="gcc -mx32".

* Fixed a crash in trampoline on the following platforms:
  - mips: Linux with CC="gcc -mabi=64", little endian.
   2018-01-07 14:04:44 by Roland Illig | Files touched by this commit (583)
Log message:
Fix indentation in buildlink3.mk files.

The actual fix as been done by "pkglint -F */*/buildlink3.mk", and was
reviewed manually.

There are some .include lines that still are indented with zero spaces
although the surrounding .if is indented. This is existing practice.
   2017-09-10 22:00:49 by Thomas Klausner | Files touched by this commit (5)
Log message:
Import libffcall-2.0 as devel/libffcall.

GNU libffcall is a library which can be used to build foreign
function call interfaces in embedded interpreters.

Changes compared to devel/ffcall:

New in 2.0:

* The package now installs a library libffcall.{a,so}. It contains the
  'avcall' and 'callback' packages. The libraries libavcall.{a,so} and
  libcallback.{a,so} are still installed as well, but are deprecated.

* The installed libraries are now installed as shared libraries by default
  (except for libvacall, which is still a static library only).

* The installed shared libraries are now properly versioned. This means that
  when installing with --enable-shared, upgrading to a newer version of
  libffcall will not break existing binaries.

* The installed include files are now platform independent. This means that
  you can now install libffcall for different ABIs on the same system, using
  the same --prefix option but different --exec-prefix options for each ABI.

* API changes in <trampoline.h>:
  - The second argument of alloc_trampoline() is now a 'void**', rather
    than a 'void*'.
  - The return value of trampoline_variable() is now a 'void**', rather
    than a 'void*'.
  - The argument of trampoline_address(), trampoline_variable(),
    trampoline_data() is now a function pointer instead of a 'void*'.

* Fixed a bug regarding floating-point arguments followed by
  non-floating-point arguments on the following platforms:
  - arm: Linux 32-bit, with hardware floats.
  - powerpc: Linux 32-bit.
  - s390: Linux.

* Fixed a bug regarding structure returns on the following platforms:
  - i386: FreeBSD.
  - i386: MinGW.
  - mips: old 32-bit ABI (Linux, IRIX).

* Added support for the following platforms:
  (Previously, a build on these platforms failed.)
  - i386: MSVC 14.
  - x86_64: Cygwin.
  - x86_64: MinGW.
  - x86_64: MSVC 14.
  - hppa64: HP-UX 11.
  - m68k: Linux.

* Verified support for the following platforms:
  (A build on these platforms worked and still works.)
  - i386: FreeBSD, NetBSD, OpenBSD, DragonFly BSD.
  - i386: Hurd.
  - x86_64: FreeBSD, NetBSD, OpenBSD.

New in 1.13:

* The license has been changed from GPLv2 to GPLv2+.

* Added support for the following platforms:
  (Previously, a build on these platforms failed.)
  - x86_64: Mac OS X 64-bit.
  - x86_64: Solaris 64-bit.
  - x86_64: Linux with x32 ABI: CC="gcc -mx32".
  - arm: Linux 32-bit, without hardware floats.
  - arm64: Linux 64-bit.
  - s390x: Linux 64-bit.
  - powerpc: AIX 64-bit.
  - mips: IRIX 6.5 with CC="cc -32".
  - sparc: Solaris 64-bit.

* Fixed support for the following platforms:
  (Previously, a build on these platforms appeared to succeed but was buggy.)
  - x86_64: Linux.
  - arm: Linux 32-bit, with hardware floats.
  - powerpc: Linux 64-bit.
  - mips: Linux with CC="gcc -mabi=32".
  - mips: Linux with CC="gcc -mabi=n32".
  - mips: Linux with CC="gcc -mabi=64".
  - mips: IRIX 6.5 with CC="gcc -mabi=n32".
  - s390: Linux.
  - sparc: Linux 64-bit.
  - ia64: Linux.
  - hppa: HP-UX 32-bit.

* Verified support for the following platforms:
  (A build on these platforms worked and still works.)
  - i386: Linux, Solaris, Mac OS X.
  - powerpc: Linux 32-bit.
  - powerpc: AIX 32-bit.
  - powerpc: MacOS X.
  - mips: IRIX 6.5 with CC="cc -n32".
  - sparc: Solaris 32-bit.
  - sparc: Linux 32-bit: CC="gcc -m32".
  - alpha: Linux.

* Support for a security feature: On Linux and FreeBSD platforms, linking with
  the libffcall libraries no longer causes the stack to become executable.

New in 1.12:

* Added ppc64le to the list of supported architectures.

New in 1.11:

* Header now define LIBFFCALL_VERSION (to 0x010B).
* Better support for IA64 on Linux (kernel 2.6.16+ and gcc 4.1.0+).
* Added ARM support from Jonathan Olson (debian 1.10-2).
* Added MIPSel support from Thiemo Seufer (debian 1.10-2).
* Added ARMel support from Max Lapan.