O. Hartmann | 28 Apr 12:05 2012

New Xorg: graphics/dri: fails to compile with CLANG: nouveau_array.c:49:16: error: illegal storage class on function, *extract_u = EXTRACT(char, unsigned, 1);

Compiling Xorg stuff with the switch set in /etc/make.conf for the new
Xorg graphics/dri  mesa 7.11.x and xorg-server 1.10.6 with CLANG on bot
FreeBSD 10 and 9 end up in an error:

nouveau_array.c:49:16: error: illegal storage class on function
                *extract_u = EXTRACT(char, unsigned, 1);

This error seem to be well known since last year, as this links states:


and claimed to be resolved, as this link indicates:




Is there in "official" way to get this fixed with CLANG? I see that
files folder in graphics/dri is missing, so none of the  fixes for both
the faulty source files


as indicated by the patches have been fixed permanently for CLANG with
FreeBSD so far.

It would be a pleasure having a "nice" solution using CLANG. I was
looking for a switch allowing to patch the sources upon a criteria, but
the ports framework seems not to be capable of such a thing. If there is
already a solution I would be pleased to have it, too, if available,
otherwise I will go for installation of GIT, sucking in the patches and
create myself patchfiles. I'm hesitating to do so at the moment since I
don't want to have git installed since I do not use it, yet (updating
useless/unused ports is sometimes a waste of time on slow boxes, sorry).

Thanks in advance,