<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>112715</bug_id>
          
          <creation_ts>2005-11-16 09:44 0000</creation_ts>
          <short_desc>ndiswrapper 1.5 does not emerge with kernel 2.4.28 or similar: usb.c:311: error: `URB_ASYNC_UNLINK&apos; undeclared</short_desc>
          <delta_ts>2005-12-28 06:23:17 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Ebuilds</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>niels@drni.de</reporter>
          <assigned_to>mobile@gentoo.org</assigned_to>
          

      

      
          <long_desc isprivate="0">
            <who>niels@drni.de</who>
            <bug_when>2005-11-16 09:44:41 0000</bug_when>
            <thetext>ndiswrapper 1.5 does not emerge on my system and most probably this is because  
of kernel 2.4.28. A unhappy combination...  
 
WORKAROUND: Download ndiswrapper from sourceforge, edit driver/usb.c and 
comment out lines 310-312 so that they look like this: 
 
//#ifdef USB_ASYNC_UNLINK 
//	urb-&gt;transfer_flags |= URB_ASYNC_UNLINK; 
//#endif 
 
Then it compiles. Maybe this should become a path for 2.4.x kernel based 
systems for the ebuild? 

Reproducible: Always
Steps to Reproduce:
1. unmask ndiswrapper-1.5  
2. Do emerge =ndiswrapper-1.5  
 
  
Actual Results:  
 


 
Calculating dependencies ...done! 
&gt;&gt;&gt; emerge (1 of 1) net-wireless/ndiswrapper-1.5 to / 
&gt;&gt;&gt; md5 files   ;-) ndiswrapper-1.5.ebuild 
&gt;&gt;&gt; md5 files   ;-) ndiswrapper-1.2.ebuild 
&gt;&gt;&gt; md5 files   ;-) files/digest-ndiswrapper-1.2 
&gt;&gt;&gt; md5 files   ;-) files/digest-ndiswrapper-1.5 
&gt;&gt;&gt; md5 files   ;-) files/ndiswrapper-1.2-suspend2.patch 
&gt;&gt;&gt; md5 src_uri ;-) ndiswrapper-1.5.tar.gz 
 * Determining the location of the kernel source code 
 * Found kernel source directory: 
 *     /usr/src/linux 
 * Found sources for kernel version: 
 *     2.4.28 
 * Checking for suitable kernel configuration options: 
&gt;&gt;&gt; Unpacking source... 
&gt;&gt;&gt; Unpacking ndiswrapper-1.5.tar.gz to /var/tmp/portage/ndiswrapper-1.5/work 
 * Applying ndiswrapper-1.2-suspend2.patch ...                              
[ ok ] 
 * The only kernels that will work are gentoo-sources, vanilla-sources, and 
suspen               d2-sources. 
 * No other kernels are supported. Kernels like the mm kernels will NOT work. 
&gt;&gt;&gt; Source unpacked. 
cc -Wall -g -DUTILS_VERSION=\&quot;1.5\&quot;    -c -o loadndisdriver.o loadndisdriver.c 
gcc -o loadndisdriver loadndisdriver.o 
 * Preparing ndiswrapper module 
cc -O2 -mcpu=i686 -fomit-frame-pointer -DEXPORT_SYMTAB -DMODVERSIONS 
-include //us               r/src/linux/include/linux/modversions.h 
-DDRIVER_VERSION=\&quot;1.5\&quot; -DLINUX -D__KERNE               L__ -DMODULE 
-I//usr/src/linux/include -Wall -Wstrict-prototypes -fomit-frame-poin               
ter -fno-strict-aliasing -pipe -O2 -mpreferred-stack-boundary=2    -c -o hal.o 
hal               .c 
 
[...skipped stuff .... ] 
 
cc -O2 -mcpu=i686 -fomit-frame-pointer -DEXPORT_SYMTAB -DMODVERSIONS 
-include //usr/src/linux/include/linux/modversions.h -DDRIVER_VERSION=\&quot;1.5\&quot; 
-DLINUX -D__KERNEL__ -DMODULE -I//usr/src/linux/include -Wall 
-Wstrict-prototypes -fomit-frame-pointer -fno-strict-aliasing -pipe -O2 
-mpreferred-stack-boundary=2    -c -o usb.o usb.c 
cc -O2 -mcpu=i686 -fomit-frame-pointer -DEXPORT_SYMTAB -DMODVERSIONS 
-include //usr/src/linux/include/linux/modversions.h -DDRIVER_VERSION=\&quot;1.5\&quot; 
-DLINUX -D__KERNEL__ -DMODULE -I//usr/src/linux/include -Wall 
-Wstrict-prototypes -fomit-frame-pointer -fno-strict-aliasing -pipe -O2 
-mpreferred-stack-boundary=2    -c -o divdi3.o divdi3.c 
usb.c: In function `wrap_alloc_urb&apos;: 
usb.c:311: error: `URB_ASYNC_UNLINK&apos; undeclared (first use in this function) 
usb.c:311: error: (Each undeclared identifier is reported only once 
usb.c:311: error: for each function it appears in.) 
usb.c: In function `wrap_get_descriptor&apos;: 
usb.c:943: warning: implicit declaration of function 
`usb_get_string_R8f2b4359&apos; 
make: *** [usb.o] Error 1 
make: *** Waiting for unfinished jobs.... 
 
!!! ERROR: net-wireless/ndiswrapper-1.5 failed. 
!!! Function linux-mod_src_compile, Line 505, Exitcode 2 
!!! Unable to make                                  KSRC=//usr/src/linux 
KVERS=24 all. 
!!! If you need support, post the topmost build error, NOT this status 
message.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>betelgeuse@gentoo.org</who>
            <bug_when>2005-12-28 06:23:17 0000</bug_when>
            <thetext>ndiswrapper-1.7 should fix this.</thetext>
          </long_desc>
      
    </bug>

</bugzilla>