[Bug 277994] lang/sbcl: fails to build after SHUT_RD and friend were changed to enum
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 27 Mar 2024 18:37:43 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277994
Bug ID: 277994
Summary: lang/sbcl: fails to build after SHUT_RD and friend
were changed to enum
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: krion@FreeBSD.org
Reporter: dim@FreeBSD.org
Assignee: krion@FreeBSD.org
Flags: maintainer-feedback?(krion@FreeBSD.org)
In https://cgit.freebsd.org/src/commit/?id=c3276e02beab8, the SHUT_RD, SHUT_WR
and SHUT_RDWR constants were changed from #defines to enum values.
This breaks lang/sbcl:
gmake[2]: Entering directory
'/wrkdirs/share/dim/ports/lang/sbcl/work/sbcl-2.4.0/contrib/sb-bsd-sockets'
../..//src/runtime/sbcl --noinform --core ../..//output/sbcl.core
--lose-on-corruption --disable-debugger --no-sysinit --no-userinit --load
../make-contrib.lisp "sb-bsd-sockets" </dev/null
; Note: Building "sb-bsd-sockets"
Compile-File "module-setup"
Compile-File "defpackage"
Compile-File "generated-constants"
STYLE-WARNING: Couldn't grovel for SHUT_RD (unknown to the C compiler).
STYLE-WARNING: Couldn't grovel for SHUT_WR (unknown to the C compiler).
STYLE-WARNING: Couldn't grovel for SHUT_RDWR (unknown to the C compiler).
Compile-File "util"
...
; file: SYS:CONTRIB;SB-BSD-SOCKETS;SOCKETS.LISP.NEWEST
; in: DEFMETHOD SB-BSD-SOCKETS:SOCKET-SHUTDOWN (SB-BSD-SOCKETS:SOCKET)
; (ECASE SB-BSD-SOCKETS::DIRECTION
; (:INPUT SB-BSD-SOCKETS-INTERNAL::SHUT_RD)
; (:OUTPUT SB-BSD-SOCKETS-INTERNAL::SHUT_WR)
; (:IO SB-BSD-SOCKETS-INTERNAL::SHUT_RDWR))
; --> COND IF
; ==>
; (PROGN NIL SB-BSD-SOCKETS-INTERNAL::SHUT_RD)
;
; caught WARNING:
; undefined variable: SB-BSD-SOCKETS-INTERNAL::SHUT_RD
; --> COND IF IF IF
; ==>
; (PROGN NIL SB-BSD-SOCKETS-INTERNAL::SHUT_RDWR)
;
; caught WARNING:
; undefined variable: SB-BSD-SOCKETS-INTERNAL::SHUT_RDWR
; --> COND IF IF
; ==>
; (PROGN NIL SB-BSD-SOCKETS-INTERNAL::SHUT_WR)
;
; caught WARNING:
; undefined variable: SB-BSD-SOCKETS-INTERNAL::SHUT_WR
;
; compilation unit finished
; Undefined variables:
; SB-BSD-SOCKETS-INTERNAL::SHUT_RD SB-BSD-SOCKETS-INTERNAL::SHUT_RDWR
SB-BSD-SOCKETS-INTERNAL::SHUT_WR
; caught 3 WARNING conditions
gmake[2]: *** [../asdf-module.mk:41:
../..//obj/sbcl-home/contrib/sb-bsd-sockets.fasl] Error 1
This is because
/wrkdirs/share/dim/ports/lang/sbcl/work/sbcl-2.4.0/obj/from-self/contrib/sb-bsd-sockets/runme.c
checks for the existence of #define'd macros, not enum values:
#ifdef SHUT_RD
fprintf(out, "(cl:defconstant SHUT_RD %ld)\n", CAST_SIGNED(SHUT_RD));
#else
fprintf(out, "(sb-int:style-warn \"Couldn't grovel for ~A (unknown to the C
compiler).\" \"SHUT_RD\")\n");
#endif
#ifdef SHUT_WR
fprintf(out, "(cl:defconstant SHUT_WR %ld)\n", CAST_SIGNED(SHUT_WR));
#else
fprintf(out, "(sb-int:style-warn \"Couldn't grovel for ~A (unknown to the C
compiler).\" \"SHUT_WR\")\n");
#endif
#ifdef SHUT_RDWR
fprintf(out, "(cl:defconstant SHUT_RDWR %ld)\n", CAST_SIGNED(SHUT_RDWR));
#else
fprintf(out, "(sb-int:style-warn \"Couldn't grovel for ~A (unknown to the C
compiler).\" \"SHUT_RDWR\")\n");
#endif
Since this runme.c file seems to be generated from lisp, I have no good idea
how to fix it.
--
You are receiving this mail because:
You are the assignee for the bug.