Re: [Sbcl-bugs] can't compile sbcl-2.6.1 on OpenIndiana SPARC

Klaus Ziegler via Sbcl-devel <[email protected]>
Newsgroups gmane.lisp.steel-bank.devel
Message-ID <[email protected]>
Hi Douglas,

here you go - both attached. If you like I would
also create a complete log of the 32bit build and
sent that to you personly.
I don't really understand what you mean with 64-bit-only
illumos on SPARC can of course work with 32bit binaries.
I only need a 64bit sbcl binary - because then subsequent
packages like maxima are also build in 64bit. If the
sbcl binary is only 32bit, also maxima is only build in 32bit.
The default packaging metadata for maxima includes the
64bit path: /usr/lib/sparcv9/maxima, with a 32bit sbcl
binary it is just /usr/lib/maxima. On x86_64 illumos
the default path for maxima is /usr/lib/amd64/maxima,
and the oi-userland build-system substitues sparcv9/amd64
with the packaging macro $(MACH64).

If you help me with the lisp/and C code I'll try my best
if there are any SPARC assembler files left over, I think
we can make a sparcv9 config target working.

I'll re-try a 64bit config again when you have provided
me with these style fixes, and share my prototypes
with you personly if you don't mind - okay?

Many Regards
Thanks quite much in advance for the support !!!

Rgds
Klaus

On 2/4/26 18:39, Douglas Katzman wrote:
> If you email us your "local-target-features.lisp-expr" and 
> "output/stuff-groveled-from-headers.lisp" I can try a cross-build to 
> examine all the style-warnings.
>
> As to 64-bit support: there was a long-gone port for DEC Alpha that 
> ran on a 64-bit-only OS by ignoring the existence of any address space 
> above 4GB.  It's an interesting place to start for 64-bit SPARC, but 
> not the desired outcome. Regrettably I suspect you're very much on 
> your own though. I don't know any developer on the project who has a 
> real passion for SPARC assembly language.

-- 
illumos / illumos-developer / see discussions + participants + delivery 
options Permalink

_______________________________________________
Sbcl-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sbcl-devel
stuff-groveled-from-headers.lisp (text/x-common-lisp, 4.9 KB)
;;;; This is an automatically generated file, please do not hand-edit it.
;;;; See the program "grovel-headers.c".

(in-package "SB-ALIEN")

;;;flags for dlopen()
(defconstant rtld-lazy 1) ; #x1
(defconstant rtld-now 2) ; #x2
(defconstant rtld-global 256) ; #x100

(in-package "SB-UNIX")

;;; select()
(defconstant fd-setsize 65536) ; #x10000
;;; poll()
(defconstant pollin 1) ; #x1
(defconstant pollout 4) ; #x4
(defconstant pollpri 2) ; #x2
(defconstant pollhup 16) ; #x10
(defconstant pollnval 32) ; #x20
(defconstant pollerr 8) ; #x8
(define-alien-type nfds-t (unsigned 32))
;;; types, types, types
(define-alien-type clock-t (signed 32))
(define-alien-type dev-t (unsigned 32))
(define-alien-type gid-t (unsigned 32))
(define-alien-type ino-t (unsigned 32))
(define-alien-type mode-t (unsigned 32))
(define-alien-type nlink-t (unsigned 32))
(define-alien-type off-t (signed 32))
(define-alien-type size-t (unsigned 32))
(define-alien-type ssize-t (signed 32))
(define-alien-type time-t (signed 32))
(define-alien-type suseconds-t (signed 32))
(define-alien-type uid-t (unsigned 32))
;; Types in src/runtime/wrap.h. See that file for explantion.
;; Don't use these types for anything other than the stat wrapper.
(define-alien-type wst-ino-t (unsigned 32))
(define-alien-type wst-dev-t (unsigned 32))
(define-alien-type wst-off-t (signed 32))
(define-alien-type wst-blksize-t (signed 32))
(define-alien-type wst-blkcnt-t (signed 32))
(define-alien-type wst-nlink-t (unsigned 32))
(define-alien-type wst-uid-t (unsigned 32))
(define-alien-type wst-gid-t (unsigned 32))

;;; fcntl.h (or unistd.h on OpenBSD and NetBSD)
(defconstant r_ok 4) ; #x4
(defconstant w_ok 2) ; #x2
(defconstant x_ok 1) ; #x1
(defconstant f_ok 0) ; #x0

;;; fcntlbits.h
(defconstant o_rdonly 0) ; #x0
(defconstant o_wronly 1) ; #x1
(defconstant o_rdwr 2) ; #x2
(defconstant o_accmode 6291459) ; #x600003
(defconstant o_creat 256) ; #x100
(defconstant o_excl 1024) ; #x400
(defconstant o_noctty 2048) ; #x800
(defconstant o_trunc 512) ; #x200
(defconstant o_append 8) ; #x8
;;;
(defconstant s-ifmt 61440) ; #xf000
(defconstant s-ififo 4096) ; #x1000
(defconstant s-ifchr 8192) ; #x2000
(defconstant s-ifdir 16384) ; #x4000
(defconstant s-ifblk 24576) ; #x6000
(defconstant s-ifreg 32768) ; #x8000

(defconstant s-iflnk 40960) ; #xa000
(defconstant s-ifsock 49152) ; #xc000

;;; error numbers
(defconstant ebadf 9) ; #x9
(defconstant enoent 2) ; #x2
(defconstant eintr 4) ; #x4
(defconstant eagain 11) ; #xb
(defconstant eio 5) ; #x5
(defconstant eexist 17) ; #x11
(defconstant eloop 90) ; #x5a
(defconstant epipe 32) ; #x20
(defconstant ewouldblock 11) ; #xb

(defconstant sc-nprocessors-onln 15) ; #xf
;;; for waitpid() in run-program.lisp
(defconstant wcontinued 8) ; #x8
(defconstant wnohang 64) ; #x40
(defconstant wuntraced 4) ; #x4

;;; various ioctl(2) flags
(defconstant tiocgpgrp 29716) ; #x7414

;;; signals
(defconstant sizeof-sigset_t 16) ; #x10
(defconstant sig_block 1) ; #x1
(defconstant sig_unblock 2) ; #x2
(defconstant sig_setmask 3) ; #x3
(defconstant sigalrm 14) ; #xe
(defconstant sigbus 10) ; #xa
(defconstant sigchld 18) ; #x12
(defconstant sigcont 25) ; #x19
(defconstant sigemt 7) ; #x7
(defconstant sigfpe 8) ; #x8
(defconstant sighup 1) ; #x1
(defconstant sigill 4) ; #x4
(defconstant sigint 2) ; #x2
(defconstant sigio 22) ; #x16
(defconstant sigkill 9) ; #x9
(defconstant sigpipe 13) ; #xd
(defconstant sigprof 29) ; #x1d
(defconstant sigquit 3) ; #x3
(defconstant sigsegv 11) ; #xb
(defconstant sigstop 23) ; #x17
(defconstant sigsys 12) ; #xc
(defconstant sigterm 15) ; #xf
(defconstant sigtrap 5) ; #x5
(defconstant sigtstp 24) ; #x18
(defconstant sigttin 26) ; #x1a
(defconstant sigttou 27) ; #x1b
(defconstant sigurg 21) ; #x15
(defconstant sigusr1 16) ; #x10
(defconstant sigusr2 17) ; #x11
(defconstant sigvtalrm 28) ; #x1c
(defconstant sigwinch 20) ; #x14
(defconstant sigxcpu 30) ; #x1e
(defconstant sigxfsz 31) ; #x1f
(defconstant itimer-real 0) ; #x0
(defconstant itimer-virtual 1) ; #x1
(defconstant itimer-prof 2) ; #x2
(defconstant fpe-intovf 2) ; #x2
(defconstant fpe-intdiv 1) ; #x1
(defconstant fpe-fltdiv 3) ; #x3
(defconstant fpe-fltovf 4) ; #x4
(defconstant fpe-fltund 5) ; #x5
(defconstant fpe-fltres 6) ; #x6
(defconstant fpe-fltinv 7) ; #x7
(defconstant fpe-fltsub 8) ; #x8

(defconstant clock-realtime 3) ; #x3
(defconstant clock-monotonic 4) ; #x4
(defconstant clock-process-cputime-id 5) ; #x5
;;; structures
(define-alien-type nil
  (struct timeval
          (tv-sec (signed 32))
          (tv-usec (signed 32))))
(define-alien-type nil
  (struct timespec
          (tv-sec (signed 32))
          (tv-nsec (signed 32))))
(defconstant sizeof-timespec 8) ; #x8
(defconstant sizeof-timeval 8) ; #x8

(defconstant sizeof-unw-cursor 0) ; #x0
(in-package "SB-KERNEL")

;;; GENCGC related
(define-alien-type page-index-t (signed 32))
(define-alien-type generation-index-t (signed 8))

;;; Our runtime types
(define-alien-type os-vm-size-t (unsigned 32))
local-target-features.lisp-expr (text/plain, 409 B)
;;;; This is a machine-generated file.
;;;; Please do not edit it by hand.
;;;; See make-config.sh.
(lambda (features) (set-difference (union features (list :sparc :sb-core-compression :sb-xref-for-internals :sb-after-xc-core
 :os-provides-clock-gettime :unix :sunos :elf :big-endian :os-provides-dlopen :os-provides-dladdr :os-provides-blksize-t :os-provides-suseconds-t :os-provides-poll :gencgc)) (list)))
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.