Subject: Re: Build failure (sparc64)
To: None <current-users@netbsd.org>
From: Christos Zoulas <christos@astron.com>
List: current-users
Date: 08/29/2006 12:47:07
In article <20060829110431.GA1720@circe.entropie.net>,
Martin S. Weber <Ephaeton@gmx.net> wrote:
>Moin,
>
>Anybody seeing something like this:
>
>dependall ===> usr.bin/kdump
> create kdump/kdump-ioctl.c
> create kdump/kdump-ioctl.d
> create kdump/kdump.d
> create kdump/setemul.d
> create kdump/siginfo.c
> create kdump/siginfo.d
> create kdump/subr.d
> create kdump/.depend
> compile kdump/kdump.o
> compile kdump/subr.o
> compile kdump/setemul.o
> compile kdump/siginfo.o
> compile kdump/kdump-ioctl.o
>kdump-ioctl.c: In function 'ioctlname':
>kdump-ioctl.c:3829: error: duplicate case value
>kdump-ioctl.c:1119: error: previously used here
>kdump-ioctl.c:3832: error: duplicate case value
>kdump-ioctl.c:1125: error: previously used here
>kdump-ioctl.c:3835: error: duplicate case value
>kdump-ioctl.c:1134: error: previously used here
>kdump-ioctl.c:3838: error: duplicate case value
>kdump-ioctl.c:1131: error: previously used here
>kdump-ioctl.c:3841: error: duplicate case value
>kdump-ioctl.c:1122: error: previously used here
>kdump-ioctl.c:3844: error: duplicate case value
>kdump-ioctl.c:1116: error: previously used here
>kdump-ioctl.c:3847: error: duplicate case value
>kdump-ioctl.c:1128: error: previously used here
>
>*** Failed target: kdump-ioctl.o
>*** Failed command: /usr/tools/bin/sparc64--netbsd-gcc -O2 -pipe
>-mcpu=v9 -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes
>-Wpointer-arith -Wno-sign-compare -Wno-traditional -Wreturn-type
>-Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Werror
>-I/usr/src/usr.bin/ktrace -I/usr/src/sys -nostdinc -isystem
>/usr/dest/usr/include -c kdump-ioctl.c
>*** Error code 1
>
>Stop.
>nbmake: stopped in /usr/src/usr.bin/kdump
>
>exemplary problematic lines:
>
>3828-30:
>/* #define OFIOCGETNEXT _IOWR('O', 5, int) [OFIOCGETNEXT] */
> case OFIOCGETNEXT:
> return "OFIOCGETNEXT";
>1118-20:
>/* #define OPIOCGETNEXT _IOWR('O', 5, int) [OPIOCGETNEXT] */
> case OPIOCGETNEXT:
> return "OPIOCGETNEXT";
>
>3831-33:
>/* #define OFIOCGET _IOWR('O', 1, struct ofiocdesc) [OFIOCGET] */
> case OFIOCGET:
> return "OFIOCGET";
>
>1124-26:
>/* #define OPIOCGET _IOWR('O', 1, struct opiocdesc) [OPIOCGET] */
> case OPIOCGET:
> return "OPIOCGET";
>
Please add "keep" lines to mkioctls and send us a patch:
For the 2 conflicts you mention you need:
keep["OPIOGET"] = 1; # Same as OFIOGET
keep["OPIOCGETNEXT"] = 1; # Same as OFIOCGETNEXT
I.e. pick the one to keep. I would do it, but my sparc64's are in a closet
unplugged until next week.
Thanks,
christos