ports/73914: /usr/ports/lang/scm marked broken unjustifiedly due to Segmentation Fault
dai
inukai.d at jeans.ocn.ne.jp
Wed Nov 17 15:09:20 UTC 2004
Thanks for reply.
I first posted to
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/71684
to point out the location of the problem with no followups and I
sent-pr to ports/73914.
% uname -a
FreeBSD daip 5.3-RELEASE FreeBSD 5.3-RELEASE #0: Tue Nov 9 15:50:00
JST 2004 daip at daip:/usr/obj/usr/src/sys/DAIKERNEL i386
% cc -v
Using built-in specs.
Configured with: FreeBSD/i386 system compiler
Thread model: posix
gcc version 3.4.2 [FreeBSD] 20040728
# Maybe the bug is fixed with gcc version 3.4.2 20040806 (prerelease)
# [FreeBSD] but the FreeBSD system CC is still from 20040728.
% cd /usr/ports/lang/scm && make
===> scm-5d9_1 is marked as broken: Segfault during build.
% cat Makefile
...
#.if ${OSVERSION} >= 502126
#BROKEN= "Segfault during build"
#.endif
#.if ${ARCH} != "i386"
#BROKEN= "Does not compile on !i386"
#.endif
...
% env "LANG=C" make -V CFLAGS?
env: something like "No match for the query pattern" in Japanese.
% make CFLAGS=-O2
===> Vulnerability check disabled
===> Extracting for scm-5d9_1
>> Checksum OK for scm5d9.zip.
>> Checksum OK for slib3a1.zip.
>> Checksum OK for slib-psd1-3.tar.gz.
===> scm-5d9_1 depends on executable: unzip - found
===> Patching for scm-5d9_1
===> Applying FreeBSD patches for scm-5d9_1
===> scm-5d9_1 depends on executable: gmake - found
===> Configuring for scm-5d9_1
===> Building for scm-5d9_1
Makefile:69: srcdir.mk: No such file or directory
echo "CPROTO=`type cproto | sed 's%.* %%'`" > srcdir.mk
(snip)
e.o findexec.o script.o debug.o scmmain.o
sys.o(.text+0x57f): In function `ltmpnam':
: warning: warning: tmpnam() possibly used unsafely; consider using mkstemp()
gmake checklit
gmake[1]: Entering directory `/usr/ports/lang/scm/work/scm'
./scmlit -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' \
-e '(or (null? errs) (quit 1))'
gmake[1]: *** [checklit] Segmentation fault (core dumped)
gmake[1]: Leaving directory `/usr/ports/lang/scm/work/scm'
gmake: *** [scmlit] Error 2
*** Error code 2
Stop in /usr/ports/lang/scm.
% make clean && make CFLAGS=-O0
(snip)
>> Checksum OK for scm5d9.zip.
>> Checksum OK for slib3a1.zip.
>> Checksum OK for slib-psd1-3.tar.gz.
(snip)
gmake checklit
gmake[1]: Entering directory `/usr/ports/lang/scm/work/scm'
./scmlit -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' \
-e '(or (null? errs) (quit 1))'
SECTION(2 1)
SECTION(3 4)
(snip)
SECTION(6 10 4)
(load (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c))) ==> (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c))
Passed all tests
;testing continuations;
SECTION(6 9)
(snip)
Passed all tests
;testing DELAY and FORCE;
SECTION(6 9)
(delay 3) ==> 3
(delay (3 3)) ==> (3 3)
(delay 2) ==> 2
(#<primitive-procedure force> #<promise #<CLOSURE test-delay "r4rstest.scm", line 1108: () (begin (set! count (+ count 1)) (if (> count x) count (force p)))>>) ==> 6
(#<primitive-procedure force> #<promise 6>) ==> 6
(force 3) ==> 3
Passed all tests
gmake[1]: Leaving directory `/usr/ports/lang/scm/work/scm'
(snip)
In file included from rgx.c:47:
/usr/include/gnuregex.h:31:2: warning: #warning "Use -I/usr/include/gnu and <regex.h> instead of <gnuregex.h>"
(system "cc -shared -o ramap.so ramap.o")
(delete-file "ramap.o")
(system "cc -shared -o socket.so socket.o")
(delete-file "socket.o")
(system "cc -shared -o unix.so unix.o")
(delete-file "unix.o")
(system "cc -shared -o posix.so posix.o")
(delete-file "posix.o")
(system "cc -shared -o ioext.so ioext.o")
(delete-file "ioext.o")
(system "cc -shared -o gsubr.so gsubr.o")
(delete-file "gsubr.o")
(system "cc -shared -o record.so record.o")
(delete-file "record.o")
(system "cc -shared -o rgx.so rgx.o")
(delete-file "rgx.o")
(system "cc -shared -o sc2.so sc2.o")
(delete-file "sc2.o")
; ================ Link C object files
(delete-file "slibcat")
% cd work/scm
daip:/usr/ports/lang/scm/work/scm% ./scm
SCM version 5d9, Copyright (C) 1990-2002 Free Software Foundation.
SCM comes with ABSOLUTELY NO WARRANTY; for details type `(terms)'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `(terms)' for details.
;loading /usr/local/lib/slib/require
;done loading /usr/local/lib/slib/require.scm
;loading /usr/ports/lang/scm/work/scm/Link
;done loading /usr/ports/lang/scm/work/scm/Link.scm
;loading /usr/ports/lang/scm/work/scm/Transcen
;done loading /usr/ports/lang/scm/work/scm/Transcen.scm
> ;EXIT
daip:/usr/ports/lang/scm/work/scm%
The compilation finishes successfully with "-O0" but there are some
loss in significant digits, which is told by "./scm -l r4rstest."
% make "CFLAGS=-O3 -DGCC_SPARC_BUG"
or
% make CC=gcc34 CFLAGS=-O3
is needed to have scm working with my actual system.
% gcc34 -v
Reading specs from /usr/local/lib/gcc/i386-portbld-freebsd5.3/3.4.3/specs
Configured with: ./..//gcc-3.4-20041029/configure --disable-nls --with-system-zlib --with-libiconv-prefix=/usr/local --program-suffix=34 --with-gxx-include-dir=/usr/local/lib/gcc/i386-portbld-freebsd5.3/3.4.3/include/c++/ --disable-shared --prefix=/usr/local i386-portbld-freebsd5.3
Thread model: posix
gcc version 3.4.3 20041029 (prerelease) [FreeBSD]
Regards.
dai -- http://www4.ocn.ne.jp/~inukai/scheme.html
More information about the freebsd-ports-bugs
mailing list