Re: [Xquartz-dev] Tiger fixes in 1.4.2-apple24
I do have now this version of xserver. Right now a compilation of X11R7.4 is proceeding. It might take until local (UTC+1) midnight (four hours till then), or later, until the X server's build has finished, successful or not. Am 22.11.2008 um 02:31 schrieb Jeremy Huddleston:
1) What is your purpose for doing this build of X11 on Tiger?
Right now it's merely to help you making it Tiger compatible. Since I know that I won't get transparency I'm not that keen on building X11R7.4 anymore. I can afford re-building and updating the distribution, though, and I'll also find time to experiment and to find problems – solutions are harder to find.
2) Why are you autoreconf-ing everything? That often won't even work unless you have all the dependents available (which sometimes isn't the case) because of bad autotools etiquette when the packages are put together...
The modular build script does this because often a change of source code is accompanied by changes of macros for configuring and building the module. When working on a problem and just changing the source code it's not necessary to run the whole build script, a simple make in the module's top directory would be enough. Changes to the macros would need a 'autoreconf -fvi' or such.
As I mentioned before, jhbuild / build.sh doesn't work on Leopard let alone Tiger. The build process is quite complex, and I want to get jhbuild / build.sh working on Leopard soon, but I haven't even looked into it much yet.
Well, my experience on Tiger is: build.sh works perfectly! (OK, I have to admit that I early started to use an edited version that did not build most of the driver modules and the recent working version does not even start to build any such module since you told me that it's all in xserver.) One advantage of the build script is that you can put it into a particular environment that is then applied uniformly on every module's build procedure. And you can launch it and go to bed. By lunch time the distribution will be built. (Next build will be faster because the 5,000 files of libxcb documentation already exist, thanks to not installed dot and doxygen.) I'll see, to learn, what jhbuild is performing, how it can be controlled (and patched, too)!
Most of the patches are integrated into upstream except these: http://people.freedesktop.org/~jeremyhu/not.committed/
The libxcb one isn't in because I don't have commit access there yet, and I don't think the libXt one is really needed...
libXaw has fixes in git that aren't in a tarball yet... so you need git for that.
I haven't looked at these patches, because these two libraries get built (although I remember that libXaw when installed is not useable because of wrong versioning numbers in the installed files. This becomes visible when the apps are built.
but again... what's the point to all of this?
For example telling you that the build of libXpm (with much reduced Fink content) fails with: sxpm.c:56:21: error: libintl.h: No such file or directory Fink provides this header file in libgettext3-dev, also libintl (in libgettext3-shlibs). And because the build of libXpm failed, libXaw could not be built. And because this library was not built, almost no X client (app) could be built ... Or this: xinit.c:64:26: error: Availability.h: No such file or directory I can also imagine maintaining a wiki to help others to build X11R7.4 on Tiger ... BTW, libpciaccess is definitely not needed to build the X server on Mac OS X? Why is Mesa needed when Apple's OpenGL framework interferes? Aren't the framework's libraries just adequate? -- Greetings Pete Got Mole problems? Call Avogadro 6.02 x 10^23
2) Why are you autoreconf-ing everything? That often won't even work unless you have all the dependents available (which sometimes isn't the case) because of bad autotools etiquette when the packages are put together...
The modular build script does this because often a change of source code is accompanied by changes of macros for configuring and building the module. When working on a problem and just changing the source code it's not necessary to run the whole build script, a simple make in the module's top directory would be enough. Changes to the macros would need a 'autoreconf -fvi' or such.
Hmm... but that should only really be necessary if you checkout from git... oh well...
Most of the patches are integrated into upstream except these: http://people.freedesktop.org/~jeremyhu/not.committed/
The libxcb one isn't in because I don't have commit access there yet, and I don't think the libXt one is really needed...
libXaw has fixes in git that aren't in a tarball yet... so you need git for that.
I haven't looked at these patches, because these two libraries get built (although I remember that libXaw when installed is not useable because of wrong versioning numbers in the installed files. This becomes visible when the apps are built.
You should apply this patch then for libXaw: http://gitweb.freedesktop.org/?p=xorg/lib/libXaw.git;a=commitdiff;h=420efdba... Don't worry about the other two. Tiger actually doesn't need the libxcb patch. Note that this patch is for the new, post-X11R7.4 libXaw which punted libXaw.9. If you want to use the old tarball, you will need to essentially do the same thing, but in 3 hunks rather than 2. If that's confusing, let me know and I'll make the patch for you, since I'll need it eventually...
For example telling you that the build of libXpm (with much reduced Fink content) fails with:
sxpm.c:56:21: error: libintl.h: No such file or directory
Fink provides this header file in libgettext3-dev, also libintl (in libgettext3-shlibs). And because the build of libXpm failed, libXaw could not be built. And because this library was not built, almost no X client (app) could be built ...
libXpm-3.5.7 compiles cleanly for me... the line you reference is actually inside an '#ifdef USE_GETTEXT' ... so somehow your configure script is deciding to use gettext (probably because of fink in your environment): #ifdef USE_GETTEXT #include <locale.h> #include <libintl.h> #else #define gettext(a) (a) #endif
Or this: xinit.c:64:26: error: Availability.h: No such file or directory
-#include <Availability.h> +#include <AvailabilityMacros.h> fixed in git.
I can also imagine maintaining a wiki to help others to build X11R7.4 on Tiger ...
BTW, libpciaccess is definitely not needed to build the X server on Mac OS X?
That is correct.
Why is Mesa needed when Apple's OpenGL framework interferes? Aren't the framework's libraries just adequate?
Mesa is needed to build the Xserver and to build libGLU and libglut. Mesa does not provide libGL (you can use it, but it will only be software rendering). You should use the /usr/X11R6/libGL.dylib that comes with Tiger's X11 or build it yourself from the Leopard libGL source: http://www.opensource.apple.com/darwinsource/tarballs/other/X11server-48.4.t... --- libGL is a mess right now, but something that is actively being worked on (thanks George). I suggest you try getting the X11 working with -- disable-glx first... then we can worry about the GLX issue in isolation. --Jeremy
participants (2)
-
Jeremy Huddleston
-
Peter Dyballa