Ok, I just added a conditional definition for list_for_each_safe to
mach64_drv.h if it's not defined.  I'm using 2.4.18, btw.  Let me know if
there are still compile errors after this.

-Leif

On Thu, 23 May 2002, José Fonseca wrote:

> It seems that the recent changes have broken source compatibility with 
> 2.4.7 kernels, as a first-time user experienced. As you can see below, it 
> seems everything compiles fine except mach64_dma.c.
> 
> The first and most of the errors are related with the no previous 
> declaration of 'list_for_each_safe'.
> 
> Leif, which kernel are you using?
> 
> José Fonseca
> 
> 
> 
> On 2002.05.23 16:48 J5 wrote:
> ...
> 
> [root@lain drm]# make -f Makefile.linux mach64.o -n
> cc -O2 -Wall -Wwrite-strings -Wpointer-arith -Wcast-align
> -Wstrict-prototypes
> -Wnested-externs -Wpointer-arith
> -D__KERNEL__ -DMODULE -fomit-frame-pointer -DCONFIG_AGP -DCONFIG_AGP_MODULE
> 
> -DCONFIG_DRM_SIS -DMODVERSIONS -include
> /lib/modules/2.4.7-10custom/build/include/linux/modversions.h
> -I/lib/modules/2.4.7-10custom/build/include
> -c mach64_dma.c -o mach64_dma.o
> ld -r mach64_drv.o mach64_dma.o mach64_state.o -o mach64.o
> 
> ...
> 
> i recompiled the kernel, enabled support for agp, disabled dri from xfree
> and finaly installed the modules. and still i can`t get it compiled.
> 
> Compiling...
> ERROR: Kernel modules did not compile
> 
> The DRI drivers can not be installed without the latest kernel modules.
> Installation will be aborted. See the dri.log file for information on
> what went wrong.
> 
> so here it is :
> 
> cc -O2 -Wall -Wwrite-strings -Wpointer-arith -Wcast-align
> -Wstrict-prototypes
> -Wnested-externs -Wpointer-arith -D__KERNEL__ -DMODULE -fomit-frame-pointer
> 
> -DCONFIG_AGP -DCONFIG_AGP_MODULE -DCONFIG_DRM_SIS -DMODVERSIONS -include
> /lib/modules/2.4.7-10custom/build/include/linux/modversions.h
> -I/lib/modules/2.4.7-10custom/build/include -c mach64_dma.c -o mach64_dma.o
> In file included from
> /lib/modules/2.4.7-10custom/build/include/linux/pagemap.h:16,
>                   from
> /lib/modules/2.4.7-10custom/build/include/linux/locks.h:8,
>                   from
> /lib/modules/2.4.7-10custom/build/include/linux/devfs_fs_kernel.h:6,
>                   from
> /lib/modules/2.4.7-10custom/build/include/linux/miscdevice.h:4,
>                   from drmP.h:45,
>                   from mach64_dma.c:33:
> /lib/modules/2.4.7-10custom/build/include/linux/highmem.h: In function
> `bh_kmap':
> /lib/modules/2.4.7-10custom/build/include/linux/highmem.h:21: warning:
> pointer of type `void *' used in arithmetic
> mach64_dma.c: In function `mach64_do_dispatch_real_dma':
> mach64_dma.c:924: warning: implicit declaration of function
> `list_for_each_safe'
> mach64_dma.c:925: parse error before `{'
> mach64_dma.c:769: warning: `entry' might be used uninitialized in this
> function
> mach64_dma.c:933: warning: control reaches end of non-void function
> mach64_dma.c: At top level:
> mach64_dma.c:936: parse error before `volatile'
> mach64_dma.c:941: parse error before `volatile'
> mach64_dma.c:945: parse error before `volatile'
> mach64_dma.c:949: parse error before `volatile'
> mach64_dma.c:962: warning: type defaults to `int' in declaration of
> `mach64_dump_engine_info'
> mach64_dma.c:962: warning: parameter names (without types) in function
> declaration
> mach64_dma.c:962: conflicting types for `mach64_dump_engine_info'
> mach64_dma.c:239: previous declaration of `mach64_dump_engine_info'
> mach64_dma.c:962: warning: data definition has no type or storage class
> mach64_dma.c:963: warning: type defaults to `int' in declaration of
> `mach64_do_engine_reset'
> mach64_dma.c:963: warning: parameter names (without types) in function
> declaration
> mach64_dma.c:963: warning: data definition has no type or storage class
> mach64_dma.c:964: warning: type defaults to `int' in declaration of
> `mach64_do_release_used_buffers'
> mach64_dma.c:964: warning: parameter names (without types) in function
> declaration
> mach64_dma.c:964: warning: data definition has no type or storage class
> mach64_dma.c:965: parse error before `return'
> mach64_dma.c:967: warning: type defaults to `int' in declaration of
> `mach64_do_release_used_buffers'
> mach64_dma.c:967: warning: parameter names (without types) in function
> declaration
> mach64_dma.c:967: warning: data definition has no type or storage class
> mach64_dma.c:968: parse error before `}'
> mach64_dma.c: In function `mach64_do_dispatch_pseudo_dma':
> mach64_dma.c:993: parse error before `{'
> mach64_dma.c:975: warning: `ptr' might be used uninitialized in this
> function
> mach64_dma.c:977: warning: `entry' might be used uninitialized in this
> function
> mach64_dma.c:1041: warning: control reaches end of non-void function
> mach64_dma.c: At top level:
> mach64_dma.c:1044: warning: type defaults to `int' in declaration of
> `mach64_do_release_used_buffers'
> mach64_dma.c:1044: warning: parameter names (without types) in function
> declaration
> mach64_dma.c:1044: warning: data definition has no type or storage class
> mach64_dma.c:1046: parse error before `do'
> mach64_dma.c: In function `mach64_do_release_used_buffers':
> mach64_dma.c:1084: parse error before `{'
> mach64_dma.c:1073: warning: `ptr' might be used uninitialized in this
> function
> mach64_dma.c:1075: warning: `entry' might be used uninitialized in this
> function
> mach64_dma.c:1090: warning: control reaches end of non-void function
> mach64_dma.c: At top level:
> mach64_dma.c:1092: parse error before `do'
> mach64_dma.c: In function `mach64_destroy_freelist':
> mach64_dma.c:1246: parse error before `{'
> mach64_dma.c:1240: warning: `ptr' might be used uninitialized in this
> function
> mach64_dma.c: At top level:
> mach64_dma.c:1252: parse error before `&'
> mach64_dma.c:1253: warning: return type defaults to `int'
> mach64_dma.c:1253: warning: function declaration isn't a prototype
> mach64_dma.c: In function `list_for_each_safe':
> mach64_dma.c:1254: `ptr' undeclared (first use in this function)
> mach64_dma.c:1254: (Each undeclared identifier is reported only once
> mach64_dma.c:1254: for each function it appears in.)
> mach64_dma.c:1255: `entry' undeclared (first use in this function)
> mach64_dma.c:1257: warning: control reaches end of non-void function
> mach64_dma.c: At top level:
> mach64_dma.c:1259: parse error before `&'
> mach64_dma.c:1260: warning: return type defaults to `int'
> mach64_dma.c:1260: warning: function declaration isn't a prototype
> mach64_dma.c:1260: redefinition of `list_for_each_safe'
> mach64_dma.c:1253: `list_for_each_safe' previously defined here
> mach64_dma.c: In function `list_for_each_safe':
> mach64_dma.c:1264: warning: control reaches end of non-void function
> mach64_dma.c: At top level:
> mach64_dma.c:1266: parse error before `&'
> mach64_dma.c:1267: warning: return type defaults to `int'
> mach64_dma.c:1267: warning: function declaration isn't a prototype
> mach64_dma.c:1267: redefinition of `list_for_each_safe'
> mach64_dma.c:1260: `list_for_each_safe' previously defined here
> mach64_dma.c: In function `list_for_each_safe':
> mach64_dma.c:1271: warning: control reaches end of non-void function
> mach64_dma.c: At top level:
> mach64_dma.c:1272: parse error before `}'
> mach64_dma.c: In function `mach64_freelist_get':
> mach64_dma.c:1300: parse error before `{'
> mach64_dma.c:1314: `done_age' undeclared (first use in this function)
> mach64_dma.c:1308: label `_freelist_entry_found' used but not defined
> mach64_dma.c:1276: warning: `entry' might be used uninitialized in this
> function
> mach64_dma.c:1277: warning: `ptr' might be used uninitialized in this
> function
> mach64_dma.c: At top level:
> mach64_dma.c:1318: parse error before `:'
> mach64_dma.c:1320: warning: type defaults to `int' in declaration of
> `list_del'
> mach64_dma.c:1320: warning: parameter names (without types) in function
> declaration
> mach64_dma.c:1320: conflicting types for `list_del'
> /lib/modules/2.4.7-10custom/build/include/linux/list.h:93: previous
> declaration of `list_del'
> mach64_dma.c:1320: warning: data definition has no type or storage class
> mach64_dma.c:1321: warning: type defaults to `int' in declaration of
> `entry'
> mach64_dma.c:1321: `entry' used prior to declaration
> mach64_dma.c:1321: `ptr' undeclared here (not in a function)
> mach64_dma.c:1321: warning: data definition has no type or storage class
> mach64_dma.c:1322: parse error before `->'
> mach64_dma.c:1323: parse error before `&'
> mach64_dma.c:1323: warning: type defaults to `int' in declaration of
> `list_add_tail'
> mach64_dma.c:1323: warning: function declaration isn't a prototype
> mach64_dma.c:1323: conflicting types for `list_add_tail'
> /lib/modules/2.4.7-10custom/build/include/linux/list.h:69: previous
> declaration of `list_add_tail'
> mach64_dma.c:1323: warning: data definition has no type or storage class
> mach64_dma.c: In function `mach64_dma_buffers':
> mach64_dma.c:1432: confused by earlier errors, bailing out
> make: *** [mach64_dma.o] B³±d 1
> 
> ...
> 
> _______________________________________________________________
> 
> Don't miss the 2002 Sprint PCS Application Developer's Conference
> August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm
> 
> _______________________________________________
> Dri-devel mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/dri-devel
> 

-- 
Leif Delgass 
http://www.retinalburn.net


_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to