On Dec 4, 2007, at 15:58, Ben Byer wrote:
The tarball -- which, of course, doesn't include an autogen.sh :)
I can't actually find the build rule to make libXquartz in any of the Makefiles
darwin/quartz/Makefile.am: noinst_LIBRARIES = libXQuartz.a
, and I'm seeing a dependency problem in git where changing files in quartz/xpr -- which eventually get built into libXquartz.a -- don't cause Xquartz itself to be rebuilt.
It actually gets quartz/xpr/libxpr.a to be rebuilt which gets built into Xquartz (not libXquartz) From darwin/Makefile.am: Xquartz_LDADD = \ ./quartz/libXquartz.a \ ./quartz/xpr/libxpr.a \ $(top_builddir)/dix/dixfonts.lo \
To mitigate that, I'm finally going through and flattening everything -- I'm going to get rid of quartz/. That won't actually help the Makefile / tarball problem, but it should prevent these kinds of things from happening in the future. And I guess I'll go digging in the old stuff to find that missing rule.
Wait no! I think that's a bad idea. I was thinking about doing that yesterday and undid the changes! I was going to flatten things out but I realized that this break between darwin/quartz/xpr is *GOOD* because it will let us change from xpr / miest/rootless to kdrive by simply replacing xpr and allows someone to resurrect XDarwin at a later point by making a 'darwin/ Xdarwin' directory and implementing the same interface. There is a dependency problem here, and I can fix it in another way that is a bit more "correct": darwin/*.c should go into darwin/libdarwin.a, darwin/quartz/*.[mc] should go into darwin/quartz/libXquartz.a, and xpr should be where Xquartz gets built linking to those two. As an end goal (seeing kdrive based X server down the road), we can probably make xpr into a dylib which gets dlopen'd by our app bundle based on defaults (choosing between the xpr one, the kdrive one, a resurrected cr, etc). --Jeremy