Skip to content

Could we make st_birthtimespec conditional, to unbreak 32-bit builds? #69

@barracuda156

Description

@barracuda156

Fails on ppc now:

In file included from /opt/local/share/common-lisp/source/cl-cffi/grovel/common.h:6,
                 from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/.home/.cache/common-lisp/sbcl-2.4.8-macosx-ppc32/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/build/source/cl-osicat/posix/basic-unixint__grovel.c:17:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/.home/.cache/common-lisp/sbcl-2.4.8-macosx-ppc32/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/build/source/cl-osicat/posix/basic-unixint__grovel.c: In function 'main':
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/.home/.cache/common-lisp/sbcl-2.4.8-macosx-ppc32/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/build/source/cl-osicat/posix/basic-unixint__grovel.c:2774:78: error: 'struct stat' has no member named 'st_birthtimespec'; did you mean 'st_atimespec'?
 2774 |   fprintf(output, " :offset %lli)", (long long signed) offsetof(struct stat, st_birthtimespec));
      |                                                                              ^~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/.home/.cache/common-lisp/sbcl-2.4.8-macosx-ppc32/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/build/source/cl-osicat/posix/basic-unixint__grovel.c:20:7: warning: unused variable 'autotype_tmp' [-Wunused-variable]
   20 |   int autotype_tmp;
      |       ^~~~~~~~~~~~
Unhandled CFFI-GROVEL:GROVEL-ERROR in thread #<error printing a SB-THREAD:THREAD: #<PRINT-NOT-READABLE {1142F511}>>: Subprocess #<UIOP/LAUNCH-PROGRAM::PROCESS-INFO {114151A1}>
 with command ("/opt/local/bin/gcc-mp-14" "-o" "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/.home/.cache/common-lisp/sbcl-2.4.8-macosx-ppc32/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/build/source/cl-osicat/posix/basic-unixint__grovel-tmpM0NOM18K.o" "-c" "-arch" "ppc" "-g" "-Wall" "-O2" "-fdollars-in-identifiers" "-D_XOPEN_SOURCE" "-mmacosx-version-min=10.6" "-I/opt/local/include" "-isystem/opt/local/include/LegacySupport" "-D_DARWIN_C_SOURCE" "-Wno-error=int-conversion" "-Wno-error=incompatible-pointer-types" "-fno-pie" "-fPIC" "-I/opt/local/share/common-lisp/source/cl-cffi/" "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/.home/.cache/common-lisp/sbcl-2.4.8-macosx-ppc32/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/build/source/cl-osicat/posix/basic-unixint__grovel.c")
 exited with error code 1

Backtrace for: #<SB-THREAD:THREAD tid=267 "main thread" RUNNING {113B63E1}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<CFFI-GROVEL:GROVEL-ERROR "~a" {1142CA09}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK *INVOKE-DEBUGGER-HOOK* #<CFFI-GROVEL:GROVEL-ERROR "~a" {1142CA09}>)
2: (INVOKE-DEBUGGER #<CFFI-GROVEL:GROVEL-ERROR "~a" {1142CA09}>)
3: (ERROR CFFI-GROVEL:GROVEL-ERROR :FORMAT-CONTROL "~a" :FORMAT-ARGUMENTS (#<UIOP/RUN-PROGRAM:SUBPROCESS-ERROR {1142BFA9}>))
4: (CFFI-GROVEL:GROVEL-ERROR "~a" #<UIOP/RUN-PROGRAM:SUBPROCESS-ERROR {1142BFA9}>)
5: ((FLET "THUNK" :IN CFFI-GROVEL:PROCESS-GROVEL-FILE))
6: (SB-IMPL::%WITH-STANDARD-IO-SYNTAX #<FUNCTION (FLET "THUNK" :IN CFFI-GROVEL:PROCESS-GROVEL-FILE) {1000C25}>)
7: (CFFI-GROVEL:PROCESS-GROVEL-FILE #P"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/build/source/cl-osicat/posix/basic-unixint.lisp" #P#<(SIMPLE-ARRAY CHARACTER (398)) /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osicat/cl-osicat/work/.home/.cache/common-lisp/sbcl-2.4.8-macosx-ppc32/opt/loca... {1144B947}>)
8: ((:METHOD ASDF/ACTION:PERFORM (CFFI-GROVEL::PROCESS-OP CFFI-GROVEL:GROVEL-FILE)) #<CFFI-GROVEL::PROCESS-OP > #<CFFI-GROVEL:GROVEL-FILE "osicat" "posix" "basic-unixint">) [fast-method]
9: ((SB-PCL::EMF ASDF/ACTION:PERFORM) #<unused argument> #<unused argument> #<CFFI-GROVEL::PROCESS-OP > #<CFFI-GROVEL:GROVEL-FILE "osicat" "posix" "basic-unixint">)
10: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
11: ((:METHOD ASDF/ACTION:PERFORM :AROUND (CFFI-GROVEL::PROCESS-OP CFFI-GROVEL::CC-FLAGS-MIXIN)) #<CFFI-GROVEL::PROCESS-OP > #<CFFI-GROVEL:GROVEL-FILE "osicat" "posix" "basic-unixint">) [fast-method]
12: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)) #<CFFI-GROVEL::PROCESS-OP > #<CFFI-GROVEL:GROVEL-FILE "osicat" "posix" "basic-unixint">) [fast-method]
13: ((:METHOD ASDF/PLAN:PERFORM-PLAN (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {12E57069}>) [fast-method]
14: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
15: ((:METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {12E57069}>) [fast-method]
16: ((:METHOD ASDF/OPERATE:OPERATE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)) #<ASDF/OPERATE:BUILD-OP > #<ASDF/SYSTEM:SYSTEM "osicat"> :PLAN-CLASS NIL :PLAN-OPTIONS NIL) [fast-method]
17: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> #<ASDF/OPERATE:BUILD-OP > #<ASDF/SYSTEM:SYSTEM "osicat">)
18: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
19: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) #<ASDF/OPERATE:BUILD-OP > #<ASDF/SYSTEM:SYSTEM "osicat">) [fast-method]
20: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> ASDF/OPERATE:BUILD-OP OSICAT)
21: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
22: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/OPERATE:BUILD-OP OSICAT) [fast-method]
23: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {113B910D}> :OVERRIDE T :KEY NIL :OVERRIDE-CACHE T :OVERRIDE-FORCING NIL)
24: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
25: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {113B908D}> :OVERRIDE NIL :KEY NIL :OVERRIDE-CACHE NIL :OVERRIDE-FORCING NIL)
26: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/OPERATE:BUILD-OP OSICAT) [fast-method]
27: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ASDF/OPERATE:OPERATE (QUOTE ASDF/OPERATE:BUILD-OP) (QUOTE OSICAT)) #<NULL-LEXENV>)
28: (EVAL (ASDF/OPERATE:OPERATE (QUOTE ASDF/OPERATE:BUILD-OP) (QUOTE OSICAT)))
29: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:EVAL . "(require \"asdf\")") (:EVAL . #<(SIMPLE-ARRAY CHARACTER (300)) (setf asdf:*central-registry* (list* (quote *default-pathname-defaults*) #p"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lisp_cl-osi... {118B5007}>) (:EVAL . "(asdf:operate (quote asdf:build-op) (quote osicat))") (:QUIT)))
30: (SB-IMPL::TOPLEVEL-INIT)
31: ((FLET SB-UNIX::BODY :IN SB-IMPL::START-LISP))
32: ((FLET "WITHOUT-INTERRUPTS-BODY-3" :IN SB-IMPL::START-LISP))
33: (SB-IMPL::%START-LISP)

unhandled condition in --disable-debugger mode, quitting
; 
; compilation unit aborted
;   caught 1 fatal ERROR condition

st_birthtimespec is not available on 32-bit archs and perhaps prior to 10.6.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions