[BACK]Return to HACKS CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / doc

File: [cvs.NetBSD.org] / pkgsrc / doc / Attic / HACKS (download)

Revision 1.30, Sun May 15 22:23:09 2005 UTC (18 years, 11 months ago) by jschauma
Branch: MAIN
CVS Tags: pkgsrc-2006Q3-base, pkgsrc-2006Q3, pkgsrc-2006Q2-base, pkgsrc-2006Q2, pkgsrc-2006Q1-base, pkgsrc-2006Q1, pkgsrc-2005Q4-base, pkgsrc-2005Q4, pkgsrc-2005Q3-base, pkgsrc-2005Q3, pkgsrc-2005Q2-base, pkgsrc-2005Q2
Changes since 1.29: +19 -1 lines

document security/libgpg-error awk on IRIX hack

# $NetBSD: HACKS,v 1.30 2005/05/15 22:23:09 jschauma Exp $
#
# This file is intended to document workarounds for currently unsolved
# (mostly) compiler bugs.
#
# Format:
#   hack		title
#   cdate		creation date
#   mdate		mod date
#   who			responsible developer
#   port		...
#  	  affected ports, space separated, if not "all"
#   file		affected file : revision : line from : line to
#  	  affected files and revision and line numbers describing hack
#  	  multiple lines if necessary.
#   pr			NNNN ...
#  	  problem reports this hack works around, if known. Space
#  	  separated.
#   regress		src/regress/directory/where/test/found
#  	  regression test directories, if available.
#   descr
#  	  insert short informal description (multi-line). (Longer ones
#  	  should be in the PR database. More formal descriptions might
#  	  be in the regress tree. See above).
#   kcah
#  	  closing bracket.
#
# this is a comment.


hack	gcc 2.95.3/alpha -O2 bug
cdate	Wed Feb  5 16:36:58 EST 2003
who	dmcmahill
port	alpha
file	audio/xsidplay/patches/patch-aa : 1.8
	cad/qcad/patches/patch-aa : 1.4
	devel/guile-gtk//Makefile : 1.10
	devel/guile-gtk/patches/patch-aa : 1.6
	x11/qt2-libs/patches/patch-ae : 1.8
	x11/qt2-libs/patches/patch-ae : 1.18
	x11/kdelibs3/patches/patch-cd : 1.1
	x11/kdelibs3/patches/patch-ce : 1.1
	lang/gcc3/Makefile : 1.5
	net/bing/Makefile : 1.12
	net/isic/Makefile : 1.5
	net/ettercap/patches/patch-aa : 1.4
	net/ettercap/Makefile : 1.11
descr
	Compiler crashes
kcah

hack	gcc 2.95.3/alpha -O2 bug
cdate	Thu Jan 23 15:42:57 UTC 2003
who	dmcmahill
port	alpha
file	mail/imap-uwwm/Makefile : 1.52
descr
	Compiler crashes
kcah

hack	gcc 2.95.3/alpha c++ -O2 bug
cdate	Fri Aug 16 06:38:16 EDT 2002
who	dmcmahill
port	alpha
file	print/cjk-lyx/patches/patch-ab : 1.2
file	print/cjk-lyx/patches/patch-ad : 1.1
file	print/cjk-lyx/patches/patch-ae : 1.1
file	print/cjk-lyx/patches/patch-af : 1.1
descr
	Assembler runs forever and never returns with -O2 on some files.
kcah

hack	gcc 2.95.3/alpha -O2 bug
cdate	Sun Aug 11 12:39:46 EDT 2002
who	dmcmahill
port	alpha
file	wm/flubox/patches/patch-ab : 1.3
descr
	Assembler runs forever and never returns with -O2 on some files.
kcah

hack	gcc 2.95.3/m68k -O2 bug
cdate	Fri Jul 19 04:33:29 UTC 2002
who	fredb
port	mac68k, amiga
file	graphics/gdk-pixbuf/patches/patch-aa : 1.3
descr
	pixops.c gives 'Internal compiler error' with -O2 (but not -O),
	on m68k only. The exact error message is reproduced in the patch.
kcah

hack	gas 2.11.2 commutative constraint bug
cdate	Fri May 10 04:51:29 UTC 2002
who	fredb
port	mac68k
file	devel/gmp/patches/patch-aa : 1.7
descr
	The __asm__() in longlong.h fails to assemble on m68k with an
	"unrecognized instruction" error, unless the commutative
	constraint ('%') is removed (which makes it *more* constrained).
kcah

hack	gcc 2.95.3 -O2 bug
cdate	Thu Apr 18 15:42:57 UTC 2002
who	fredb, dmcmahill
port	alpha, mac68k
file	print/lyx/patches/patch-ab : 1.2
file	print/lyx/patches/patch-ac : 1.1
file	print/lyx/patches/patch-ae : 1.1
descr
	lyxfunc.C causes 'Internal compiler error' with -O2 (but not -O).
	The exact error message is reproduced in the patch.
	Various other files cause the assembler to run forever (well,
	I gave up after several hours) on netbsd-1.5.3/alpha using
	gcc-2.95.3 and -O2.
kcah

hack	cc -O* bug
mdate	29 Dec 2001
who	abs
port	arm32
file	audio/libvorbis/Makefile : 1.12 : 20 : 28
descr
	floor1.c causes Internal compiler error with egcs-2.91.66 19990314
	(shipped with 1.5.2)
kcah

hack	cc -O* bug
mdate	10 Oct 2001
who	abs
port	arm32
file	net/djbdns/Makefile : 1.14 :
descr
	various files go into infinite loop if optimisation enabled in 
	egcs-2.91.66 19990314 (shipped with 1.5.2)
kcah

hack	cc -O* bug
mdate	03 Oct 2001
who	abs
port	arm32
file	net/ucspi-tcp/Makefile	: 1.7 :
descr
	various files go into infinite loop if optimisation enabled in 
	egcs-2.91.66 19990314 (shipped with 1.5.2)
kcah

hack	cc -O* bug
mdate	23 Aug 2001
who	abs
port	sparc64
file	graphics/tiff/patches/patch-aa	: 1.3 : 52 : 58
descr
	on tif_dirread.c -O[12] causes the compiler to abort
kcah

hack	cc -O* bug
cdate	08 Nov 2000
mdate	10 Jan 2002
who	abs
port	arm32 arm
file	benchmarks/lmbench/patches/patch-aa	: 1.2 :
file	benchmarks/lmbench/Makefile		: 1.9 :
descr
	on certain c files, using -O[1-3] will cause the arm32 cc1 to run
	forever.  
	reported to GCC people as PR optimization/2391.
kcah

hack	cc -O* bug
mdate	18 May 2001
who	abs
file	x11/xscreensaver/distinfo		: 1.2 :
file	x11/xscreensaver/patches/patch-ab	: 1.7 :
descr
	on distort.c -O[12] causes the compiler to abort
kcah

hack	c++ -O* bug
mdate	02 Jun 2000
who	dmcmahill
file	audio/festival/patches/patch-ai		: 1.2 : 
file	audio/festival/patches/patch-aj		: 1.1 :
file	audio/festival/patches/patch-ak		: 1.1 :
file	audio/festival/patches/patch-al		: 1.1 :
file	cad/verilog/patches/patch-ad		: 1.3 :
file	cad/verilog-current/patches/patch-ad	: 1.3 :
file	cad/vipec/patches/patch-ac		: 1.4 :
file	emulators/stella/patches/patch-ac	: 1.3 : 36 : 43
file	graphics/kdegraphics/patches/patch-af	: 1.5 
file	graphics/xpdf/Makefile			: 1.18: 27
file	graphics/xpdf/patches/patch-aa		: 1.3 
file	math/yacas/patches/patch-ac		: 1.1.1.1 :
file	x11/glclock/Makefile			: 1.3 : 18 : 20 
file	x11/windowmaker/Makefile			: 1.51 : 39 : 42 
pr	9453
descr
	on certain c++ files, using -O[1-3] will cause cc1plus to run
	forever.  On other files, c++ -O[1-3] will cause the assembler to run
	forever.  This problem is noted on pmax and sparc (NetBSD-1.4.*) with 
	gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release) 

	evidently this problem also exists on arm32.
kcah

hack	mac68k-jade
mdate	29 Mar 2001
who	hubertf
port	mac68k
file	textproc/jade/patches/patch-aa:	1.1 : 1 : 999
descr
	jade on mac68k seems to dump core under certain conditions, the
	patch was sent in by "Kogule, Ryo" <kogule@mars.dti.ne.jp> via
	tech-pkg. The subject of the thread is "Jade doesn't work"
	It is suspected that the patch really works around a bug in the
	toolchain.
kcah

hack	perl5-base
mdate	12 Apr 2001
who	manu
port	all
Checking in perl5-base/patches/patch-ag: 1.2 : 1 : 999
descr
	The Xerces-Perl module is implemented as a shared object. It needs 
	some symbols from libgcc.a, such as __eh_alloc. It's not possible
	to link the xerces-P shared object with libgcc.a, because libgcc.a
	is not compiled with -fPIC. Hence we need to have the missing 
	symbols in the Perl executable. 
	This hack includes the whole libgcc.a in the Perl executable, and
	links with c++ so that some mandatory symbols such as __pure_virtual 
	are also included. It should go away with GCC-3.0, or if we make a
	libgcc.so on day.
kcah

hack	gcc-2.95.3 -O* bug
mdate	12 Feb 2002
who	mrauch
port	i386
file	devel/pth/Makefile	: 1.37 : 20 : 22
descr	
	OpenOffice segfaults after some time in the pthread library with a 
	completely thrashed stack. Removing optimization when building
	pth (-O0) avoids this problem. 
kcah

hack	binutils-2.11.2 ld versioned symbols bug
cdate 	26 Feb 2002
who	mrauch
file	misc/openoffice/patches/patch-dj
file	misc/openoffice/patches/patch-dk
descr	Using versioned symbols the special symbol _etext can end up
	in the shared library with a junk value for the version string
	instead of "0" for no version. Sometimes it is sufficient to 
	reorder the -l flags on the link line but the general hack is to
	disable versioned symbols.
kcah

hack	sparc64-kth-krb
cdate	29 Mar 2002
who	hubertf
file	security/kth-krb4/Makefile
descr	This package hangs when compiling one of the files with the
	compiler that comes with 1.5ZC. The compiler needs to be killed
	manually - the package is marked as interactive on sparc64 for
	that reason.
kcah

hack	cc -O* bug
mdate	04 Jun 2002
who	cjep
port	arm
file	net/ucspi-tcp/Makefile	: 1.11 :
descr
	some compilations go into infinite loop if optimisation enabled in 
	gcc-2.95.3 20010315 (release) (NetBSD nb2) as shipped with
	a releng snapshot (May 31st) of NetBSD-1.6_BETA1. See also abs's
	entry above. First hang at:
	( ( ./compile tryulong32.c && ./load tryulong32 &&  ./tryulong32 ) \
	>/dev/null 2>&1  && cat uint32.h2 || cat uint32.h1 ) > uint32.h
kcah

hack	cc -O* bug
mdate	04 Jun 2002
who	cjep
port	arm
file	net/djbdns/Makefile : 1.19 :
descr
	various files go into infinite loop if optimisation enabled in 
	gcc-2.95.3 20010315 (release) (NetBSD nb2) as shipped with
	a releng snapshot (May 31st) of NetBSD-1.6_BETA1. See also abs's
	entry above. First hang as ucspi-tcp.
kcah

hack	cc -O* bug
mdate	06 Jun 2002
who	cjep
port	arm
file	emulators/stella/Makefile : 1.5 :
descr
	Usual arm optimisation problem. The first problem is at:
	c++ -c -O2 -fno-rtti -I. -I../emucore -I../emucore/m6502/src    \
	-I../emucore/m6502/src/bspf/src -I../ui/x11 -I../ui/sound       \
	-I/usr/X11R6/include -DBSPF_UNIX ../emucore/m6502/src/M6502.cxx 
kcah

hack	cc -O* bug
mdate	07 Jun 2002
who	cjep
port	arm
file	databases/cdb/Makefile : 1.3 :
descr
	Usual arm optimisation problem. The first problem occurs around
	( cat warn-auto.sh;  echo exec "`head -1 conf-cc`" '-c ${1+"$@"}'  \
	) > compile
	chmod 755 compile
kcah

hack	gcc 2.95.3 -O2 bug
mdate	22 Jun 2002
who	jlam
port	sparc64
file	x11/openmotif/patches/patch-ap : 1.2 : 209
pr	15477
descr
	With -O2 optimization, a "if {} else if {} else {}" C statement
	isn't converted into the correct code.
kcah

hack	cc -O* bug
mdate	28 Nov 2002
who	agc
port	arm
file	emulators/simh/Makefile : 1.3 :
descr
	Usual arm optimisation problem. The first problem occurs around
	compilation of altairz80
kcah

hack	gcc-sparc64-memorysize
mdate	8 Jan 2003
who	salo
port	sparc64
file	security/skey/patch-aa : 1.2
file	security/skey/patch-ab : 1.1
descr
	The SHA1Transform() function causes the sparc64 compiler to use
	excessive amounts of memory attempting to optimise this function.
	Using no optimisation allows the function to build.
kcah

hack	ImageMagick arm32+mipsel -O2 bug
mdate	25 Jan 2003
who	hubertf (the mipsel one, dunno who did the arm32 one)
port	cobald (probably other mipsel's), arm32
file	graphics/ImageMagick/Makefile : 1.90
descr
	When compiling with -O2, gcc spins at one file. Going back to
	-O fixes this. (The usual story...)
kcah

hack	zip -O bug
mdate	1 Jun 2003
who	grant
port	powerpc
file	archivers/zip/Makefile : 1.33
descr
	When compiling with -O or -O2, gcc dies with an internal
	compiler error on crypt.c. Turning off optimization fixes this.
kcah

hack	gcc 2.95.3/arm -O2 bug
cdate	2 Aug 2003
who	kristerw
port	arm
file	devel/ftnchek/Makefile : 1.13
descr	Internal compiler error for fortran.c when -O2. Use -O1 instead.
kcah

hack	gcc 2.95.3/arm -O* bug
cdate	19 Oct 2003
who	kristerw
port	arm
file	mail/safecat/patches/patch-aa : 1.1
descr	Compilation of the tryulong32.c configuration test takes ~forever.
kcah

hack	gcc 2.95.3/arm internal error
cdate	31 Jan 2004
who	kristerw
port	arm
file	games/sjeng/Makefile : 1.7
descr	Internal compiler error when compiling search.c.
kcah

hack	gcc 2.95.3/arm -O* bug
cdate	31 Jan 2003
who	kristerw
port	arm
file	databases/cdb/patches/patch-aa : 1.1
descr	Compilation of the tryulong32.c configuration test takes ~forever.
kcah

hack	perl 5.8/openssl/sparc64 bug
cdate	Wed Feb 16 13:24:06 2000
who	seb
port	sparc64
file	security/openssl/patches/patch-ak
descr
	Perl's int() function gives bad result on sparc64.
	Hence openssl's bn_prime.pl perl script fails.
	Use POSIX::floor() as a workaround.
	See perl ticket #25249.
kcah

hack	alpha c++ -O2 bug
cdate	Wed Feb 16 13:24:06 2000
who	recht
port	alpha
file	graphics/freetype2/Makefile
pr	25742
descr
	The default compiler flags on the alpha port "-O2 -mieee"
	cause the c++ compiler to generate buggy code.
kcah

hack	sparc64 gcc 3.3.x -O2 bug
cdate	29 Apr 2004
who	adam
port	sparc64
file	graphics/netpbm/patches/patch-ab
descr
	sparc64 gcc 3.3.x toolchain bug means we must compile exif.o
	without optimisation
kcah

hack	i386 g++ 3.3.x -O2 bug
cdate	Tue Aug 17 00:59:31 NZST 2004
who	dsainty
port	i386
file	emulators/palmosemulator/patches/patch-an
descr
	EmPoint.cpp malfunctions with optimisation on, trashing point
	coordinates.  Apparently an aliasing issue with automatic variables on
	the stack and some fairly dodgy type casting.  The patch file contains
	more details.
kcah

hack	libtool nawk line length problem
cdate	Tue Sep  7 01:23:10 UTC 2004
who	jschauma
port	mipseb (IRIX)
file	x11/gtk2/Makefile
descr
	If we're on IRIX and we're using gcc, then, apparently, we need gawk,
	as otherwise the awk invocation in libtool breaks complaining about
	the ``Input record [...] too long'' near the end of the build process.
	Oddly this does not occur using the mipspro compiler.  Possible
	reason: using gcc we have longer CFLAGS.  Fix:  add USE_GNU_TOOLS+=awk
	iff IRIX and gcc.  Problem: this might affect other packages as well.
	One might consider depending libtool on gawk for IRIX.
kcah

hack	devel/bison -O* bug with sunpro
cdate	Tue Nov  2 17:30:48 GMT 2004
who	sketch
port	sparc (Solaris)
file	devel/bison/Makefile : 1.49
descr
	bison's quotearg_buffer_restyled() has issues with certain compilers
	using optimisation flags.  The resulting bison with optimsation
	breaks on at least net/libIDL.  BUILDLINK_TRANSFORM -O* away until
	the root cause can be fixed.
kcah

hack	security/libgpg-error awk on IRIX
cdate	Sun May 15 18:08:48 EDT 2005
who	jschauma
port	mipseb (IRIX)
file	security/libgpg-error/Makefile
descr
	Apparently, for as of yet undetermined reasons, gawk as built on IRIX
	under pkgsrc croaks on regular expressions including a combination of
	alpha- and numerical matches, such as the rather trivial
	/^[ \t]*[0-9]+/
	Let's use the system's AWK (ie nawk) for this package to avoid
	breaking hundreds of dependents.
	Speculation: somehow the regular expression library used to build gawk
	conflicts with the systems regular expression library or some such.
	Note: gawk from SGIs freeware collection depends on expat -- why is
	that?  Does that have anything to do with anything?
kcah