comparison configure.in @ 106085:cd4cbab8bb21

Handle system default font and changing font parameters. * xterm.h (struct x_display_info): Add atoms and Window for xsettings. * xterm.c (handle_one_xevent): Call xft_settings_event for ClientMessage, PropertyNotify and DestroyNotify. (x_term_init): If we have XFT, get DPI from Xft.dpi. Call xsettings_initialize. * xftfont.c (xftfont_fix_match): New function. (xftfont_open): Call XftDefaultSubstitute before XftFontMatch. Call xftfont_fix_match after XftFontMatch. * xfont.c (xfont_driver): Initialize all members. * xfns.c (x_default_font_parameter): Try font from Ffont_get_system_font. Do not get font from x_default_parameter if we got one from Ffont_get_system_font. (Fx_select_font): Get the defaut font name from :name of FRAME_FONT (f). * w32font.c (w32font_driver): Initialize all members. * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new. * lisp.h: Declare syms_of_xsettings. * keyboard.c (kbd_buffer_get_event, make_lispy_event): Handle CONFIG_CHANGED_EVENT. * ftfont.c (ftfont_filter_properties): New function. * frame.c (x_set_font): Remove unused variable lval. * font.h (struct font_driver): filter_properties is new. * font.c (font_put_extra): Don't return if val is nil, it means boolean option is off. (font_parse_fcname): Collect all extra properties in extra_props and call filter_properties for all drivers with extra_props and font as parameter. (font_open_entity): Do not use cache, it does not pick up new fontconfig settings like hinting. (font_load_for_lface): If spec had a name in it, store it in entity. * emacs.c (main): Call syms_of_xsettings * config.in: HAVE_GCONF is new. * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF. xsettings.o is new. * menu-bar.el: Put "Use system font" in Option-menu. * loadup.el: If feature system-font-setting or font-render-setting is there, load font-setting. * Makefile.in (ELCFILES): font-settings.el is new. * font-setting.el: New file. * NEWS: Mention dynamic font changes (font-use-system-font). * configure.in: New option: --with(out)-gconf. Set HAVE_GCONF if we find gconf.
author Jan Djärv <jan.h.d@swipnet.se>
date Tue, 17 Nov 2009 08:21:23 +0000
parents e6af95c4c862
children 734dbd0c890e
comparison
equal deleted inserted replaced
106084:f03048d6d95a 106085:cd4cbab8bb21
142 OPTION_DEFAULT_ON([xim],[don't use X11 XIM]) 142 OPTION_DEFAULT_ON([xim],[don't use X11 XIM])
143 OPTION_DEFAULT_OFF([ns],[use nextstep (Cocoa or GNUstep) windowing system]) 143 OPTION_DEFAULT_OFF([ns],[use nextstep (Cocoa or GNUstep) windowing system])
144 144
145 OPTION_DEFAULT_ON([gpm],[don't use -lgpm for mouse support on a GNU/Linux console]) 145 OPTION_DEFAULT_ON([gpm],[don't use -lgpm for mouse support on a GNU/Linux console])
146 OPTION_DEFAULT_ON([dbus],[don't compile with D-Bus support]) 146 OPTION_DEFAULT_ON([dbus],[don't compile with D-Bus support])
147 OPTION_DEFAULT_ON([gconf],[don't compile with GConf support])
147 148
148 ## For the times when you want to build Emacs but don't have 149 ## For the times when you want to build Emacs but don't have
149 ## a suitable makeinfo, and can live without the manuals. 150 ## a suitable makeinfo, and can live without the manuals.
150 dnl http://lists.gnu.org/archive/html/emacs-devel/2008-04/msg01844.html 151 dnl http://lists.gnu.org/archive/html/emacs-devel/2008-04/msg01844.html
151 OPTION_DEFAULT_ON([makeinfo],[don't require makeinfo for building manuals]) 152 OPTION_DEFAULT_ON([makeinfo],[don't require makeinfo for building manuals])
1737 AC_DEFINE(HAVE_DBUS, 1, [Define to 1 if using D-Bus.]) 1738 AC_DEFINE(HAVE_DBUS, 1, [Define to 1 if using D-Bus.])
1738 AC_CHECK_FUNCS([dbus_watch_get_unix_fd]) 1739 AC_CHECK_FUNCS([dbus_watch_get_unix_fd])
1739 fi 1740 fi
1740 fi 1741 fi
1741 1742
1743 dnl GConf has been tested under GNU/Linux only.
1744 dnl The version is really arbitrary, it is about the same age as Gtk+ 2.6.
1745 HAVE_GCONF=no
1746 if test "${with_gconf}" = "yes"; then
1747 PKG_CHECK_MODULES(GCONF, gconf-2.0 >= 2.13, HAVE_GCONF=yes, HAVE_GCONF=no)
1748 if test "$HAVE_GCONF" = yes; then
1749 AC_DEFINE(HAVE_GCONF, 1, [Define to 1 if using GConf.])
1750 fi
1751 fi
1752
1742 dnl Do not put whitespace before the #include statements below. 1753 dnl Do not put whitespace before the #include statements below.
1743 dnl Older compilers (eg sunos4 cc) choke on it. 1754 dnl Older compilers (eg sunos4 cc) choke on it.
1744 HAVE_XAW3D=no 1755 HAVE_XAW3D=no
1745 if test x"${USE_X_TOOLKIT}" = xmaybe || test x"${USE_X_TOOLKIT}" = xLUCID; then 1756 if test x"${USE_X_TOOLKIT}" = xmaybe || test x"${USE_X_TOOLKIT}" = xLUCID; then
1746 if test "$with_xaw3d" != no; then 1757 if test "$with_xaw3d" != no; then
2983 echo " Does Emacs use a gif library? ${HAVE_GIF} $ac_gif_lib_name" 2994 echo " Does Emacs use a gif library? ${HAVE_GIF} $ac_gif_lib_name"
2984 echo " Does Emacs use -lpng? ${HAVE_PNG}" 2995 echo " Does Emacs use -lpng? ${HAVE_PNG}"
2985 echo " Does Emacs use -lrsvg-2? ${HAVE_RSVG}" 2996 echo " Does Emacs use -lrsvg-2? ${HAVE_RSVG}"
2986 echo " Does Emacs use -lgpm? ${HAVE_GPM}" 2997 echo " Does Emacs use -lgpm? ${HAVE_GPM}"
2987 echo " Does Emacs use -ldbus? ${HAVE_DBUS}" 2998 echo " Does Emacs use -ldbus? ${HAVE_DBUS}"
2999 echo " Does Emacs use -lgconf? ${HAVE_GCONF}"
2988 3000
2989 echo " Does Emacs use -lfreetype? ${HAVE_FREETYPE}" 3001 echo " Does Emacs use -lfreetype? ${HAVE_FREETYPE}"
2990 echo " Does Emacs use -lm17n-flt? ${HAVE_M17N_FLT}" 3002 echo " Does Emacs use -lm17n-flt? ${HAVE_M17N_FLT}"
2991 echo " Does Emacs use -lotf? ${HAVE_LIBOTF}" 3003 echo " Does Emacs use -lotf? ${HAVE_LIBOTF}"
2992 echo " Does Emacs use -lxft? ${HAVE_XFT}" 3004 echo " Does Emacs use -lxft? ${HAVE_XFT}"