Package: clisp
Version: 1:2.43-1
Severity: normal
Hi,
a C file created with “clisp -q -norc -c ordrulei.lsp” (the source file
ordrulei.lsp is attached to this mail) includes the references to some
types they are not available. I think includes for them are missing.
void module__ordrulei__init_function_1 (module_t* module)
{
register_foreign_inttype("tcflag_t",sizeof(tcflag_t),(tcflag_t)-1<=(tcflag_t)0);
register_foreign_inttype("speed_t",sizeof(speed_t),(speed_t)-1<=(speed_t)0);
register_foreign_inttype("cc_t",sizeof(cc_t),(cc_t)-1<=(cc_t)0);
…
register_foreign_inttype("__ipc_pid_t",sizeof(__ipc_pid_t),(__ipc_pid_t)-1<=(__ipc_pid_t)0);
…
register_foreign_inttype("ptrdiff_t",sizeof(ptrdiff_t),(ptrdiff_t)-1<=(ptrdiff_t)0);
}
This leads to the following build error:
/usr/lib/clisp-2.43/clisp-link add-module-set ordrules /usr/lib/clisp-2.43/full
xindy-build-dir
make[1]: Entering directory `/home/joerg/git/debian/xindy/rte/ordrules'
gcc -g -O2 -Igllib -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit
-Wreturn-type -Wmissing-declarations -Wno-sign-compare -O2 -DUNICODE
-DDYNAMIC_FFI -DDYNAMIC_MODULES -I. -fPIC -I/usr/lib/clisp-2.43/linkkit -c
ordrulei.c
ordrulei.c: In function ‘module__ordrulei__init_function_1’:
ordrulei.c:24: error: ‘tcflag_t’ undeclared (first use in this function)
ordrulei.c:24: error: (Each undeclared identifier is reported only once
ordrulei.c:24: error: for each function it appears in.)
ordrulei.c:24: error: expected ‘)’ before numeric constant
ordrulei.c:25: error: ‘speed_t’ undeclared (first use in this function)
ordrulei.c:25: error: expected ‘)’ before numeric constant
ordrulei.c:26: error: ‘cc_t’ undeclared (first use in this function)
ordrulei.c:26: error: expected ‘)’ before numeric constant
ordrulei.c:43: error: ‘__ipc_pid_t’ undeclared (first use in this function)
ordrulei.c:43: error: expected ‘)’ before numeric constant
ordrulei.c:46: error: ‘ptrdiff_t’ undeclared (first use in this function)
ordrulei.c:46: error: expected ‘)’ before numeric constant
make[1]: *** [ordrulei.o] Fehler 1
make[1]: Leaving directory `/home/joerg/git/debian/xindy/rte/ordrules'
make: *** [xindy-build-dir] Fehler 2
Bye, Jörg.
-- System Information:
Debian Release: unstable/experimental
APT prefers unstable
APT policy: (900, 'unstable'), (700, 'experimental')
Architecture: powerpc (ppc)
Kernel: Linux 2.6.24-rc6
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages clisp depends on:
ii common-lisp-controller6.12 Common Lisp source and compiler ma
ii libc6 2.7-6 GNU C Library: Shared libraries
ii libdb4.6 4.6.21-5 Berkeley v4.6 Database Libraries [
ii libice6 2:1.0.4-1 X11 Inter-Client Exchange library
ii libncurses5 5.6+20080105-1 Shared libraries for terminal hand
ii libreadline5 5.2-3 GNU readline and history libraries
ii libsigsegv0 2.5-1 Library for handling page faults i
ii libsm62:1.0.3-1+b1 X11 Session Management library
ii libx11-6 2:1.0.3-7 X11 client-side library
ii libxau6 1:1.0.3-2 X11 authorisation library
ii libxext6 1:1.0.3-2 X11 miscellaneous extension librar
ii libxpm4 1:3.5.7-1 X11 pixmap library
clisp recommends no packages.
-- no debconf information
;; $Id: ordrulei.lsp,v 1.5 2005/05/02 21:39:53 jschrod Exp $
;;
;;;
;;; Interface definition of the ordrules module
;;;
(defpackage :ordrules
(:use :cl :ffi)
(:export :initialize
:add-keyword-sort-rule :add-keyword-merge-rule
:gen-keyword-sortkey :gen-keyword-mergekey))
(in-package :ordrules)
(c-lines "#include \"ordrules.h\"~%")
; Common OS definitions:
(def-c-type size_t uint)
(def-c-var *string-buffer*
(:name "ordrules_string_buffer")
(:type (c-array char 1024))
(:alloc :NONE))
(def-c-var *string-buffer-used-bytes*
(:name "ordrules_string_buffer_used_bytes")
(:type int)
(:alloc :NONE))
(def-c-var *string-buffer-used-bytes*
(:name "ordrules_string_buffer_used_bytes")
(:type int)
(:alloc :NONE))
(def-c-var *message-logging*
(:name "ordrules_msg_logging")
(:type int)
(:alloc :NONE))
(def-c-var *message-buffer*
(:name "ordrules_msg_buffer")
(:type c-string)
(:alloc :NONE))
(def-c-var *message-buffer-ptr*
(:name "ordrules_msg_buffer_ptr")
(:type int)
(:alloc :NONE))
(def-call-out initialize
(:language :stdc)
(:name "initialize")
(:arguments (num-sort-tables int))
(:return-type int))
(def-call-out add-keyword-sort-rule
(:language :stdc)
(:name "add_sort_rule")
(:arguments (run int)
(left c-string)
(right c-string)
(isreject int)