Hi all,
        After spending a few hours trying to figure out why I couldn't get 
the Xlib target to build, I noticed that the autoconf system was picking 
up the directories for X properly, but wasn't finding X11/Xlib.h
        The following patch changes configure.in to use AC_PATH_XTRA as 
opposed to AC_PATH_X.  AC_PATH_XTRA sets X_CFLAGS and X_LIBS the same way 
AC_PATH_X set x_includes and x_libraries, but it also sets 
X_DISPLAY_MISSING if it cannot find X, or if you turn off X support via 
--without-x.
        I tested this with X turned on and turned off and it compiles 
cleanly both ways.
        The remainder of the patch removes some @ac_ggi_@ and @ac_png_@ 
cruft from directories that don't use them.  I don't have ggi installed, 
so that portion of the patch is untested, but it seems pretty obvious to 
me.

/Chris

diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/configure.in freesci/configure.in
--- freesci-orig/configure.in   Sun Mar 11 11:47:06 2001
+++ freesci/configure.in        Sun Mar 11 11:49:15 2001
@@ -14,7 +14,6 @@
 AC_CHECK_HEADERS(dirent.h)
 AC_CHECK_HEADERS(unistd.h)
 AC_CHECK_HEADERS(fnmatch.h)
-AC_CHECK_HEADERS(X11/Xlib.h)
 AC_CHECK_HEADERS(readline/readline.h, [        ac_readline="-lreadline" ], [ 
ac_readline="" ])
 AC_SUBST(ac_readline)
 AC_CHECK_HEADERS(readline/history.h)
@@ -26,7 +25,7 @@
 AM_PATH_ALSA(0.5.0, [AC_DEFINE(HAVE_ALSA)], [echo >/dev/null])
 AC_PATH_GGI
 AC_PATH_CURSES
-AC_PATH_X
+AC_PATH_XTRA
 
 AC_MSG_CHECKING(for Alpha hardware and gcc style __asm__)
 AC_TRY_COMPILE([], [
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/Makefile.am freesci/src/Makefile.am
--- freesci-orig/src/Makefile.am        Sun Mar 11 11:47:03 2001
+++ freesci/src/Makefile.am     Sun Mar 11 12:13:50 2001
@@ -1,6 +1,6 @@
 SUBDIRS = scicore engine include gfx sound tools win32
 EXTRA_DIST = README yywrap.c config.l python.tar.gz
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@
-LDADD = engine/libsciengine.a scicore/libscicore.a gfx/libscigraphics.a 
gfx/resource/libsciresources.a gfx/drivers/libscidrivers.a sound/libscisound.a 
@x_libraries@ @ac_ggi_libraries@ @ac_readline@ @ac_curses_libraries@ 
@ac_png_libraries@ -lm
+INCLUDES = -I$(top_srcdir)/src/include
+LDADD = engine/libsciengine.a scicore/libscicore.a gfx/libscigraphics.a 
+gfx/resource/libsciresources.a gfx/drivers/libscidrivers.a sound/libscisound.a 
+@X_LIBS@ -lX11 @ac_ggi_libraries@ @ac_readline@ @ac_curses_libraries@ 
+@ac_png_libraries@ -lm
 bin_PROGRAMS = sciv
 sciv_SOURCES = config.l main.c
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/demo/Makefile.am freesci/src/demo/Makefile.am
--- freesci-orig/src/demo/Makefile.am   Sun Mar 11 11:47:03 2001
+++ freesci/src/demo/Makefile.am        Sun Mar 11 12:16:34 2001
@@ -1,4 +1,4 @@
 INCLUDES = -I$(top_srcdir)/src/include @ac_glib_includes@ @ac_ggi_includes@
-LDADD = -lglib -lc -lggi -lgii ../core/libscicore.a ../graphics/libscigraphics.a 
../sound/libscisound.a ../console/libsciconsole.a @ac_ggi_libraries@
+LDADD = --lc @ac_ggi_libraries@ ../core/libscicore.a ../graphics/libscigraphics.a 
+../sound/libscisound.a ../console/libsciconsole.a @ac_ggi_libraries@
 bin_PROGRAMS = demo
 demo_SOURCES = demo.c
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/engine/Makefile.am freesci/src/engine/Makefile.am
--- freesci-orig/src/engine/Makefile.am Sun Mar 11 11:47:03 2001
+++ freesci/src/engine/Makefile.am      Sun Mar 11 11:53:48 2001
@@ -1,4 +1,4 @@
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@
+INCLUDES = -I$(top_srcdir)/src/include
 EXTRA_DIST = cfsml.pl savegame.cfsml
 lib_LIBRARIES = libsciengine.a
 libsciengine_a_SOURCES = savegame.c kernel.c kscripts.c klists.c kfile.c kgraphics.c 
kmath.c kevent.c kstring.c kmenu.c ksound.c vm.c game.c scriptdebug.c heap.c 
simplesaid.c said.y grammar.c
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/gfx/Makefile.am freesci/src/gfx/Makefile.am
--- freesci-orig/src/gfx/Makefile.am    Sun Mar 11 11:47:04 2001
+++ freesci/src/gfx/Makefile.am Sun Mar 11 12:07:08 2001
@@ -1,5 +1,5 @@
 SUBDIRS = resource drivers
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@
+INCLUDES = -I$(top_srcdir)/src/include
 EXTRA_DIST = gfx_line.c gfx_crossblit.c gfx_pixmap_scale.c
 
 noinst_LIBRARIES = libscigraphics.a
@@ -8,7 +8,7 @@
 libscigraphics_a_SOURCES = font.c  gfx_resource.c  gfx_support.c  gfx_tools.c  
operations.c  resmgr.c  sbtree.c  widgets.c menubar.c sci_widgets.c
 
 check_PROGRAMS = gfx_test
-gfx_test_LDADD = libscigraphics.a drivers/libscidrivers.a @x_libraries@ 
@ac_glx_libraries@ @ac_ggi_libraries@ @ac_readline@ @ac_curses_libraries@ 
@ac_png_libraries@ -lm
+gfx_test_LDADD = libscigraphics.a drivers/libscidrivers.a @X_LIBS@ @ac_glx_libraries@ 
+@ac_ggi_libraries@ @ac_readline@ @ac_curses_libraries@ @ac_png_libraries@ -lm
 gfx_test_SOURCES = gfx_test.c
 
 alpha_mvi_crossblit_32.o:
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/gfx/drivers/Makefile.am 
freesci/src/gfx/drivers/Makefile.am
--- freesci-orig/src/gfx/drivers/Makefile.am    Sun Mar 11 11:47:04 2001
+++ freesci/src/gfx/drivers/Makefile.am Sun Mar 11 12:04:01 2001
@@ -1,4 +1,4 @@
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@
+INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@ @X_CFLAGS@
 LDADD =  $(LDADD_ALL)
 
 noinst_LIBRARIES = libscidrivers.a
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/gfx/drivers/gfx_drivers.c 
freesci/src/gfx/drivers/gfx_drivers.c
--- freesci-orig/src/gfx/drivers/gfx_drivers.c  Sun Mar 11 11:47:04 2001
+++ freesci/src/gfx/drivers/gfx_drivers.c       Sun Mar 11 12:05:57 2001
@@ -35,7 +35,7 @@
 #endif
 
 
-#ifdef HAVE_X11_XLIB_H
+#ifndef X_DISPLAY_MISSING
 extern gfx_driver_t gfx_driver_xlib;
 #endif
 
@@ -49,7 +49,7 @@
 #ifdef HAVE_LIBGGI
   &gfx_driver_ggi,
 #endif
-#ifdef HAVE_X11_XLIB_H
+#ifndef X_DISPLAY_MISSING
   &gfx_driver_xlib,
 #endif
 #ifdef HAVE_DDRAW
@@ -64,7 +64,7 @@
        int retval = 0;
 
        if (!name) { /* Find default driver */
-#ifdef HAVE_X11_XLIB_H
+#ifndef X_DISPLAY_MISSING
                if (getenv("DISPLAY"))
                        return &gfx_driver_xlib;
 #endif
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/gfx/drivers/xlib_driver.c 
freesci/src/gfx/drivers/xlib_driver.c
--- freesci-orig/src/gfx/drivers/xlib_driver.c  Sun Mar 11 11:47:04 2001
+++ freesci/src/gfx/drivers/xlib_driver.c       Sun Mar 11 12:04:44 2001
@@ -26,7 +26,7 @@
 ***************************************************************************/
 
 #include <gfx_driver.h>
-#ifdef HAVE_X11_XLIB_H
+#ifndef X_DISPLAY_MISSING
 #include <gfx_tools.h>
 
 #include <X11/Xlib.h>
@@ -956,4 +956,4 @@
        NULL
 };
 
-#endif /* HAVE_XLIB */
+#endif /* X_DISPLAY_MISSING */
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/gfx/resource/Makefile.am 
freesci/src/gfx/resource/Makefile.am
--- freesci-orig/src/gfx/resource/Makefile.am   Sun Mar 11 11:47:04 2001
+++ freesci/src/gfx/resource/Makefile.am        Sun Mar 11 12:15:36 2001
@@ -1,5 +1,5 @@
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@
-LDADD = -lglib  $(LDADD_ALL)
+INCLUDES = -I$(top_srcdir)/src/include
+LDADD = $(LDADD_ALL)
 
 noinst_LIBRARIES = libsciresources.a
 libsciresources_a_SOURCES = sci_font.c sci_resmgr.c sci_pic_0.c sci_view_0.c 
sci_cursor_0.c sci_pal_1.c sci_view_1.c
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/graphics/Makefile.am 
freesci/src/graphics/Makefile.am
--- freesci-orig/src/graphics/Makefile.am       Sun Mar 11 11:47:04 2001
+++ freesci/src/graphics/Makefile.am    Sun Mar 11 11:50:06 2001
@@ -1,4 +1,4 @@
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@
+INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@ @X_CFLAGS@
 EXTRA_DIST = graphics_ddraw.c graphics_dgfx.c
 LDADD = $(LDADD_ALL)
 lib_LIBRARIES = libscigraphics.a
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/sound/Makefile.am freesci/src/sound/Makefile.am
--- freesci-orig/src/sound/Makefile.am  Sun Mar 11 11:47:05 2001
+++ freesci/src/sound/Makefile.am       Sun Mar 11 12:08:56 2001
@@ -1,8 +1,8 @@
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@
+INCLUDES = -I$(top_srcdir)/src/include
 LDADD = -lc
 EXTRA_DIST = sfx_save.cfsml soundserver_dos.c
 noinst_LIBRARIES = libscisound.a
 libscisound_a_SOURCES = oldmidi.c sound.c sfx_save.c soundserver_null.c midi_mt32.c 
midiout.c midiout_unixraw.c midiout_alsaraw.c midi_device.c midi_mt32gm.c
 
 sfx_save.c: sfx_save.cfsml
-       cat sfx_save.cfsml | ../engine/cfsml.pl > sfx_save.c
\ No newline at end of file
+       cat sfx_save.cfsml | ../engine/cfsml.pl > sfx_save.c
diff -Naur --exclude=cfsml.pl --exclude=configure --exclude=config.h.in 
--exclude=sfx_save.c freesci-orig/src/tools/Makefile.am freesci/src/tools/Makefile.am
--- freesci-orig/src/tools/Makefile.am  Sun Mar 11 11:47:05 2001
+++ freesci/src/tools/Makefile.am       Sun Mar 11 12:10:14 2001
@@ -1,9 +1,9 @@
-INCLUDES = -I$(top_srcdir)/src/include @ac_ggi_includes@ @ac_png_includes@
+INCLUDES = -I$(top_srcdir)/src/include @ac_png_includes@
 LDADD = ../scicore/libscicore.a -lc
 EXTRA_DIST = sciunpack.h
 bin_PROGRAMS = sciunpack sciconsole scidisasm
 sciunpack_SOURCES = sciunpack.c listwords.c scriptdump.c vocabdump.c
-sciunpack_LDADD = ../sound/libscisound.a ../scicore/libscicore.a @ac_glx_libraries@ 
@ac_glx_libraries@ @ac_png_libraries@ @ac_ggi_libraries@
+sciunpack_LDADD = ../sound/libscisound.a ../scicore/libscicore.a @ac_glx_libraries@ 
+@ac_glx_libraries@ @ac_png_libraries@
 scidisasm_SOURCES = scidisasm.c
 sciconsole_LDADD = ../sound/libscisound.a ../scicore/libscicore.a 
@ac_curses_libraries@ -lc @ac_readline@ @ac_curses_libraries@ -lc -lm
 sciconsole_SOURCES = sciconsole.c

Reply via email to