From: Christian B. <cs...@gm...> - 2006-09-13 19:17:03
|
I'm having a problem getting the rdesktop configure script to correctly detect a header file when used with Andrew Joyce's dual- monitor patch that he sent to the list earlier in the summer. Although the patch isn't an official part of rdesktop, I'm wondering if the problem is in the configure script. Here's what happens: I download the 1.5.0-rc1 or 1.5.0-final source tarball and unpack it, then apply Andrew's patch and run ./configure && make. The configure does not detect the Xinerama.h header in /usr/lib, and so the make fails. Immediately after the make fails, if I run ./configure && make again, configure detects the Xinerama.h header in /usr/lib and rdesktop builds successfully. Even if the first unsuccessful configure is run multiple times before a make is attempted, the Xinerama.h header is not detected. However, as soon as make is run once, all subsequent configures will correctly detect the Xinerama.h header in /usr/lib. So again, the process is: 1) Unstuff source/apply patch 2) ./configure: Any number of times, /usr/lib/Xinerama.h not detected 3) make: fails 4) ./configure: /usr/lib/Xinerama.h detected 5) make: succeeds Andrew's patch (http://six27.com/files/dual-monitor-fix.patch) makes the following changes to configure.ac: AC_CHECK_HEADER(langinfo.h, AC_DEFINE(HAVE_LANGINFO_H)) +AC_CHECK_LIB(Xinerama, XineramaQueryScreens, AC_DEFINE (HAVE_XINERAMA) LIBS="$LIBS -lXinerama", [], []) AC_CHECK_TOOL(STRIP, strip, :) Between the first unsuccessful configure and the second successful post-make configure, I have diffed both the configure --cache-file output and the resulting Makefiles. The only difference is that in the second successful post-make configure, the --cache-file output adds the line: ac_cv_lib_Xinerama_XineramaQueryScreens=$ {ac_cv_lib_Xinerama_XineramaQueryScreens=yes} ...and the Makefile adds '-DHAVE_XINERAMA=1' to CFLAGS and '- lXinerama' to LDFLAGS. I'm stumped why configure isn't picking up /usr/lib/Xinerama.h the first time around. Can somebody point out what I've done wrong? -- Christian Bell :: cs...@gm... |