Changes to get X11 module to compile on macos.
authorChris Hanson <org/chris-hanson/cph>
Fri, 14 Sep 2018 18:13:53 +0000 (14:13 -0400)
committerChris Hanson <org/chris-hanson/cph>
Fri, 14 Sep 2018 18:13:53 +0000 (14:13 -0400)
src/x11/Makefile.am
src/x11/configure.ac
src/x11/x11.h
src/x11/x11base.c
src/x11/x11graph.c
src/x11/x11term.c

index c55dbafb63168091bb36f75d1f9db64bb8e995a1..21824377581bb94ca7f0bfce2a63170582f0934b 100644 (file)
@@ -45,10 +45,9 @@ scmlib_sub_DATA += make.scm @MIT_SCHEME_PKD@
 #AM_MAKEINFOHTMLFLAGS = --no-split
 
 AM_CPPFLAGS = -I@MIT_SCHEME_INCLUDEDIR@
-AM_CFLAGS = `pkg-config --cflags x11`
-AM_CFLAGS += @MIT_CFLAGS@
+AM_CFLAGS = @MIT_CFLAGS@
 
-LIBS = `pkg-config --libs x11`
+LIBS = @MIT_LIBS@
 
 x11_shim_la_LIBADD = x11base.lo x11color.lo x11graph.lo x11term.lo
 c_sources = x11-shim.h x11.h x11base.c x11color.c x11graph.c x11term.c
index 3d931ac01edf57cf6dbd39133c383838b9282f47..6260f43efcb17a4b6a10a9365c5fe78577adc31e 100644 (file)
@@ -41,9 +41,12 @@ AC_PROG_CC
 AC_PROG_CPP
 AC_PROG_INSTALL
 
+MIT_CFLAGS=
+MIT_LIBS=
+
 if test ${GCC} = yes; then
 
-    MIT_CFLAGS="-Wall -Wundef -Wpointer-arith -Winline"
+    MIT_CFLAGS="${MIT_CFLAGS} -Wall -Wundef -Wpointer-arith -Winline"
     MIT_CFLAGS="${MIT_CFLAGS} -Wstrict-prototypes -Wnested-externs"
     MIT_CFLAGS="${MIT_CFLAGS} -Wredundant-decls"
 
@@ -72,10 +75,26 @@ if test ${GCC} = yes; then
        [AC_MSG_RESULT([no])])
 fi
 
+AC_PATH_X
 AC_CHECK_PROG([PKG_CONFIG], [pkg-config], [yes])
 
-if ! pkg-config --exists x11 2>/dev/null; then
-    AC_MSG_ERROR([X11 not found.])
+AC_CHECK_HEADERS([malloc.h])
+
+
+dnl Add support for X if present.
+if test "${no_x}" != yes; then
+    if test "x${x_includes}" != x; then
+        FOO=-I`echo ${x_includes} | sed -e "s/:/ -I/g"`
+        MIT_CFLAGS="${MIT_CFLAGS} ${FOO}"
+    elif pkg-config --exists x11 2>/dev/null; then
+        MIT_CFLAGS="${MIT_CFLAGS} `pkg-config --cflags x11`"
+    fi
+    if test "x${x_libraries}" != x; then
+        FOO=-L`echo ${x_libraries} | sed -e "s/:/ -L/g"`
+        MIT_LIBS="${MIT_LIBS} ${FOO}"
+    elif pkg-config --exists x11 2>/dev/null; then
+        MIT_LIBS="${MIT_LIBS} `pkg-config --libs x11`"
+    fi
 fi
 
 MIT_SCHEME_PROJECT=mit-scheme
@@ -116,6 +135,7 @@ MIT_SCHEME_DEPS="${MIT_SCHEME_DEPS}
 ${MIT_SCHEME_PKD}: stamp-scheme"
 
 AC_SUBST([MIT_CFLAGS])
+AC_SUBST([MIT_LIBS])
 AC_SUBST([MIT_SCHEME_PROJECT])
 AC_SUBST([MIT_SCHEME_EXE])
 AC_SUBST([MIT_SCHEME_LIBDIR])
index 43f1620e9d0f6724cbf3fc5bfea174e349f8e47b..9f53be069ea16775c9a0e9977eeb7e9086db096a 100644 (file)
@@ -28,7 +28,16 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 
 typedef unsigned long SCM;
 
-#include <malloc.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <float.h>
+#include <limits.h>
+#include <math.h>
+#include <string.h>
+#ifdef HAVE_MALLOC_H
+#  include <malloc.h>
+#endif
+
 #include <X11/Xlib.h>
 #include <X11/cursorfont.h>
 #include <X11/keysym.h>
index 92e66614519519d1f1231dc0107d30ee581d750b..599ea18f9aa63a53f3436a1f75290d66db5ee029 100644 (file)
@@ -25,10 +25,8 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 
 /* Common X11 support. */
 
-#include <stdlib.h>
-#include <string.h>
-#include <setjmp.h>
 #include "x11.h"
+#include <setjmp.h>
 #include <X11/Xmd.h>
 #include <X11/keysym.h>
 
index ad79a3e61352d36c8b5d64e230a2930a17f023ab..444ae3bab767a534380bbacb678e99c9b378064d 100644 (file)
@@ -26,10 +26,6 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 /* Simple graphics for X11 */
 
 #include "x11.h"
-#include <float.h>
-#include <limits.h>
-#include <math.h>
-#include <string.h>
 \f
 #define RESOURCE_NAME "schemeGraphics"
 #define RESOURCE_CLASS "SchemeGraphics"
index cf37655e956f3e88ce95fe29de68b67580e264c4..7430edff25f415cbb9943d152ad0c1fe7bb718a1 100644 (file)
@@ -25,7 +25,6 @@ Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 
 /* X11 terminal for Edwin. */
 
-#include <string.h>
 #include "x11.h"
 \f
 struct xterm_extra