From ebc512096b6a0f9cc7901e07657a23e9f297a267 Mon Sep 17 00:00:00 2001 From: michel-schinz Date: Sun, 14 Dec 2003 14:46:10 +0000 Subject: [PATCH] *** empty log message *** --- scheme/install-lib/configure.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 scheme/install-lib/configure.scm diff --git a/scheme/install-lib/configure.scm b/scheme/install-lib/configure.scm new file mode 100644 index 0000000..2a39eaa --- /dev/null +++ b/scheme/install-lib/configure.scm @@ -0,0 +1,27 @@ +;;; Library to obtain information about the underlying platform. +;;; $Id: configure.scm,v 1.1 2003/12/14 14:46:10 michel-schinz Exp $ + +(define-structure configure (export host) + (open scheme-with-scsh + srfi-13) + (begin + (define (canonical-machine uname-record) + (let* ((machine (uname:machine uname-record)) + (os (uname:os-name uname-record))) + (cond + ((member machine '("i386" "i486" "i586" "i686")) "i386") + ((or (string=? machine "Power Macintosh") + (and (string=? os "AIX") + (regexp-search? (rx (: "00" (= 6 digit) any any "00")) + machine))) + "powerpc") + (else machine)))) + + (define (canonical-os-name uname-record) + (string-downcase (uname:os-name uname-record))) + + (define (host) + (let ((uname-record (uname))) + (string-append (canonical-machine uname-record) + "-" + (canonical-os-name uname-record))))))