Data for C-Kermit 10.0 builds table

Frank da Cruz
fdc@columbia.eduPlease send build data to this address
Last update: Tue Oct 3 06:31:45 2023 New York time

Thanks to ever-growing chaos in the C language definition and the reportoire and content of libraries and header files, it's increasingly difficult to make software written in C portable to different computers and operating systems, both old and new. C-Kermit 10.0, like all previous C-Kermit releases, is intended to work on every architecture, OS and version, where it worked before, going all the way back to the 1980s. To ensure the widest possible coverage, it is necessary to build each Beta test version on as many platforms as possible; the results for the C-Kermit 10.0 development cycle are recorded here:
If you can download and build the current Beta-test version of C-Kermit 10.0 on a platform (architecture, OS, OS version, with or without OpenSSL and/or Kerberos) that is not already in the builds table for current Beta, I can add it to the table if you send me:

  1. The OS or distribution name and version number
  2. The hardware architecture (e.g. x86_64, amd64, i386, RISC64, SPARC, etc)
  3. The command that was used to make the build.
  4. The date shown in the table is the date of the Beta test shown by C-Kermit when you start it.
  5. The size of the resulting executable in bytes or megabytes.
  6. The name and version number of the compiler used.
  7. For SSL and/or Kerberos builds, the name and version of SSL and/or Kerberos librar(y/ies)
  8. The status of the build: OK or Failed
  9. A brief indication of warnings or errors in the compilation

Also your name, if you want it to be added to the credits.

The buildlog script (new 5 June 2023)

To simplify the process I wrote a script (for Unix only): buildlog. Download and install it on your Unix system (you can use getkermitscript for this). Now you don't have transcribe or copy and paste all the data; the script creates a plain-text HTML table row you can email me. Do each C-Kermit build like this (after cd'ing to the C-Kermit source-code directory):
rm -f log
make linux 2>log
The results will be in same directory, filename linux.txt (replace "linux" with whatever the makefile target name was, like "freebwsd" or "linux+ssl"). There's one complication: there is no standard cross-platform way to find out a Unix system's OS name and version. In some cases the script gets it right, but in most others — notably all the many Linux varieties — they just say "Linux" and then give the kernel version, when what we want is the distribution name and version, e.g. Ubuntu 20.04.1. Similarly for Macintosh; for example, macOS 13.3 reports its OS as Darwin 22.4.0. In cases like these you can supply this yourself on the command line; examples:
buildlog "Centos 9"
buildlog "Debian 11"
buildlog "RHEL 6.10"
buildlog "Rocky 9.1"
buildlog "macOS 13.3"
buildlog "Ubuntu 20.04.1"
You could also combine the build and the report generation like this:
rm -f log ; make linux 2>log ; buildlog "macOS 12.6.5"
Here's the netbsd.txt file produced by 'buildlog "NetBSD 9.3"':
<td>NetBSD 9.3
<td>make netbsd
<td>gcc 7.5.0
It's an HTML table row for the builds table. Any warnings produced by the compiler are added automatically in the final <td>.

Here are some examples of builds-table entries:

OS and version Arch Build Date Size Compiler Security Status Details
FreeBSD 13.1 amd64 make freebsd 2023-05-05 2556352 clang 13.0.0 OK ckufio.c: <sys/timeb.h> is deprecated
MINIX 3.2.1 i386 make CC=/usr/pkg/bin/gcc minix3 2022-11-29 gcc 4.46 OK No warnings
HP-UX B.10.20 PA-RISC make hpux1000 2023-05-09 3187038 HP C 76.3 OK Warning: ckuus3.c 4071 Types incompatible in conditional expression.
Linux Debian 11 x86_64 make linux 2023-05-05 2796992 gcc 10.2.1 OK No warnings or errors
Linux Ubuntu 20.04.1 x86_64 make linux+krb5 CC=clang CC2=clang 2023-04-27 3067168 clang 15 MIT Kerberos 5 1.17 OK 135 warnings
Linux Ubuntu 22.04.2 x86_64 make linux+ssl 2023-05-09 N/A gcc 11.3.0 OpenSSL 3.0.2 Failed ckufio.c:586: security/pam_appl.h: No such file or directory
Mac OS X 10.5.8 ppc64 make macosx 2022-10-14 2477468 gcc 4.0.1 OK No warnings
macOS 12.6.2 Intel Xeon E5 make macos 2022-12-15 clang 14.0.0 OK (MacPro6) Warnings: 0
SunOS 4.1 SPARC Sun 3 make sunos41 2023-05-05 1933312 Bundled OK Pre-ANSI compiler; just a few harmless warnings
Solaris 11.4 SRU 49 64b x86_64 make CC=/usr/bin/gcc solaris11 -j256 2022-11-04 2735640 gcc 11.3.0 OK
VMS 5.4 VAX "" "" "OLDFIB" 2023-05-05 VAX C V3.1-051 OK (Pre-ANSI compiler) optimization suppressed in some modules
OpenVMS E9.2-1 x86_64 2023-05-09 5241856 VSI C X7.4-726 OK Some info messages but no warnings

Frank da Cruz / The Kermit Project / Page created May 2023