graphics/dri: nouveau_array.c:49:16: error: illegal storage class
on function, *extract_u = EXTRACT(char, unsigned, 1);
O. Hartmann
ohartman at zedat.fu-berlin.de
Sat Jun 9 17:00:30 UTC 2012
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 = EXTRACT(unsigned char, float, UCHAR_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:57:16: error: illegal storage class on function
*extract_u = EXTRACT(short, unsigned, 1);
^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:57:16: error: expected ';' at end of declaration
*extract_u = EXTRACT(short, 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:58:16: error: illegal storage class on function
*extract_f = EXTRACT(short, float, SHRT_MAX);
^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:58:16: error: expected ';' at end of declaration
*extract_f = EXTRACT(short, float, SHRT_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:61:16: error: illegal storage class on function
*extract_u = EXTRACT(unsigned short, unsigned, 1);
^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:61:16: error: expected ';' at end of declaration
*extract_u = EXTRACT(unsigned short, 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:62:16: error: illegal storage class on function
*extract_f = EXTRACT(unsigned short, float, USHRT_MAX);
^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:62:16: error: expected ';' at end of declaration
*extract_f = EXTRACT(unsigned short, float, USHRT_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:65:16: error: illegal storage class on function
*extract_u = EXTRACT(int, unsigned, 1);
^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
nouveau_array.c:65:16: error: expected ';' at end of declaration
*extract_u = EXTRACT(int, 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: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 nv04_context.c -o nv04_context.o
66:16: error: illegal storage class on function
*extract_f = EXTRACT(int, float, INT_MAX);
^
nouveau_array.c:38:3: note: expanded from macro 'EXTRACT'
auto out_t f(struct nouveau_array *, int, int); \
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
gmake[6]: *** [nouveau_array.o] Error 1
gmake[6]: *** Waiting for unfinished jobs....
nouveau_context.c:281:2: warning: expression result unused [-Wunused-value]
context_bctx(ctx, FRAMEBUFFER);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./nouveau_bo_state.h:103:2: note: expanded from macro 'context_bctx'
__context_bctx(ctx, NOUVEAU_BO_CONTEXT_##s)
^
./nouveau_bo_state.h:100:3: note: expanded from macro '__context_bctx'
bctx; \
^~~~
1 warning generated.
nv04_context.c:78:4: warning: expression result unused [-Wunused-value]
context_bctx_i(ctx, TEXTURE, 1);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./nouveau_bo_state.h:105:2: note: expanded from macro 'context_bctx_i'
__context_bctx(ctx, NOUVEAU_BO_CONTEXT_##s##0 + (i))
^
./nouveau_bo_state.h:100:3: note: expanded from macro '__context_bctx'
bctx; \
^~~~
1 warning generated.
gmake[6]: Leaving directory
`/usr/ports/graphics/dri/work/Mesa-7.11.2/src/mesa/drivers/dri/nouveau'
gmake[5]: *** [lib] Error 2
gmake[5]: Leaving directory
`/usr/ports/graphics/dri/work/Mesa-7.11.2/src/mesa/drivers/dri/nouveau'
gmake[4]: *** [subdirs] Error 1
gmake[4]: Leaving directory
`/usr/ports/graphics/dri/work/Mesa-7.11.2/src/mesa/drivers/dri'
gmake[3]: *** [default] Error 1
gmake[3]: Leaving directory
`/usr/ports/graphics/dri/work/Mesa-7.11.2/src/mesa/drivers'
gmake[2]: *** [driver_subdirs] Error 2
gmake[2]: Leaving directory
`/usr/ports/graphics/dri/work/Mesa-7.11.2/src/mesa'
gmake[1]: *** [subdirs] Error 1
gmake[1]: Leaving directory `/usr/ports/graphics/dri/work/Mesa-7.11.2/src'
gmake: *** [default] Error 1
*** [do-build] Error code 1
Stop in /usr/ports/graphics/dri.
===>>> make failed for graphics/dri
===>>> Aborting update
Terminated
===>>> There are messages from installed ports to display,
but first take a moment to review the error messages
above. Then press Enter when ready to proceed.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20120609/3cc3a3c4/signature.pgp
More information about the freebsd-current
mailing list