EBuild Failed. There is an issue building scsi-info.c, in include scsi/scsi.h at line 229. It looks like it doesn't recognize the data type 'u8'. Reproducible: Always Steps to Reproduce: 1.emerge pcmcia-cs 2. 3. Actual Results: sudo emerge pcmcia-cs Password: Calculating dependencies ...done! >>> emerge (1 of 1) sys-apps/pcmcia-cs-3.2.4 to / >>> md5 src_uri ;-) pcmcia-cs-3.2.4.tar.gz >>> md5 src_uri ;-) pcmcia-cs-3.2.4-orinoco-patch.diff >>> Unpacking source... >>> Unpacking pcmcia-cs-3.2.4.tar.gz to /var/tmp/portage/pcmcia-cs-3.2.4/work * Applying pcmcia-cs-3.2.4-orinoco-patch.diff... [ ok ] >>> Source unpacked. -------- Linux PCMCIA Configuration Script -------- The default responses for each question are correct for most users. Consult the PCMCIA-HOWTO for additional info about each option. Linux kernel source directory [/usr/src/linux] The kernel source tree is version 2.6.0-test1. The current kernel build date is Tue Jul 15 14:59:45 2003. Build 'trusting' versions of card utilities (y/n) [n] Include 32-bit (CardBus) card support (y/n) [y] Include PnP BIOS resource checking (y/n) [n] Module install directory [/lib/modules/2.6.0-test1] Kernel configuration options: Kernel-tree PCMCIA support is enabled. Symmetric multiprocessing support is disabled. Preemptive kernel support is disabled. High memory support is disabled. PCI BIOS support is enabled. Power management (APM) support is enabled. SCSI support is enabled. IEEE 1394 (FireWire) support is disabled. Networking support is enabled. Radio network interface support is enabled. Token Ring device support is disabled. Fast switching is disabled. Frame Diverter is disabled. Module version checking is disabled. Kernel debugging support is disabled. Preemptive kernel patch is disabled. /proc filesystem support is enabled. PAE support is disabled. expr: syntax error ./Configure: line 907: [: 131413: unary operator expected System V init script layout (y/n) [n] The Forms library is not available. Configuration successful. Your kernel is configured with PCMCIA driver support. Therefore, 'make all' will compile the PCMCIA utilities but not the drivers. make[1]: Entering directory `/var/tmp/portage/pcmcia-cs-3.2.4/work/pcmcia-cs-3.2.4/cardmgr' cc -march=pentium3 -O3 -pipe -MD -O3 -Wall -Wstrict-prototypes -pipe -Wa,--no-warn -I../include/static -I/usr/src/linux/include -I../include -I../modules -c cardmgr.c cc -march=pentium3 -O3 -pipe -c -MD -O -pipe -I../include/static -I/usr/src/linux/include -I../include -I../modules yacc_config.c cc -march=pentium3 -O3 -pipe -c -MD -O -pipe -I../include/static -I/usr/src/linux/include -I../include -I../modules lex_config.c cc -march=pentium3 -O3 -pipe -O3 -Wall -Wstrict-prototypes -pipe -Wa,--no-warn -I../include/static -I/usr/src/linux/include -I../include -I../modules cardctl.c -o cardctl cc -march=pentium3 -O3 -pipe -O3 -Wall -Wstrict-prototypes -pipe -Wa,--no-warn -I../include/static -I/usr/src/linux/include -I../include -I../modules ifport.c -o ifport cc -march=pentium3 -O3 -pipe -O3 -Wall -Wstrict-prototypes -pipe -Wa,--no-warn -I../include/static -I/usr/src/linux/include -I../include -I../modules ifuser.c -o ifuser cc -march=pentium3 -O3 -pipe -O3 -Wall -Wstrict-prototypes -pipe -Wa,--no-warn -I../include/static -I/usr/src/linux/include -I../include -I../modules scsi_info.c -o scsi_info In file included from scsi_info.c:42: /usr/src/linux/include/scsi/scsi.h:229: parse error before "u8" /usr/src/linux/include/scsi/scsi.h:229: warning: no semicolon at end of struct or union /usr/src/linux/include/scsi/scsi.h:230: warning: type defaults to `int' in declaration of `ScsiLun' /usr/src/linux/include/scsi/scsi.h:230: warning: data definition has no type or storage class make[1]: *** [scsi_info] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/pcmcia-cs-3.2.4/work/pcmcia-cs-3.2.4/cardmgr' make: *** [all] Error 2 !!! ERROR: sys-apps/pcmcia-cs-3.2.4 failed. !!! Function src_compile, Line 100, Exitcode 2 !!! failed compiling Expected Results: Completed sucessfully! I have pcmcia support built into the kernel 2.6.0-test1 as well as the driver I want, but it doesn't seem to be finding it.
changing that u8 to a u_int8_t should fix that. see: http://www.ussg.iu.edu/hypermail/linux/kernel/0301.1/0008.html
Created attachment 15171 [details] ebuild for fixing u8 bug (applies patch) This ebuild applies a patch to fix the u8 problem.
Created attachment 15172 [details, diff] (patch) fixes u8 in scsi.h (use with ebuild above) Put this patch file in the pcmcia-cs-tools' portage-tree files dir. Use with ebuild attached above. The kernel refuses to "pollute" the namespace with non-POSIX symbols like "u8" for userspace in 2.5.x and above... this will pollute it again to make pcmcia-cs-tools happy...
Thanks for the patch, guys. Unfortunately it appears Chad has fallen off the edge of the earth, so this was dropped on the ground. At this point the patch is no longer relevant because we use the in-kernel PCMCIA instead of the pcmcia-cs package for 2.6 kernels. Thanks!