I get compile errors in xc/programs/Xserver/Xext/xvmc.c on s390(x): implicit declaration of shmat/shmdt and undefined SHM_RDONLY And fixing these by including <sys/shm.h> in xvmc.c results in an undefined reference to xf86getpagesize when linking the static Server. I'm quite sure that this will happen to all architecutures, which build only static servers. I'm currently testing a workaround and will attach it later.
These compile errors are related to the latest changes in xvmc.c (1.2 --> 1.3): Added support for automatic loading of the correct hardware XvMC driver. This involves a protocol extension of the XvMC protocol. The XvMC revision number was bumped.
reassigning ...
Created attachment 1324 [details] [review] xvmc.c.diff Workaround to fix build on s390(x).
Hmm, The test for SHM presence should be improved, an I'll work out a patch for that. However, the getpagesize() should be available according to (xf86_ansic.h), or have I misunderstood something. /* * These things are always required by drivers (but not by libc_wrapper.c), * even for a static server because some OSs don't provide them. */ extern int xf86getpagesize(void); extern void xf86usleep(unsigned long); extern void xf86getsecs(long *, long *); #ifndef DONT_DEFINE_WRAPPERS #undef getpagesize #define getpagesize() xf86getpagesize() #undef usleep #define usleep(ul) xf86usleep(ul) #undef getsecs #define getsecs(a, b) xf86getsecs(a, b) #endif #endif /* _XF86_ANSIC_H */ I believe a better workaround is to disable the local check for your particular OS, since it is only a hint anyway. Is there an OS define I can use? /Tomas
Hmm ... OS define is 's390Architecture' and 's390xArchitecture'.
(In reply to comment #5) > Hmm ... OS define is 's390Architecture' and 's390xArchitecture'. I've commited a fix now that gets rid of the getpagesize() call altogether. Could you try it out and close the bug if it works? /Thomas
Build on s390(x) works fine now. Thanks!
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.