OPTION_DEFAULT_ON([gsettings],[don't compile with GSettings support])
OPTION_DEFAULT_ON([selinux],[don't compile with SELinux support])
OPTION_DEFAULT_ON([gnutls],[don't use -lgnutls for SSL/TLS support])
- OPTION_DEFAULT_ON([inotify],[don't compile with inotify (file-watch) support])
+
+ AC_ARG_WITH([file-notification],[AS_HELP_STRING([--with-file-notification=LIB],
+ [use a file notification library (LIB one of: yes, gfile, inotify, w32, no)])],
+ [ case "${withval}" in
+ y | ye | yes ) val=yes ;;
+ n | no ) val=no ;;
+ g | gf | gfi | gfil | gfile ) val=gfile ;;
+ i | in | ino | inot | inoti | inotif | inotify ) val=inotify ;;
+ w | w3 | w32 ) val=w32 ;;
+ * ) AC_MSG_ERROR([`--with-file-notification=$withval' is invalid;
+ this option's value should be `yes', `no', `gfile', `inotify' or `w32'.
+ `yes' is a synonym for `w32' on MS-Windows, and for `gfile' otherwise.])
+ ;;
+ esac
+ with_file_notification=$val
+ ],
+ [with_file_notification=$with_features])
+OPTION_DEFAULT_OFF([xwidgets],[enable use of some gtk widgets it Emacs buffers])
+
## For the times when you want to build Emacs but don't have
## a suitable makeinfo, and can live without the manuals.
dnl http://lists.gnu.org/archive/html/emacs-devel/2008-04/msg01844.html
$(C_SWITCH_MACHINE) $(C_SWITCH_SYSTEM) $(C_SWITCH_X_SITE) \
$(GNUSTEP_CFLAGS) $(CFLAGS_SOUND) $(RSVG_CFLAGS) $(IMAGEMAGICK_CFLAGS) \
$(LIBXML2_CFLAGS) $(DBUS_CFLAGS) $(XRANDR_CFLAGS) $(XINERAMA_CFLAGS) \
+ $(WEBKIT_CFLAGS) $(CLUTTER_CFLAGS) $(GIR_CFLAGS) \
$(SETTINGS_CFLAGS) $(FREETYPE_CFLAGS) $(FONTCONFIG_CFLAGS) \
$(LIBOTF_CFLAGS) $(M17N_FLT_CFLAGS) $(DEPFLAGS) \
- $(LIBGNUTLS_CFLAGS) \
+ $(LIBGNUTLS_CFLAGS) $(GFILENOTIFY_CFLAGS) \
$(WARN_CFLAGS) $(WERROR_CFLAGS) $(CFLAGS)
ALL_OBJC_CFLAGS=$(ALL_CFLAGS) $(GNU_OBJC_CFLAGS)
syntax.o $(UNEXEC_OBJ) bytecode.o \
process.o gnutls.o callproc.o \
region-cache.o sound.o atimer.o \
- doprnt.o intervals.o textprop.o composite.o xml.o inotify.o \
+ doprnt.o intervals.o textprop.o composite.o xml.o $(NOTIFY_OBJ) \
+ xwidget.o \
profiler.o \
$(MSDOS_OBJ) $(MSDOS_X_OBJ) $(NS_OBJ) $(CYGWIN_OBJ) $(FONT_OBJ) \
- $(W32_OBJ) $(WINDOW_SYSTEM_OBJ)
+ $(W32_OBJ) $(WINDOW_SYSTEM_OBJ) $(XGSELOBJ)
obj = $(base_obj) $(NS_OBJC_OBJ)
+xwidget.o: xwidget.c xwidget.h
## Object files used on some machine or other.
## These go in the DOC file on all machines in case they are needed.
## Some of them have no DOC entries, but it does no harm to have them
#ifdef HAVE_DBUS
static Lisp_Object Qdbus_event;
#endif
- #ifdef HAVE_INOTIFY
- static Lisp_Object Qfile_inotify;
- #endif /* HAVE_INOTIFY */
+#ifdef HAVE_XWIDGETS
+Lisp_Object Qxwidget_event;
+#endif
+ #ifdef USE_FILE_NOTIFY
+ static Lisp_Object Qfile_notify;
+ #endif /* USE_FILE_NOTIFY */
static Lisp_Object Qconfig_changed_event;
/* Lisp_Object Qmouse_movement; - also an event header */
}
#endif /* HAVE_DBUS */
- #ifdef HAVE_INOTIFY
+#ifdef HAVE_XWIDGETS
+ case XWIDGET_EVENT:
+ {
+ printf("cool, an xwidget event arrived in make_lispy_event!\n");
+ return Fcons (Qxwidget_event,event->arg);
+ }
+#endif /* HAVE_XWIDGETS */
+
+
+ #if defined HAVE_GFILENOTIFY || defined HAVE_INOTIFY
case FILE_NOTIFY_EVENT:
{
- return Fcons (Qfile_inotify, event->arg);
+ return Fcons (Qfile_notify, event->arg);
}
- #endif /* HAVE_INOTIFY */
+ #endif /* defined HAVE_GFILENOTIFY || defined HAVE_INOTIFY */
case CONFIG_CHANGED_EVENT:
return Fcons (Qconfig_changed_event,
DEFSYM (Qdbus_event, "dbus-event");
#endif
- #ifdef HAVE_INOTIFY
- DEFSYM (Qfile_inotify, "file-inotify");
- #endif /* HAVE_INOTIFY */
+#ifdef HAVE_XWIDGETS
+ Qxwidget_event = intern ("xwidget-event");
+ staticpro (&Qxwidget_event);
+#endif /* HAVE_XWIDGETS */
+ #ifdef USE_FILE_NOTIFY
+ DEFSYM (Qfile_notify, "file-notify");
+ #endif /* USE_FILE_NOTIFY */
DEFSYM (QCenable, ":enable");
DEFSYM (QCvisible, ":visible");
/* Non-key system events (e.g. application menu events) */
, NS_NONKEY_EVENT
#endif
-
+#ifdef HAVE_XWIDGETS
+ /* events generated by xwidgets*/
+ , XWIDGET_EVENT
+#endif
- #if defined (HAVE_INOTIFY) || defined (HAVE_NTGUI)
+ #ifdef USE_FILE_NOTIFY
/* File or directory was changed. */
, FILE_NOTIFY_EVENT
#endif