Subject: pkg/28819: databases/p5-DB_File on IRIX does not compile with db4
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <georg.schwarz@freenet.de>
List: pkgsrc-bugs
Date: 12/30/2004 22:39:00
>Number: 28819
>Category: pkg
>Synopsis: databases/p5-DB_File on IRIX does not compile with db4
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Dec 30 22:39:00 +0000 2004
>Originator: Georg Schwarz
>Release: current pkgsrc
>Organization:
>Environment:
IRIX lorenz 5.3 08031225 IP20 mips
>Description:
db4/db_185.h has:
/*
* XXX
* SGI/IRIX already has a pgno_t.
*/
#ifdef sgi
#define pgno_t db_pgno_t
#endif
However, when compiling databases/p5-DB_File (and maybe others, too) or change on IRIX sgi is not defined, and thus it fails:
cfe: Error: /usr/people/schwarz/pkgsrc/databases/p5-DB_File/work/.buildlink/include/db4/db_185.h, line 80: redeclaration of 'pgno_t'; previous declaration at line 41 in file '/usr/include/sys/types.h' (3.1.2.3)
>How-To-Repeat:
>Fix:
Either define sgi by adding something like this to databases/p5-DB_File/Makefile:
--- Makefile.orig 2004-12-30 23:15:30.000000000 +0100
+++ Makefile 2004-12-30 23:16:56.000000000 +0100
@@ -21,5 +21,9 @@
MAKE_ENV+= DB_FILE_LIB="${BDBBASE}/lib"
MAKE_ENV+= DB_FILE_COMPAT185=1
+.if ${OPSYS} == "IRIX"
+CFLAGS+= -Dsgi
+.endif
+
.include "../../lang/perl5/module.mk"
.include "../../mk/bsd.pkg.mk"
or change db4's header file to contain #ifdef __sgi instead.