# HG changeset patch # User Glenn Morris # Date 1272592217 25200 # Node ID c9d0b6bfe74e9f7a55c2c481d23f9733b5999232 # Parent 06a18c2b32724fab10bb606ea0bebce04fb5d80b Replace some xmenu cpp with autoconf. * configure.in (TOOLKIT_LIBW) [HAVE_GTK]: Set to $GTK_LIBS. (OLDXMENU, LIBXMENU): New output variables. * src/Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]: Set with configure, not cpp. (LIBW): Remove, replace with $TOOLKIT_LIBW. diff -r 06a18c2b3272 -r c9d0b6bfe74e ChangeLog --- a/ChangeLog Thu Apr 29 18:36:42 2010 -0700 +++ b/ChangeLog Thu Apr 29 18:50:17 2010 -0700 @@ -1,5 +1,8 @@ 2010-04-30 Glenn Morris + * configure.in (TOOLKIT_LIBW) [HAVE_GTK]: Set to $GTK_LIBS. + (OLDXMENU, LIBXMENU): New output variables. + * configure.in (OTHER_OBJ): New output variable. 2010-04-28 Glenn Morris diff -r 06a18c2b3272 -r c9d0b6bfe74e configure.in --- a/configure.in Thu Apr 29 18:36:42 2010 -0700 +++ b/configure.in Thu Apr 29 18:50:17 2010 -0700 @@ -2900,18 +2900,41 @@ fi AC_SUBST(WIDGET_OBJ) +TOOLKIT_LIBW= case "$USE_X_TOOLKIT" in MOTIF) TOOLKIT_LIBW="$MOTIF_LIBW" ;; LUCID) TOOLKIT_LIBW="$LUCID_LIBW" ;; - *) TOOLKIT_LIBW= ;; + none) test "x$HAVE_GTK" = "xyes" && TOOLKIT_LIBW="$GTK_LIBS" ;; esac AC_SUBST(TOOLKIT_LIBW) +## The X Menu stuff is present in the X10 distribution, but missing +## from X11. If we have X10, just use the installed library; +## otherwise, use our own copy. if test "${HAVE_X11}" = "yes" ; then AC_DEFINE(HAVE_X11, 1, [Define to 1 if you want to use version 11 of X windows. Otherwise, Emacs expects to use version 10.]) + + if test "$USE_X_TOOLKIT" = "none"; then + OLDXMENU="\${oldXMenudir}libXMenu11.a" + else + OLDXMENU="\${lwlibdir}liblw.a" + fi + LIBXMENU="\$(OLDXMENU)" +else + OLDXMENU= + LIBXMENU="-lXMenu" fi + +if test "$HAVE_GTK" = "yes"; then + OLDXMENU= + LIBXMENU= +fi + +AC_SUBST(OLDXMENU) +AC_SUBST(LIBXMENU) + if test "${HAVE_MENUS}" = "yes" ; then AC_DEFINE(HAVE_MENUS, 1, [Define to 1 if you have mouse menus. @@ -2935,7 +2958,7 @@ ## Cygwin differs because of its unexec(). OTHER_OBJ="$OTHER_OBJ lastfile.o" else -CYGWIN_OBJ= + CYGWIN_OBJ= OTHER_OBJ="lastfile.o $OTHER_OBJ" fi AC_SUBST(CYGWIN_OBJ) diff -r 06a18c2b3272 -r c9d0b6bfe74e src/ChangeLog --- a/src/ChangeLog Thu Apr 29 18:36:42 2010 -0700 +++ b/src/ChangeLog Thu Apr 29 18:50:17 2010 -0700 @@ -1,5 +1,9 @@ 2010-04-30 Glenn Morris + * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]: + Set with configure, not cpp. + (LIBW): Remove, replace with $TOOLKIT_LIBW. + * Makefile.in (mallocobj): Remove. (otherobj): Simplify using @OTHER_OBJ@. diff -r 06a18c2b3272 -r c9d0b6bfe74e src/Makefile.in --- a/src/Makefile.in Thu Apr 29 18:36:42 2010 -0700 +++ b/src/Makefile.in Thu Apr 29 18:50:17 2010 -0700 @@ -254,43 +254,21 @@ $(CC) -c $(CPPFLAGS) $(ALL_OBJC_CFLAGS) $< #ifdef HAVE_X_WINDOWS + +/* This test needs to say in cpp for the time being, since s/ms-w32.h and + s/msdos.h define HAVE_MENUS, possibly overriding configure. */ #ifdef HAVE_MENUS - -/* The X Menu stuff is present in the X10 distribution, but missing - from X11. If we have X10, just use the installed library; - otherwise, use our own copy. */ -#ifdef HAVE_X11 -#ifdef USE_X_TOOLKIT -OLDXMENU=${lwlibdir}liblw.a -LIBXMENU= $(OLDXMENU) -#else /* not USE_X_TOOLKIT */ -OLDXMENU= ${oldXMenudir}libXMenu11.a -LIBXMENU= $(OLDXMENU) -#endif /* not USE_X_TOOLKIT */ -#else /* not HAVE_X11 */ -LIBXMENU= -lXMenu -#endif /* not HAVE_X11 */ - +OLDXMENU=@OLDXMENU@ +LIBXMENU=@LIBXMENU@ #else /* not HAVE_MENUS */ - -/* Otherwise, do not worry about the menu library at all. */ +OLDXMENU= LIBXMENU= #endif /* not HAVE_MENUS */ #ifdef USE_X_TOOLKIT -LIBW=$(TOOLKIT_LIBW) - -LIBXT= $(LIBW) $(LIBXMU) -lXt $(LIBXTR6) -lXext - +LIBXT=$(TOOLKIT_LIBW) $(LIBXMU) -lXt $(LIBXTR6) -lXext #else /* not USE_X_TOOLKIT */ - -#ifdef USE_GTK -LIBW=@GTK_LIBS@ -OLDXMENU= -LIBXMENU= -#endif /* USE_GTK */ - -LIBXT=$(LIBW) $(LIBXSM) +LIBXT=$(TOOLKIT_LIBW) $(LIBXSM) #endif /* not USE_X_TOOLKIT */ #ifdef HAVE_X11