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

2012-06-09 Thread O. Hartmann
I try to track down problems on one of our FreeBSD 10.0-CURRENT/amd64
boxes and therefore, I try recompiling xorg.

One box is constantly failing to compile port graphics/dri with a
obviously well know error, as googling reveals (
http://lists.freedesktop.org/archives/mesa-dev/2011-December/016348.html).

I share /etc/make.conf and /etc/src.conf on those FreeBSD 10.0-CURRENT
boxes, they are supposed to have set
WITH_NEW_XORG=yes
WITHOUT_NOUVEAU=yes

There was a time when also WITH_KMS=yes was set on the box in question,
but I disabled that again (commented out).

The problem is sticky. I also tried portmaster -f graphics/dri,
everything is compiled well (CLANG) until it comes to graphics/dri itself.

graphics/libdrm is compiled without KMS.

Somehow bad things slipped into the system and I feel like floating like
a dead man in the water. I considered deleting /var/db/pkg/*, since
sometimes I need to delete manually specific folders in that directory
to make a port compiling again. But I do not know wether this is
introducing larger problems.

Compiling the whole ports (implies deleting them all) is no option for
this moment.

Does anyone know this problem and has a solution to get rid of this
sticky thing?

Regards,
Oliver


[...]
../../src/egl/main -I../../../../../src/egl/drivers/dri
-I/usr/local/include -I/usr/local/include/libdrm-DFEATURE_GL=1
-I/usr/local/include -I/usr/local/include/libdrm
-I/usr/local/include/nouveau   -I/usr/local/include -O3 -pipe
-fno-strict-aliasing -march=native -Wall -Wmissing-prototypes -std=c99
-fno-strict-aliasing -O3 -pipe -fno-strict-aliasing -march=native  -fPIC
 -DUSE_X86_64_ASM -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DPTHREADS
-DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS
-DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -fvisibility=hidden
nouveau_scratch.c -o nouveau_scratch.o
clang -c -I. -I../../../../../src/mesa/drivers/dri/common -Iserver
-I../../../../../include -I../../../../../src/mapi
-I../../../../../src/mesa -I../../../../../src/egl/main
-I../../../../../src/egl/drivers/dri -I/usr/local/include
-I/usr/local/include/libdrm-DFEATURE_GL=1 -I/usr/local/include
-I/usr/local/include/libdrm -I/usr/local/include/nouveau
-I/usr/local/include -O3 -pipe -fno-strict-aliasing -march=native -Wall
-Wmissing-prototypes -std=c99 -fno-strict-aliasing -O3 -pipe
-fno-strict-aliasing -march=native  -fPIC  -DUSE_X86_64_ASM
-DHAVE_POSIX_MEMALIGN -DUSE_XCB -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1
-DIN_DRI_DRIVER -DHAVE_ALIAS -DGLX_INDIRECT_RENDERING
-DGLX_DIRECT_RENDERING -fvisibility=hidden  nouveau_array.c -o
nouveau_array.o
nouveau_array.c:49:16: error: illegal storage class on function
*extract_u = EXTRACT(char, unsigned, 1);
 ^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:49:16: error: expected ';' at end of declaration
*extract_u = EXTRACT(char, unsigned, 1);
 ^
nouveau_array.c:39:50: note: expanded from macro 'EXTRACT'
out_t f(struct nouveau_array *a, int i, int j) {\
   ^
nouveau_array.c:50:16: error: illegal storage class on function
*extract_f = EXTRACT(char, float, SCHAR_MAX);
 ^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:50:16: error: expected ';' at end of declaration
*extract_f = EXTRACT(char, float, SCHAR_MAX);
 ^
nouveau_array.c:39:50: note: expanded from macro 'EXTRACT'
out_t f(struct nouveau_array *a, int i, int j) {\
   ^
nouveau_array.c:53:16: error: illegal storage class on function
*extract_u = EXTRACT(unsigned char, unsigned, 1);
 ^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:53:16: error: expected ';' at end of declaration
*extract_u = EXTRACT(unsigned char, unsigned, 1);
 ^
nouveau_array.c:39:50: note: expanded from macro 'EXTRACT'
out_t f(struct nouveau_array *a, int i, int j) {\
   ^
nouveau_array.c:54:16: error: illegal storage class on function
*extract_f = EXTRACT(unsigned char, float, UCHAR_MAX);
 ^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:54:16: error: expected ';' at end of declaration
*extract_f 

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

2012-06-09 Thread Dimitry Andric
On 2012-06-09 19:00, O. Hartmann wrote:
...
 I try to track down problems on one of our FreeBSD 10.0-CURRENT/amd64
 boxes and therefore, I try recompiling xorg.
 
 One box is constantly failing to compile port graphics/dri with a
 obviously well know error, as googling reveals (
 http://lists.freedesktop.org/archives/mesa-dev/2011-December/016348.html).
 
 I share /etc/make.conf and /etc/src.conf on those FreeBSD 10.0-CURRENT
 boxes, they are supposed to have set
 WITH_NEW_XORG=yes
 WITHOUT_NOUVEAU=yes
 
 There was a time when also WITH_KMS=yes was set on the box in question,
 but I disabled that again (commented out).
 
 The problem is sticky. I also tried portmaster -f graphics/dri,
 everything is compiled well (CLANG) until it comes to graphics/dri itself.

You asked the same question a few weeks ago:

  http://docs.freebsd.org/cgi/mid.cgi?4F9BC101.8090305

I posted a patch here:

  http://docs.freebsd.org/cgi/mid.cgi?4F9C2047.8020108

Afterwards, I asked either the libGL maintainers or x11@ if it was OK
to commit, but I received no response.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


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

2012-06-09 Thread O. Hartmann
On 06/09/12 19:34, Dimitry Andric wrote:
 On 2012-06-09 19:00, O. Hartmann wrote:
 ...
 I try to track down problems on one of our FreeBSD 10.0-CURRENT/amd64
 boxes and therefore, I try recompiling xorg.

 One box is constantly failing to compile port graphics/dri with a
 obviously well know error, as googling reveals (
 http://lists.freedesktop.org/archives/mesa-dev/2011-December/016348.html).

 I share /etc/make.conf and /etc/src.conf on those FreeBSD 10.0-CURRENT
 boxes, they are supposed to have set
 WITH_NEW_XORG=yes
 WITHOUT_NOUVEAU=yes

 There was a time when also WITH_KMS=yes was set on the box in question,
 but I disabled that again (commented out).

 The problem is sticky. I also tried portmaster -f graphics/dri,
 everything is compiled well (CLANG) until it comes to graphics/dri itself.
 
 You asked the same question a few weeks ago:
 
   http://docs.freebsd.org/cgi/mid.cgi?4F9BC101.8090305
 
 I posted a patch here:
 
   http://docs.freebsd.org/cgi/mid.cgi?4F9C2047.8020108
 
 Afterwards, I asked either the libGL maintainers or x11@ if it was OK
 to commit, but I received no response.


O, sorry.
I deleted the /usr/ports completely on that specific box.

Now, with your patch set installed again, graphics/dri compiles without
a flaw.

I was wondering why there are not more people/FreeBSD users out there
having the very same problem.

I'd appreciate your patch getting permanent soon.

Thanks,
Oliver




signature.asc
Description: OpenPGP digital signature


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

2012-06-09 Thread Dimitry Andric
On 2012-06-09 21:57, O. Hartmann wrote:
...
 Now, with your patch set installed again, graphics/dri compiles without
 a flaw.
 
 I was wondering why there are not more people/FreeBSD users out there
 having the very same problem.

Most likely because neither WITH_NEW_XORG nor CC=clang are defaults (at
least not yet ;).

I haven't exactly followed the new xorg import, but I imagine it has
been a huge effort to get everything upgraded without breaking too much
existing stuff.

However, this kind of major update always causes a few edge cases to
blow up.  That's why miwi sent the call for testing to several mailing
lists.  So please test, and if possible, send fixes! :)


 I'd appreciate your patch getting permanent soon.

Since this particular fix isn't yet integrated into the latest MesaLib
release, I filed a PR, ports/168902.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org