[Openmcl-devel] OpenMCL Versions

Andrew Shalit alms at clozure.com
Sun Aug 13 08:19:00 PDT 2006

OK, it looks like we have the following versions of OpenMCL:

-- LinuxPPC 32-bit -- available as version 1.0.
-- Linux x86-64 -- not available in a public distribution but almost done?
-- DarwinPPC/MacOS X 32-bit -- available as version 1.0.
-- DarwinPPC/MacOS X 64-bit -- available as version 1.0.

In addition, you're hoping that the port to Darwinx8664 will be 
relatively straightforward (knock on wood).

Do you have a sense of which versions are currently getting used the 
most?  How about which versions are paying customers most interested in?

Is it still the case that the Darwin/MacOS X versions haven't been run 
under Darwin?

Lastly, is the following documentation still accurate?

1.1 System Requirements

1.1.1 LinuxPPC

OpenMCL runs under relatively recent versions of LinuxPPC. It requires 
version 2.2.13 (or later) of the Linux kernel and version 2.1.3 (or 
later) of the GNU C library (glibc) at a bare minimum.

Unlike previous versions, OpenMCL 1.0 should run reliably under Linux 
distributions that used Thread Local Storage ABI extensions in their C 
and/or thread libraries; older OpenMCL versions may not run reliably 
when TLS is involved. (Some distributions provided both non-TLS 
libraries and TLS-enabled libraries, with an environment variable or 
other dynamic linker mechanism which allows the default to be 
overridden. The details vary.)

The trend in the Linux world is clearly towards TLS; in some future 
release, OpenMCL may require TLS-based system libraries to run and a 
TLS-enabled toolchain to build.

1.1.2 DarwinPPC/MacOS X

OpenMCL was originally developed under MacOS X version 10.1; OpenMCL 
version 0.14 and later depend on pthreads functionality introduced in 
OSX 10.2 ("Jaguar"). Most current development takes place under 10.3 and 
10.4; there may be some (relatively minor) advantages to assuming 10.3 
or later, and that change (dropping support for OSX 10.2) may happen in 
the near future.

The 64-bit DarwinPPC version of OpenMCL requires functionality 
introduced in OSX 10.4 (namely, the ability to run 64-bit binaries) and, 
obviously, a G5 processor.

I haven't been able to do any preliminary testing under Darwin proper, 
but OpenMCL doesn't intentionally use any MacOS X features beyond the 
Darwin subset and therefore it seems likely that OpenMCL would run on 
PPC Darwin versions that correspond to recent OSX versions.

1.1.3 Linuxx8664

OpenMCL runs on relatively recent Linux distributions for the x86-64 
(aka amd64, aka x64) architecture. The OS and runtime features that it 
depends on (Thread Local Storage support in the toolchain and standard 
libraries, the New Posix Thread Library (NPTL) seem to be present in all 
current Linux distributions for x86-64.

More information about the Openmcl-devel mailing list