-2011-01-27 Chong Yidong <cyd@stupidchicken.com>
++2011-01-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * configure.in: Test existence of xaw3d library, not just the
+ header (Bug#7642).
+
-2011-01-23 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
+2011-01-31 Eli Zaretskii <eliz@gnu.org>
+
+ * lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/strftime.$(O) and
+ $(BLD)/time_r.$(O).
+ ($(BLD)/dtoastr.$(O)): Depend on $(EMACS_ROOT)/src/s/ms-w32.h and
+ $(EMACS_ROOT)/src/m/intel386.h.
- ($(BLD)/strftime.$(O)):
++ ($(BLD)/strftime.$(O)):
+ ($(BLD)/time_r.$(O)): Define prerequisites.
+
+2011-01-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ src/emacs.c now gets version number from configure.in
+ * configure.in (version): Set this from $PACKAGE_VERSION,
+ which is set from AC_INIT, rather than scouting through src/emacs.c.
+ * configure: Regenerate.
+ * make-dist (version): Get it from configure.in, not src/emacs.c.
+
+2011-01-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ strftime: import from gnulib
+ * Makefile.in (GNULIB_MODULES): Add strftime.
+ * configure.in (AC_FUNC_STRFTIME, my_strftime): Remove; no longer
+ needed.
+ * aclocal.m4, configure, lib/Makefile.in, lib/gnulib.mk, m4/gl-comp.m4:
+ Regenerate.
+ * lib/strftime.c, lib/strftime.h, lib/stdbool.in.h: New files,
+ imported from gnulib.
+ * m4/strftime.m4, m4/stdbool.m4, m4/tm_gmtoff.m4: Likewise.
+ This incorporates many changes from gnulib, including simpler
+ handling of multibyte formats, porting to mingw32 and other
+ platforms, and support for higher-resolution time stamps.
+ Emacs does not yet use the higher-resolution interface.
+
+2011-01-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ gnulib: import mktime and move-if-change fixes from gnulib
+
+ * configure: Regenerate from the following.
+
+ 2011-01-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ mktime: clarify long_int width checking
+ * lib/mktime.c (long_int_is_wide_enough): Move this assertion to
+ the top level, to make it clearer that the assumption about
+ long_int width is being checked. See
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00554.html>.
+
+ 2011-01-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ TYPE_MAXIMUM: avoid theoretically undefined behavior
+ * lib/intprops.h (TYPE_MINIMUM, TYPE_MAXIMUM): Do not shift a
+ negative number, which the C Standard says has undefined behavior.
+ In practice this is not a problem, but might as well do it by the book.
+ Reported by Rich Felker and Eric Blake; see
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00493.html>.
+ * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
+ * lib/mktime.c (TYPE_MAXIMUM): Redo slightly to match the others.
+
+ mktime: #undef mktime before #defining it
+ * lib/mktime.c (mktime) [DEBUG]: #undef mktime before #defining it.
+
+ mktime: systematically normalize tm_isdst comparisons
+ * lib/mktime.c (isdst_differ): New function.
+ (__mktime_internal): Use it systematically for all isdst comparisons.
+ This completes the fix for libc BZ #6723, and removes the need for
+ normalizing tm_isdst. See
+ <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>
+ (not_equal_tm) [DEBUG]: Use isdst_differ here, too.
+
+ mktime: fix some integer overflow issues and sidestep the rest
+
+ This was prompted by a bug report by Benjamin Lindner for MinGW
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00472.html>.
+ His bug is due to signed integer overflow (0 - INT_MIN), and I
+ I scanned through mktime.c looking for other integer overflow
+ problems, fixing all the bugs I found.
+
+ Although the C Standard says the resulting code is still not safe
+ in the presence of integer overflow, in practice it should be good
+ enough for all real-world two's-complement implementations, except
+ for debugging environments that deliberately trap on integer
+ overflow (e.g., gcc -ftrapv).
+
+ * lib/mktime.c (WRAPV): New macro.
+ (SHR): Also check that long_int and time_t shift right in the
+ usual way, before using the fast-but-unportable method.
+ (TYPE_ONES_COMPLEMENT, TYPE_SIGNED_MAGNITUDE): Remove, no longer
+ used. The code already assumed two's complement, so there's
+ no need to test for alternatives. All uses removed.
+ (TYPE_MAXIMUM): Don't rely here on overflow behavior not defined by
+ the C standard. Problem reported by Rich Felker in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00488.html>.
+ (twos_complement_arithmetic): Also check long_int and time_t.
+ (time_t_avg, time_t_add_ok, time_t_int_add_ok): New functions.
+ (guess_time_tm, ranged_convert, __mktime_internal): Use them.
+ (__mktime_internal): Avoid integer overflow with unary subtraction
+ in two instances where -1 - X is an adequate replacement for -X,
+ since the calculations are approximate.
+
+ 2011-01-29 Eric Blake <eblake@redhat.com>
+
+ mktime: avoid infinite loop
+ * m4/mktime.m4 (AC_FUNC_MKTIME): Avoid overflow on possibly-signed
+ type; behavior is still undefined but portable to all known targets.
+ Reported by Rich Felker.
+
+ 2011-01-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ mktime: avoid problems on NetBSD 5 / i386
+ * lib/mktime.c (long_int): New type. This works around a problem
+ on NetBSD 5 / i386, where 'long int' and 'int' are both 32 bits
+ but time_t is 64 bits, and where I expect the existing code is
+ wrong in some cases.
+ (leapyear, ydhms_diff, guess_time_tm, __mktime_internal): Use it.
+ (ydhms_diff): Bring back the compile-time check for wide-enough
+ year and yday.
+
+ mktime: fix misspelling in comment
+ * lib/mktime.c (__mktime_internal): Fix misspelling in comment.
+ This merges all recent glibc changes of importance.
+
+ 2011-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ move-if-change: cope with concurrent mv of identical file.
+ * move-if-change (CMPPROG): Accept environment
+ variable as an override for `cmp'.
+ (usage): Document CMPPROG.
+ Adjust comparison to drop stdout. Cope with failure of mv if
+ the target file exists and is identical to the source, for
+ parallel builds.
+ Report from H.J. Lu against binutils in PR binutils/12283.
+
+2011-01-29 Eli Zaretskii <eliz@gnu.org>
+
+ * lib/makefile.w32-in:
+ * lib/getopt_.h: New files.
+
+2011-01-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ improve fix for MS-DOS file name clash
+ * Makefile.in (DOS_gnulib_comp.m4): Renamed from DOS-gnulib-comp.m4,
+ for portability to POSIX make. Reported by Bruno Haible.
+ (sync-from-gnulib): Copy gl-comp.m4 (if present) back to
+ gnulib-comp.m4 before running gnulib-tool, to prevent old gnulib
+ files from accumulating as garbage. Also reported by Bruno Haible.
+
+2011-01-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ fix two m4/gnulib-*.m4 file names that clashed under MS-DOS
+ * Makefile.in (DOS-gnulib-comp.m4): New macro.
+ (sync-from-gnulib): Rename m4/gnulib-comp.m4 to m4/gl-comp.m4 to avoid
+ problems with MS-DOS 8+3 file name restrictions.
+ Remove m4/gnulib-cache.m4, as we can live without it. If we kept
+ it, it would also cause problems when extracting Emacs distribution
+ tarballs on MS-DOS hosts.
+ (ACLOCAL_INPUTS): Adjust to file renaming.
+ * aclocal.m4, configure, lib/Makefile.in, src/config.in: Regenerate.
+ * config.guess, config.sub: Sync from gnulib.
+ * m4/gnulib-cache.m4: Remove from repository.
+ * m4/gl-comp.m4: Rename from m4/gnulib-comp.m4.
+
+2011-01-25 Glenn Morris <rgm@gnu.org>
+
+ * README: Add a note about ranges in copyright years.
+
+ * configure.in: Set CANNOT_DUMP on ia64 hpux (port from emacs-23).
+
+2011-01-25 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
* configure.in: Add HP-UX on IA64 (Bug#6811).
int
main ()
{
- char *data, *data2, *data3;
- const char *cdata2;
- int i, pagesize;
- int fd, fd2;
+return lgetfilecon ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_selinux_lgetfilecon=yes
+else
+ ac_cv_lib_selinux_lgetfilecon=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_selinux_lgetfilecon" >&5
+$as_echo "$ac_cv_lib_selinux_lgetfilecon" >&6; }
+if test "x$ac_cv_lib_selinux_lgetfilecon" = xyes; then :
+ HAVE_LIBSELINUX=yes
+else
+ HAVE_LIBSELINUX=no
+fi
- pagesize = getpagesize ();
+ if test "$HAVE_LIBSELINUX" = yes; then
- /* First, make a file with some known garbage in it. */
- data = (char *) malloc (pagesize);
- if (!data)
- return 1;
- for (i = 0; i < pagesize; ++i)
- *(data + i) = rand ();
- umask (0);
- fd = creat ("conftest.mmap", 0600);
- if (fd < 0)
- return 2;
- if (write (fd, data, pagesize) != pagesize)
- return 3;
- close (fd);
+$as_echo "#define HAVE_LIBSELINUX 1" >>confdefs.h
- /* Next, check that the tail of a page is zero-filled. File must have
- non-zero length, otherwise we risk SIGBUS for entire page. */
- fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600);
- if (fd2 < 0)
- return 4;
- cdata2 = "";
- if (write (fd2, cdata2, 1) != 1)
- return 5;
- data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L);
- if (data2 == MAP_FAILED)
- return 6;
- for (i = 0; i < pagesize; ++i)
- if (*(data2 + i))
- return 7;
- close (fd2);
- if (munmap (data2, pagesize))
- return 8;
+ LIBSELINUX_LIBS=-lselinux
+ fi
+fi
- /* Next, try to mmap the file at a fixed address which already has
- something else allocated at it. If we can, also make sure that
- we see the same garbage. */
- fd = open ("conftest.mmap", O_RDWR);
- if (fd < 0)
- return 9;
- if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
- MAP_PRIVATE | MAP_FIXED, fd, 0L))
- return 10;
- for (i = 0; i < pagesize; ++i)
- if (*(data + i) != *(data2 + i))
- return 11;
- /* Finally, make sure that changes to the mapped area do not
- percolate back to the file as seen by read(). (This is a bug on
- some variants of i386 svr4.0.) */
- for (i = 0; i < pagesize; ++i)
- *(data2 + i) = *(data2 + i) + 1;
- data3 = (char *) malloc (pagesize);
- if (!data3)
- return 12;
- if (read (fd, data3, pagesize) != pagesize)
- return 13;
- for (i = 0; i < pagesize; ++i)
- if (*(data + i) != *(data3 + i))
- return 14;
- close (fd);
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- ac_cv_func_mmap_fixed_mapped=yes
+HAVE_GNUTLS=no
+if test "${with_gnutls}" = "yes" ; then
+
+ succeeded=no
+
+ # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_PKG_CONFIG+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- ac_cv_func_mmap_fixed_mapped=no
+ case $PKG_CONFIG in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+ test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
+ ;;
+esac
fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
+if test -n "$PKG_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+$as_echo "$PKG_CONFIG" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-$as_echo "#define HAVE_MMAP 1" >>confdefs.h
-fi
-rm -f conftest.mmap conftest.txt
+ if test "$PKG_CONFIG" = "no" ; then
+ HAVE_GNUTLS=no
+ else
+ PKG_CONFIG_MIN_VERSION=0.9.0
+ if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gnutls >= 2.2.4" >&5
+$as_echo_n "checking for gnutls >= 2.2.4... " >&6; }
-if test $use_mmap_for_buffers = yes; then
- REL_ALLOC=no
+ if $PKG_CONFIG --exists "gnutls >= 2.2.4" 2>&5; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ succeeded=yes
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBGNUTLS_CFLAGS" >&5
+$as_echo_n "checking LIBGNUTLS_CFLAGS... " >&6; }
+ LIBGNUTLS_CFLAGS=`$PKG_CONFIG --cflags "gnutls >= 2.2.4"|sed -e 's,///*,/,g'`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBGNUTLS_CFLAGS" >&5
+$as_echo "$LIBGNUTLS_CFLAGS" >&6; }
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBGNUTLS_LIBS" >&5
+$as_echo_n "checking LIBGNUTLS_LIBS... " >&6; }
+ LIBGNUTLS_LIBS=`$PKG_CONFIG --libs "gnutls >= 2.2.4"|sed -e 's,///*,/,g'`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBGNUTLS_LIBS" >&5
+$as_echo "$LIBGNUTLS_LIBS" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ LIBGNUTLS_CFLAGS=""
+ LIBGNUTLS_LIBS=""
+ ## If we have a custom action on failure, don't print errors, but
+ ## do set a variable so people can do so.
+ LIBGNUTLS_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gnutls >= 2.2.4"`
+
+ fi
+
+
+
+ else
+ echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
+ echo "*** See http://www.freedesktop.org/software/pkgconfig"
+ fi
+ fi
+
+ if test $succeeded = yes; then
+ HAVE_GNUTLS=yes
+ else
+ HAVE_GNUTLS=no
+ fi
+
+ if test "${HAVE_GNUTLS}" = "yes"; then
+
+$as_echo "#define HAVE_GNUTLS 1" >>confdefs.h
+
+ fi
fi
-LIBS="$libsrc_libs $LIBS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet" >&5
-$as_echo_n "checking for dnet_ntoa in -ldnet... " >&6; }
-if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then :
+
+HAVE_XAW3D=no
+LUCID_LIBW=
+if test x"${USE_X_TOOLKIT}" = xmaybe || test x"${USE_X_TOOLKIT}" = xLUCID; then
+ if test "$with_xaw3d" != no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xaw3d" >&5
+$as_echo_n "checking for xaw3d... " >&6; }
+ if ${emacs_cv_xaw3d+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <X11/Intrinsic.h>
+#include <X11/Xaw3d/Simple.h>
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XawScrollbarSetThumb in -lXaw3d" >&5
++$as_echo_n "checking for XawScrollbarSetThumb in -lXaw3d... " >&6; }
++if test "${ac_cv_lib_Xaw3d_XawScrollbarSetThumb+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldnet $LIBS"
++LIBS="-lXaw3d $LIBS"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+
+ /* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+ #ifdef __cplusplus
+ extern "C"
+ #endif
-char dnet_ntoa ();
++char XawScrollbarSetThumb ();
+ int
+ main ()
+ {
-return dnet_ntoa ();
++return XawScrollbarSetThumb ();
+ ;
+ return 0;
+ }
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dnet_dnet_ntoa=yes
++ ac_cv_lib_Xaw3d_XawScrollbarSetThumb=yes
+ else
- ac_cv_lib_dnet_dnet_ntoa=no
++ ac_cv_lib_Xaw3d_XawScrollbarSetThumb=no
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+ fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
-$as_echo "$ac_cv_lib_dnet_dnet_ntoa" >&6; }
-if test "x$ac_cv_lib_dnet_dnet_ntoa" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBDNET 1
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xaw3d_XawScrollbarSetThumb" >&5
++$as_echo "$ac_cv_lib_Xaw3d_XawScrollbarSetThumb" >&6; }
++if test "x$ac_cv_lib_Xaw3d_XawScrollbarSetThumb" = x""yes; then :
+ emacs_cv_xaw3d=yes
+else
+ emacs_cv_xaw3d=no
+fi
++
++else
++ emacs_cv_xaw3d=no
++fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+
+ else
+ emacs_cv_xaw3d=no
+ fi
+ if test $emacs_cv_xaw3d = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes; using Lucid toolkit" >&5
+$as_echo "yes; using Lucid toolkit" >&6; }
+ USE_X_TOOLKIT=LUCID
+ HAVE_XAW3D=yes
+ LUCID_LIBW=-lXaw3d
+
+$as_echo "#define HAVE_XAW3D 1" >>confdefs.h
+
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libXaw" >&5
+$as_echo_n "checking for libXaw... " >&6; }
+ if ${emacs_cv_xaw+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <X11/Intrinsic.h>
+#include <X11/Xaw/Simple.h>
+int
+main ()
+{
+
+ ;
+ return 0;
+}
_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ emacs_cv_xaw=yes
+else
+ emacs_cv_xaw=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
- LIBS="-ldnet $LIBS"
+ if test $emacs_cv_xaw = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes; using Lucid toolkit" >&5
+$as_echo "yes; using Lucid toolkit" >&6; }
+ USE_X_TOOLKIT=LUCID
+ LUCID_LIBW=-lXaw
+ elif test x"${USE_X_TOOLKIT}" = xLUCID; then
+ as_fn_error $? "Lucid toolkit requires X11/Xaw include files" "$LINENO" 5
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no; do not use toolkit by default" >&5
+$as_echo "no; do not use toolkit by default" >&6; }
+ USE_X_TOOLKIT=none
+ fi
+ fi
+fi
+
+X_TOOLKIT_TYPE=$USE_X_TOOLKIT
+
+LIBXTR6=
+if test "${USE_X_TOOLKIT}" != "none"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking X11 toolkit version" >&5
+$as_echo_n "checking X11 toolkit version... " >&6; }
+ if ${emacs_cv_x11_toolkit_version_6+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <X11/Intrinsic.h>
+int
+main ()
+{
+#if XtSpecificationRelease < 6
+fail;
+#endif
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ emacs_cv_x11_toolkit_version_6=yes
+else
+ emacs_cv_x11_toolkit_version_6=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
+ HAVE_X11XTR6=$emacs_cv_x11_toolkit_version_6
+ if test $emacs_cv_x11_toolkit_version_6 = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: 6 or newer" >&5
+$as_echo "6 or newer" >&6; }
+
+$as_echo "#define HAVE_X11XTR6 1" >>confdefs.h
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lXbsd" >&5
-$as_echo_n "checking for main in -lXbsd... " >&6; }
-if test "${ac_cv_lib_Xbsd_main+set}" = set; then :
+ LIBXTR6="-lSM -lICE"
+ case "$opsys" in
+ ## Use libw.a along with X11R6 Xt.
+ unixware) LIBXTR6="$LIBXTR6 -lw" ;;
+ esac
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: before 6" >&5
+$as_echo "before 6" >&6; }
+ fi
+
+ OLDLIBS="$LIBS"
+ if test x$HAVE_X11XTR6 = xyes; then
+ LIBS="-lXt -lSM -lICE $LIBS"
+ else
+ LIBS="-lXt $LIBS"
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XmuConvertStandardSelection in -lXmu" >&5
+$as_echo_n "checking for XmuConvertStandardSelection in -lXmu... " >&6; }
+if ${ac_cv_lib_Xmu_XmuConvertStandardSelection+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
-2011-01-28 Chong Yidong <cyd@stupidchicken.com>
++2011-01-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * search.texi (Regexps): Copyedits. Mention character classes
+ (Bug#7809).
+
+ * files.texi (File Aliases): Restore explanatory text from Eli
+ Zaretskii, accidentally removed in 2011-01-08 commit.
+
+2011-01-29 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (MAKEINFO): Remove options, leave only program name.
+ (MAKEINFO_OPTS): New variable.
+ (ENVADD, $(infodir)/emacs): Use $(MAKEINFO_OPTS).
+ (emacs.html): New target.
+ (clean): Remove emacs.html.
+
+2011-01-23 Werner Lemberg <wl@gnu.org>
+
+ * Makefile.in (MAKEINFO): Now controlled by `configure'.
+ (MAKEINFO_OPTS): New variable. Use it where appropriate.
+ (ENVADD): Updated.
+
+2011-01-18 Glenn Morris <rgm@gnu.org>
+
+ * ack.texi, emacs.texi (Acknowledgments): Update for ERT addition.
+
+ * ack.texi (Acknowledgments): Remove mention of replaced prolog.el.
+
2011-01-15 Chong Yidong <cyd@stupidchicken.com>
* building.texi (Compilation): Improve instructions for running two
-2011-01-23 Chong Yidong <cyd@stupidchicken.com>
+ 2011-01-28 Chong Yidong <cyd@stupidchicken.com>
+
+ * vol1.texi (Top):
+ * vol2.texi (Top):
+ * elisp.texi (Top):
+ * display.texi (Display Property): Shorten the menu description of
+ the "Other Display Specs" node (Bug#7816).
+
+ * keymaps.texi (Defining Menus): Add "menu item" and "extended
+ menu item" concept index entries (Bug#7805).
+
+2011-01-29 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (texinfodir): New variable.
+ (usermanualdir): Remove as redundant with $(emacsdir).
+ (MAKEINFO): Remove options, leave only program name.
+ (MAKEINFO_OPTS): New variable.
+ (texinputdir, $(infodir)/elisp): Use $(MAKEINFO_OPTS).
+
+2011-01-25 Chong Yidong <cyd@stupidchicken.com>
Richard Kim <emacs18@gmail.com>
* loading.texi (Library Search): Document list-load-path-shadows
-2011-01-31 Deniz Dogan <deniz.a.m.dogan@gmail.com>
-
- * net/rcirc.el: Clean log filenames (Bug#7933).
- (rcirc-log-write): Use convert-standard-filename.
- (rcirc-log-filename-function): Documentation updates.
-
+ 2011-01-31 Alan Mackenzie <acm@muc.de>
+
+ * progmodes/cc-cmds.el (c-forward-over-illiterals): Continue
+ parsing if we encounter a naked # (Bug#7595).
+ (c-beginning-of-statement): Avoid loop in locating the beginning
+ of a macro.
+
+ 2011-01-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * files.el (copy-directory): Fix arguments to recursive call.
+
-2011-01-29 Chong Yidong <cyd@stupidchicken.com>
++2011-01-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * files.el (copy-directory): If destination is an existing
+ directory, copy into a subdirectory there.
+
-2011-01-29 Andreas Schwab <schwab@linux-m68k.org>
++2011-01-31 Andreas Schwab <schwab@linux-m68k.org>
+
+ * emacs-lisp/shadow.el (load-path-shadows-find): Ignore leim-list
+ files.
+
-2011-01-28 Chong Yidong <cyd@stupidchicken.com>
++2011-01-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * image-dired.el (image-dired-mouse-display-image): No-op if no
+ file is found (Bug#7817).
+
+ * mouse.el (mouse-menu-non-singleton): Doc fix (Bug#7801).
+
-2011-01-28 Kenichi Handa <handa@m17n.org>
++2011-01-31 Kenichi Handa <handa@m17n.org>
+
+ * international/quail.el (quail-keyboard-layout-alist): Remove
+ superfluous SPC for "pc105-uk" (bug#7927).
+
-2011-01-27 Glenn Morris <rgm@gnu.org>
++2011-01-31 Glenn Morris <rgm@gnu.org>
+
+ * msb.el (msb-menu-bar-update-buffers): Update for changed
+ argument handling of menu-bar-select-frame. (Bug#7902)
+
-2011-01-27 Chong Yidong <cyd@stupidchicken.com>
++2011-01-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * progmodes/cc-engine.el (c-forward-<>-arglist-recur): Set a limit
+ to the recursion depth (Bug#7722).
+
-2011-01-26 Roy Liu <carsomyr@gmail.com> (tiny change)
++2011-01-31 Roy Liu <carsomyr@gmail.com> (tiny change)
+
+ * term/ns-win.el (ns-find-file): Expand ns-input-file with
+ command-line-default-directory (Bug#7872).
+
+2011-01-31 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/compile.el (compilation--flush-directory-cache):
+ New function, extracted from compilation--remove-properties.
+ (compilation--remove-properties, compilation--parse-region): Use it.
+ (compilation--previous-directory): Handle one more case.
+ (compilation-enable-debug-messages): Remove.
+ (compilation-parse-errors, compilation--flush-parse): Just remove the
+ left over debug messages.
+
+2011-01-31 Sam Steingold <sds@gnu.org>
+
+ * progmodes/compile.el (compilation-enable-debug-messages):
+ Add a variable to make the parsing messages introduced in
+ 2011-01-28T22:12:05Z!monnier@iro.umontreal.ca optional.
+ (compilation-parse-errors, compilation--flush-parse): Use it.
+
+2011-01-31 Deniz Dogan <deniz.a.m.dogan@gmail.com>
+
+ * net/rcirc.el: New customizable nick completion format.
+ (rcirc-nick-completion-format): New defcustom.
+ (rcirc-complete): Use it.
+
+2011-01-31 Deniz Dogan <deniz.a.m.dogan@gmail.com>
+
+ * net/rcirc.el: Clean log filenames (Bug#7933).
+ (rcirc-log-write): Use convert-standard-filename.
+ (rcirc-log-filename-function): Documentation updates.
+
+2011-01-30 Jan Djärv <jan.h.d@swipnet.se>
+
+ * mail/emacsbug.el (report-emacs-bug-insert-to-mailer):
+ Check report-emacs-bug-can-use-osx-open and use that if t.
+ (report-emacs-bug-can-use-osx-open): New function.
+ (report-emacs-bug): Rename can-xdg-email to can-insert-mail.
+ Check report-emacs-bug-can-use-osx-open also for can-insert-mail.
+
+2011-01-29 Chong Yidong <cyd@stupidchicken.com>
+
+ * vc/vc-dispatcher.el (vc-set-async-update): New function for
+ updating Dired or VC-dir buffers after async command completes.
+
+ * vc/vc-bzr.el (vc-bzr-async-command): Return the process buffer.
+ (vc-bzr-pull, vc-bzr-merge-branch): Use vc-set-async-update.
+
+ * vc/vc-git.el (vc-git-merge-branch): Add FETCH_HEAD to branch
+ completions if it exists. Use vc-set-async-update.
+ (vc-git-pull): Use vc-set-async-update.
+
+ * vc/vc-hg.el (vc-hg-pull): Fix default-contents arg to
+ read-shell-command. Use vc-set-async-update.
+ (vc-hg-merge-branch): Use vc-set-async-update.
+
+2011-01-29 Daiki Ueno <ueno@unixuser.org>
+
+ * epg.el (epg--status-KEYEXPIRED, epg--status-KEYREVOKED):
+ Don't presume KEYEXPIRED and KEYREVOKED to be a fatal error status
+ (Bug#7931).
+
+2011-01-29 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/compile.el: Avoid an N² behavior in grep.
+ (compilation--previous-directory): New fun.
+ (compilation--previous-directory-cache): New var.
+ (compilation--remove-properties): Flush it.
+ (compilation-directory-properties, compilation-error-properties):
+ Use the new fun to speed up looking for the current directory.
+
+2011-01-29 Chong Yidong <cyd@stupidchicken.com>
+
+ * vc/vc-hg.el (vc-hg-history): New var.
+ (vc-hg-pull): Perform default pull if called via Lisp by vc-pull.
+ (vc-hg-merge-branch): New function.
+
+ * vc/vc.el (vc-pull): Make vc-update an alias for this, instead of
+ the other way around.
+
+ * vc/vc-git.el (vc-git-branches, vc-git-pull)
+ (vc-git-merge-branch): New functions.
+ (vc-git-history): New var.
+
+2011-01-28 Chong Yidong <cyd@stupidchicken.com>
+
+ * vc/vc-dispatcher.el (vc-do-async-command): New function.
+
+ * vc/vc-bzr.el (vc-bzr-async-command): Convert into a wrapper for
+ vc-do-async-command.
+
+ * vc/vc-bzr.el (vc-bzr-pull, vc-bzr-merge-branch):
+ Callers changed.
+
+2011-01-28 Leo <sdl.web@gmail.com>
+
+ * emacs-lisp/advice.el (ad-make-advised-docstring): Don't apply
+ highlighting to the "this function is advised" message.
+
+ * help-mode.el (help-mode-finish): Apply highlighting here, to
+ avoid clobbering by substitute-command-keys (Bug#6304).
+
+2011-01-28 Chong Yidong <cyd@stupidchicken.com>
+
+ * woman.el (woman0-roff-buffer): Process roff escape sequences
+ occurring prior to the first request (Bug#7843).
+
+2011-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/compile.el: Don't use font-lock any more.
+ (compilation-error-regexp-alist-alist): Change handling of makepp
+ so it preserves the warning/error distinction on subsequent files.
+ Simplify various rules.
+ (compilation-directory-properties): Use font-lock-face.
+ Add a compilation-message property.
+ (compilation-internal-error-properties): Use font-lock-face.
+ Don't set the compilation-debug property here.
+ (compilation--put-prop, compilation--remove-properties)
+ (compilation--parse-region, compilation--ensure-parse)
+ (compilation--ensure-parse): New functions.
+ (compilation-parse-errors): New function, largely inspired of
+ compilation-mode-font-lock-keywords. Set compilation-debug here.
+ (compilation--parsed): New var.
+ (compilation--flush-parse): Use compilation--ensure-parse.
+ (compilation-start): Don't call font-lock.
+ (compilation-turn-on-font-lock): Remove.
+ (compilation-setup): Don't set font-lock-extra-managed-props not change
+ other font-lock settings, other than keywords.
+ Don't activate font-lock-mode.
+ Set change-major-mode-hook and before-change-functions.
+ (compilation--unsetup): Remove properties and hooks.
+ (compilation-next-single-property-change): New function.
+ (compilation-next-error): Use it to parse when needed.
+ (compile-goto-error): Parse buffer as needed.
+ (compilation--compat-error-properties): Don't need a dummy `face'
+ property any more.
+
+2011-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/compile.el: Use accessors for clarity and fix omake hack.
+ (compilation-process-setup-function): Fix docstring's false promises.
+ (compilation-error-regexp-alist-alist): Catch omake's continuous
+ recompilation message and avoid reuse of old markers.
+ (compilation-parse-errors-function): Declare obsolete.
+ (compilation-buffer-modtime): Remove.
+ (compilation--make-cdrloc, compilation--loc->col)
+ (compilation--loc->line, compilation--loc->file-struct)
+ (compilation--loc->marker, compilation--loc->visited)
+ (compilation--make-file-struct, compilation--file-struct->file-spec)
+ (compilation--file-struct->formats)
+ (compilation--file-struct->loc-tree): New macros. Use them.
+ (compilation--message): New defstruct. Use them.
+ (compilation-next-error-function): Don't mess with timestamps to try
+ and guess when to reparse.
+
+2011-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * textmodes/tex-mode.el: Get rid of compilation-parse-errors-function
+ (tex-old-error-file-name): New function,
+ extracted from tex-compilation-parse-errors.
+ (tex-compilation-parse-errors): Remove.
+ (tex-error-regexp-alist): New var.
+ (tex-shell): Use it to avoid compilation-parse-errors-function.
+
+ * progmodes/grep.el (grep-regexp-alist): Tighten regexp.
+ (grep-mode-font-lock-keywords): Remove regexp that seems like
+ a left-over from before we used compile.el.
+ (grep-mode-font-lock-keywords): Call syntax-ppss-flush-cache when
+ modifying the buffer within with-silent-modifications.
+
+ * progmodes/compile.el: Cleanup text-properties namespace by using
+ `compilation-message' instead of `message', `compilation-directory'
+ instead of `directory', and `compilation-debug' instead of `debug'.
+ (compilation-last-buffer, compilation-parsing-end)
+ (compilation-error-list, compilation-old-error-list): Move to the
+ compatibility part of the code.
+ (compilation-error-properties): If `file' is a function, let it return
+ a file name.
+ (compilation-mode-font-lock-keywords): Be more conservative with the
+ omake "^ *" pattern prefix, to try and minimize the risk of
+ pathologically slow regexp matching.
+ (compilation-start): Use inhibit-read-only.
+ (compilation--unsetup): New function.
+ (compilation-shell-minor-mode, compilation-minor-mode): Use it.
+ (compilation-filter): Minor tweaks.
+ (compilation-next-error-function): Try and avoid abusing variables.
+ (compilation--flush-file-structure): New fun.
+ (compilation-fake-loc): Use it to improve behavior when file is reused.
+ (debug-ignored-errors): Add "Moved past last ...".
+ (compilation--compat-error-properties)
+ (compilation--compat-parse-errors): Rename by doubling the "-".
+
+ Port features from the previous prolog.el to the new one.
+ * progmodes/prolog.el (prolog-system): Add GNU and ECLiPSe options.
+ (prolog-program-name, prolog-program-switches, prolog-consult-string)
+ (prolog-compile-string, prolog-prompt-regexp): Get rid of the <foo>-i
+ variable and use a function to compute the value dynamically.
+ (prolog-prompt-regexp): Add regexp for GNU Prolog.
+ (prolog-continued-prompt-regexp): Remove, unused.
+ (prolog-find-value-by-system): Try and use the value of prolog-system
+ in the *prolog* buffer if it helps.
+ (prolog-mode-keybindings-common): Bind C-c C-z unconditionally...
+ (prolog-zip-on): ..and check prolog-system and version here instead.
+ (prolog-inferior-self-insert-command): New command.
+ (prolog-inferior-mode-map): Use it.
+ (prolog-inferior-error-regexp-alist): New var.
+ (prolog-inferior-mode): Use it, with compilation-shell-minor-mode.
+ (prolog-input-filter): Use derived-mode-p.
+ (prolog-inferior-guess-flavor): New function.
+ (prolog-ensure-process): Use it. Use make-comint-in-buffer rather than
+ make-comint to avoid running comint-mode twice.
+ (prolog-inferior-buffer): New fun.
+ (prolog-old-process-region, prolog-old-process-file):
+ Don't call prolog-bsts here...
+ (prolog-build-prolog-command): ...do it here instead.
+ (prolog-old-process-region, prolog-old-process-file):
+ Use compilation-fake-loc and compilation-forget-errors.
+ (prolog-consult-compile-region): Use bolp.
+
+2011-01-28 Chong Yidong <cyd@stupidchicken.com>
+
+ * image-mode.el (image-display-size): Doc fix (Bug#7820).
+
+2011-01-27 Sam Steingold <sds@gnu.org>
+
+ * midnight.el (clean-buffer-list-kill-never-buffer-names):
+ Remove "*server*" which is never created by emacs server.
+
+2011-01-27 Deniz Dogan <deniz.a.m.dogan@gmail.com>
+
+ * vc/vc-bzr.el (vc-bzr-diff): Don't pass --diff-options unless
+ there are some diff switches.
+
+2011-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/ruby-mode.el (ruby-syntax-propertize-function):
+ Copy change made to ruby-font-lock-syntactic-keywords.
+
+ * htmlfontify.el: Make it obey the font-lock-face text property.
+ Miscellaneous cleanup such as:
+ - Don't hide expressions after a closing paren.
+ - Move initial setq into let.
+ - Hoist common parts out of ifs.
+ (hfy-p-to-face, hfy-p-to-face-lennart): Remove.
+ (hfy-face-at): Use get-text-property instead.
+ (hfy-prop-invisible-p): Use invisible-p if available.
+ (htmlfontify-manual): Use \\[...].
+ (hfy-html-quote-regex): Use [...].
+ (hfy-combined-face-spec): Simplify.
+ (hfy-compile-face-map): Don't presume point-min==1.
+ (hfy-css-name, hfy-buffer, htmlfontify-buffer): Use \' rather than $ to
+ match end of string.
+ (hfy-text-p): η-reduce.
+ (hfy-tags-for-file): Receive cache-hash directly.
+ (hfy-mark-tag-names): Adjust call.
+
+2011-01-27 Glenn Morris <rgm@gnu.org>
+
+ * msb.el (msb-after-load-hooks): Make it an obsolete alias.
+ (msb-after-load-hook): Remove eval-after-load wackiness.
+
+2011-01-25 Sam Steingold <sds@gnu.org>
+
+ * vc/vc-svn.el (vc-svn-diff): Use `diff-command' instead of the
+ literal "diff" (important for windows-nt).
+
2011-01-25 Glenn Morris <rgm@gnu.org>
- * comint.el (comint-mode): Doc fix. (Bug#7897)
+ * emacs-lisp/copyright.el (copyright-at-end-flag)
+ (copyright-names-regexp): Add safety properties.
+ (copyright-year-ranges): New option.
+ (copyright-find-end): New function, split from copyright-update-year.
+ (copyright-update-year): Use copyright-find-end.
+ (copyright-fix-years): Optionally, convert years to ranges.
+ Handle years continued over comment lines.
+ Do not mess with the fill-prefix.
+ Do not call copyright-update.
+ (copyright-update-directory): Optionally, fix years rather than update.
+ Skip directories. Find files with only safe local vars.
-2011-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
+2011-01-25 Stefan Monnier <monnier@iro.umontreal.ca>
* files.el (file-name-non-special): Only change buffer-file-name after
insert-file-contents if it's `visit'ing the file (bug#7854).
-2010-10-23 Julien Danjou <julien@danjou.info>
+ 2011-01-31 Antoine Levitt <antoine.levitt@gmail.com> (tiny change)
+
+ * erc-track.el (track): Don't reset erc-modified-channels-object
+ each time erc-track-mode is activated.
+
+2011-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * erc.el (erc-mode):
+ * erc-dcc.el (erc-dcc-chat-mode): Use define-derived-mode.
+
+2010-11-11 Glenn Morris <rgm@gnu.org>
+
+ * erc-lang.el (erc-cmd-LANG): Fix what may have been a typo.
+
+2010-11-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * erc-backend.el (erc-coding-system-precedence): New variable.
+ (erc-decode-string-from-target): Use it.
+
+2010-10-24 Julien Danjou <julien@danjou.info>
* erc-backend.el (erc-server-JOIN): Set the correct target list on join.
(goto-char safe-pos)
t)))
+;; cc-mode requires cc-fonts.
+(declare-function c-fontify-recorded-types-and-refs "cc-fonts" ())
+
+ (defvar c-forward-<>-arglist-recur-depth)
+
(defun c-forward-<>-arglist (all-types)
;; The point is assumed to be at a "<". Try to treat it as the open
;; paren of an angle bracket arglist and move forward to the
(defun ns-find-file ()
"Do a `find-file' with the `ns-input-file' as argument."
(interactive)
- (let* ((f (file-truename (pop ns-input-file)))
- (let ((f) (file) (bufwin1) (bufwin2))
- (setq f (file-truename (expand-file-name (car ns-input-file)
- command-line-default-directory)))
- (setq ns-input-file (cdr ns-input-file))
- (setq file (find-file-noselect f))
- (setq bufwin1 (get-buffer-window file 'visible))
- (setq bufwin2 (get-buffer-window "*scratch*" 'visibile))
++ (let* ((f (file-truename
++ (expand-file-name (pop ns-input-file)
++ command-line-default-directory)))
+ (file (find-file-noselect f))
+ (bufwin1 (get-buffer-window file 'visible))
+ (bufwin2 (get-buffer-window "*scratch*" 'visibile)))
(cond
(bufwin1
(select-frame (window-frame bufwin1))
-2011-01-29 Andreas Schwab <schwab@linux-m68k.org>
++2011-01-31 Andreas Schwab <schwab@linux-m68k.org>
+
+ * image.c (DEF_IMGLIB_FN): Add parameter rettype, use it instead
+ of int. All uses adjusted.
+ (PNG_JMPBUF, png_load, jpeg_load, tiff_load, gif_load)
+ (svg_load_image): Remove casts.
+
-2011-01-29 Chong Yidong <cyd@stupidchicken.com>
++2011-01-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * image.c (fn_png_longjmp, fn_png_set_longjmp_fn): New png
+ function definitions for compiling with libpng-1.5.
+ (PNG_LONGJMP, PNG_JMPBUF): New macros for libpng-1.5.
+ (my_png_error, png_load): Use them. Suggested by Thomas Klausner
+ (Bug#7908).
+
+2011-01-31 Eli Zaretskii <eliz@gnu.org>
+
+ * s/ms-w32.h (HAVE_STRFTIME): Don't define.
+
+ * makefile.w32-in (OBJ2): Remove strftime.$(O).
+ ($(BLD)/strftime.$(O)): Remove prerequisites.
+
+2011-01-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ src/emacs.c now gets version number from configure.in
+ * emacs.c (emacs_version): Set to VERSION so that it
+ is determined automatically from ../configure.in.
+
+2011-01-31 Jim Meyering <meyering@redhat.com>
+
+ * charset.c (load_charset_map): Don't deref NULL on failed malloc.
+ Use xmalloc rather than malloc.
+
+2011-01-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ strftime: import from gnulib
+ * Makefile.in (obj): Remove strftime.o, as gnulib now does this for us.
+ * deps.mk (strftime.o): Remove.
+ * editfns.c: Include <strftime.h>, supplied by gnulib.
+ (emacs_strftimeu): Remove decl.
+ (emacs_memftimeu): Use nstrftime (the gnulib name) rather than
+ emacs_strftimeu.
+ * config.in: Regenerate.
+ * strftime.c: Remove; we now use strftime from gnulib.
+
+ Use SSDATA when the context wants char *.
+ * alloc.c, buffer.c, bytecode.c, callproc.c, dired.c:
+ * dispnew.c, doc.c, editfns.c, emacs.c, fileio.c, filelock.c:
+ * fns.c, font.c, frame.c, image.c, indent.c, keyboard.c:
+ * lread.c, minibuf.c, print.c, process.c, search.c, widget.c:
+ * xdisp.c, xfaces.c, xfns.c, xml.c, xselect.c, xterm.c:
+ Use SSDATA (not SDATA) when the context of the expression wants
+ char * (not unsigned char *).
+
+2011-01-30 Jan Djärv <jan.h.d@swipnet.se>
+
+ * .gdbinit: Read global lisp variables as globals.f_V*.
+
+2011-01-30 Andreas Schwab <schwab@linux-m68k.org>
+
+ * font.c (PROP_MATCH): Remove parameter N and use strlen instead.
+ All uses changed.
+ (PROP_SAVE): Likewise.
+
+2011-01-29 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (make_lispy_position): Fix typo in last change
+ (Bug#7935).
+
+2011-01-29 Eli Zaretskii <eliz@gnu.org>
+
+ * s/ms-w32.h (HAVE_MKTIME): Remove.
+
+ * makefile.w32-in (LOCAL_FLAGS): Add -I../lib.
+ (GNULIB): New variable.
+ (LIBS): Add $(GNULIB).
+ $(TEMACS): Depend on $(GNULIB).
+ <top-level>: Fix font-lock disrupted by a lone `"'.
+
+2011-01-29 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsselect.m (ns_string_from_pasteboard): Get length of string
+ and use make_string instead of build_string (Bug#7934).
+ (ns_string_to_pasteboard_internal): Use initWithBytesNoCopy
+ instead of stringWithUTF8String (Bug#7934).
+
+2011-01-29 Anders Lindgren <andlind@gmail.com> (tiny change)
+
+ * nsfont.m (nsfont_open): Ensure that fonts with inexact
+ descenders would not become one pixel too tall (Bug#7887).
+
2011-01-28 Chong Yidong <cyd@stupidchicken.com>
- * m/intel386.h: Define NO_ARG_ARRAY. Suggested by Dan Nicolaescu.
+ * keyboard.c (make_lispy_position): For clicks on right fringe or
+ margin, compute text position using the X coordinate relative to
+ the left of the text area (Bug#7839).
+
+2011-01-28 Kenichi Handa <handa@m17n.org>
+
+ * ftfont.c (ftfont_spec_pattern): Check each extra property
+ value.
+
+2011-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * xdisp.c (safe_eval_handler): Distinguish symbols and strings.
2011-01-27 Chong Yidong <cyd@stupidchicken.com>
#ifdef HAVE_NTGUI
/* Macro for defining functions that will be loaded from image DLLs. */
- #define DEF_IMGLIB_FN(func,args) int (FAR CDECL *fn_##func)args
-#define DEF_IMGLIB_FN(rettype, func) rettype (FAR CDECL *fn_##func)()
++#define DEF_IMGLIB_FN(rettype,func,args) rettype (FAR CDECL *fn_##func)args
/* Macro for loading those image functions from the library. */
#define LOAD_IMGLIB_FN(lib,func) { \
/* XPM library details. */
- DEF_IMGLIB_FN (XpmFreeAttributes, (XpmAttributes *));
- DEF_IMGLIB_FN (XpmCreateImageFromBuffer, (Display *, char *, xpm_XImage **,
-DEF_IMGLIB_FN (void, XpmFreeAttributes);
-DEF_IMGLIB_FN (int, XpmCreateImageFromBuffer);
-DEF_IMGLIB_FN (int, XpmReadFileToImage);
-DEF_IMGLIB_FN (void, XImageFree);
++DEF_IMGLIB_FN (void, XpmFreeAttributes, (XpmAttributes *));
++DEF_IMGLIB_FN (int, XpmCreateImageFromBuffer, (Display *, char *, xpm_XImage **,
+ xpm_XImage **, XpmAttributes *));
- DEF_IMGLIB_FN (XpmReadFileToImage, (Display *, char *, xpm_XImage **,
++DEF_IMGLIB_FN (int, XpmReadFileToImage, (Display *, char *, xpm_XImage **,
+ xpm_XImage **, XpmAttributes *));
- DEF_IMGLIB_FN (XImageFree, (xpm_XImage *));
++DEF_IMGLIB_FN (void, XImageFree, (xpm_XImage *));
static int
init_xpm_functions (Lisp_Object libraries)
#ifdef HAVE_NTGUI
/* PNG library details. */
- DEF_IMGLIB_FN (png_get_io_ptr, (png_structp));
- DEF_IMGLIB_FN (png_sig_cmp, (png_bytep, png_size_t, png_size_t));
- DEF_IMGLIB_FN (png_create_read_struct, (png_const_charp, png_voidp,
- png_error_ptr, png_error_ptr));
- DEF_IMGLIB_FN (png_create_info_struct, (png_structp));
- DEF_IMGLIB_FN (png_destroy_read_struct, (png_structpp, png_infopp, png_infopp));
- DEF_IMGLIB_FN (png_set_read_fn, (png_structp, png_voidp, png_rw_ptr));
- DEF_IMGLIB_FN (png_set_sig_bytes, (png_structp, int));
- DEF_IMGLIB_FN (png_read_info, (png_structp, png_infop));
- DEF_IMGLIB_FN (png_get_IHDR, (png_structp, png_infop,
-DEF_IMGLIB_FN (png_voidp, png_get_io_ptr);
-DEF_IMGLIB_FN (int, png_sig_cmp);
-DEF_IMGLIB_FN (png_structp, png_create_read_struct);
-DEF_IMGLIB_FN (png_infop, png_create_info_struct);
-DEF_IMGLIB_FN (void, png_destroy_read_struct);
-DEF_IMGLIB_FN (void, png_set_read_fn);
-DEF_IMGLIB_FN (void, png_set_sig_bytes);
-DEF_IMGLIB_FN (void, png_read_info);
-DEF_IMGLIB_FN (png_uint_32, png_get_IHDR);
-DEF_IMGLIB_FN (png_uint_32, png_get_valid);
-DEF_IMGLIB_FN (void, png_set_strip_16);
-DEF_IMGLIB_FN (void, png_set_expand);
-DEF_IMGLIB_FN (void, png_set_gray_to_rgb);
-DEF_IMGLIB_FN (void, png_set_background);
-DEF_IMGLIB_FN (png_uint_32, png_get_bKGD);
-DEF_IMGLIB_FN (void, png_read_update_info);
-DEF_IMGLIB_FN (png_byte, png_get_channels);
-DEF_IMGLIB_FN (png_size_t, png_get_rowbytes);
-DEF_IMGLIB_FN (void, png_read_image);
-DEF_IMGLIB_FN (void, png_read_end);
-DEF_IMGLIB_FN (void, png_error);
++DEF_IMGLIB_FN (png_voidp, png_get_io_ptr, (png_structp));
++DEF_IMGLIB_FN (int, png_sig_cmp, (png_bytep, png_size_t, png_size_t));
++DEF_IMGLIB_FN (png_structp, png_create_read_struct, (png_const_charp, png_voidp,
++ png_error_ptr, png_error_ptr));
++DEF_IMGLIB_FN (png_infop, png_create_info_struct, (png_structp));
++DEF_IMGLIB_FN (void, png_destroy_read_struct, (png_structpp, png_infopp, png_infopp));
++DEF_IMGLIB_FN (void, png_set_read_fn, (png_structp, png_voidp, png_rw_ptr));
++DEF_IMGLIB_FN (void, png_set_sig_bytes, (png_structp, int));
++DEF_IMGLIB_FN (void, png_read_info, (png_structp, png_infop));
++DEF_IMGLIB_FN (png_uint_32, png_get_IHDR, (png_structp, png_infop,
+ png_uint_32 *, png_uint_32 *,
+ int *, int *, int *, int *, int *));
- DEF_IMGLIB_FN (png_get_valid, (png_structp, png_infop, png_uint_32));
- DEF_IMGLIB_FN (png_set_strip_16, (png_structp));
- DEF_IMGLIB_FN (png_set_expand, (png_structp));
- DEF_IMGLIB_FN (png_set_gray_to_rgb, (png_structp));
- DEF_IMGLIB_FN (png_set_background, (png_structp, png_color_16p,
++DEF_IMGLIB_FN (png_uint_32, png_get_valid, (png_structp, png_infop, png_uint_32));
++DEF_IMGLIB_FN (void, png_set_strip_16, (png_structp));
++DEF_IMGLIB_FN (void, png_set_expand, (png_structp));
++DEF_IMGLIB_FN (void, png_set_gray_to_rgb, (png_structp));
++DEF_IMGLIB_FN (void, png_set_background, (png_structp, png_color_16p,
+ int, int, double));
- DEF_IMGLIB_FN (png_get_bKGD, (png_structp, png_infop, png_color_16p *));
- DEF_IMGLIB_FN (png_read_update_info, (png_structp, png_infop));
- DEF_IMGLIB_FN (png_get_channels, (png_structp, png_infop));
- DEF_IMGLIB_FN (png_get_rowbytes, (png_structp, png_infop));
- DEF_IMGLIB_FN (png_read_image, (png_structp, png_bytepp));
- DEF_IMGLIB_FN (png_read_end, (png_structp, png_infop));
- DEF_IMGLIB_FN (png_error, (png_structp, png_const_charp));
++DEF_IMGLIB_FN (png_uint_32, png_get_bKGD, (png_structp, png_infop, png_color_16p *));
++DEF_IMGLIB_FN (void, png_read_update_info, (png_structp, png_infop));
++DEF_IMGLIB_FN (png_byte, png_get_channels, (png_structp, png_infop));
++DEF_IMGLIB_FN (png_size_t, png_get_rowbytes, (png_structp, png_infop));
++DEF_IMGLIB_FN (void, png_read_image, (png_structp, png_bytepp));
++DEF_IMGLIB_FN (void, png_read_end, (png_structp, png_infop));
++DEF_IMGLIB_FN (void, png_error, (png_structp, png_const_charp));
+
+ #if (PNG_LIBPNG_VER >= 10500)
-DEF_IMGLIB_FN (void, png_longjmp);
-DEF_IMGLIB_FN (jmp_buf *, png_set_longjmp_fn);
++DEF_IMGLIB_FN (void, png_longjmp, (png_structp, int));
++DEF_IMGLIB_FN (jmp_buf *, png_set_longjmp_fn, (png_structp, png_longjmp_ptr, size_t));
+ #endif /* libpng version >= 1.5 */
static int
init_png_functions (Lisp_Object libraries)
#ifdef HAVE_NTGUI
/* JPEG library details. */
- DEF_IMGLIB_FN (jpeg_CreateDecompress, (j_decompress_ptr, int, size_t));
- DEF_IMGLIB_FN (jpeg_start_decompress, (j_decompress_ptr));
- DEF_IMGLIB_FN (jpeg_finish_decompress, (j_decompress_ptr));
- DEF_IMGLIB_FN (jpeg_destroy_decompress, (j_decompress_ptr));
- DEF_IMGLIB_FN (jpeg_read_header, (j_decompress_ptr, boolean));
- DEF_IMGLIB_FN (jpeg_read_scanlines, (j_decompress_ptr, JSAMPARRAY, JDIMENSION));
- DEF_IMGLIB_FN (jpeg_std_error, (struct jpeg_error_mgr *));
- DEF_IMGLIB_FN (jpeg_resync_to_restart, (j_decompress_ptr, int));
-DEF_IMGLIB_FN (void, jpeg_CreateDecompress);
-DEF_IMGLIB_FN (boolean, jpeg_start_decompress);
-DEF_IMGLIB_FN (boolean, jpeg_finish_decompress);
-DEF_IMGLIB_FN (void, jpeg_destroy_decompress);
-DEF_IMGLIB_FN (int, jpeg_read_header);
-DEF_IMGLIB_FN (JDIMENSION, jpeg_read_scanlines);
-DEF_IMGLIB_FN (struct jpeg_error_mgr *, jpeg_std_error);
-DEF_IMGLIB_FN (boolean, jpeg_resync_to_restart);
++DEF_IMGLIB_FN (void, jpeg_CreateDecompress, (j_decompress_ptr, int, size_t));
++DEF_IMGLIB_FN (boolean, jpeg_start_decompress, (j_decompress_ptr));
++DEF_IMGLIB_FN (boolean, jpeg_finish_decompress, (j_decompress_ptr));
++DEF_IMGLIB_FN (void, jpeg_destroy_decompress, (j_decompress_ptr));
++DEF_IMGLIB_FN (int, jpeg_read_header, (j_decompress_ptr, boolean));
++DEF_IMGLIB_FN (JDIMENSION, jpeg_read_scanlines, (j_decompress_ptr, JSAMPARRAY, JDIMENSION));
++DEF_IMGLIB_FN (struct jpeg_error_mgr *, jpeg_std_error, (struct jpeg_error_mgr *));
++DEF_IMGLIB_FN (boolean, jpeg_resync_to_restart, (j_decompress_ptr, int));
static int
init_jpeg_functions (Lisp_Object libraries)
return 0;
}
}
+ else if (!STRINGP (specified_data))
+ {
+ image_error ("Invalid image data `%s'", specified_data, Qnil);
+ return 0;
+ }
/* Customize libjpeg's error handling to call my_error_exit when an
- error is detected. This function will perform a longjmp.
- Casting return value avoids a GCC warning on W32. */
- cinfo.err = (struct jpeg_error_mgr *)fn_jpeg_std_error (&mgr.pub);
+ error is detected. This function will perform a longjmp. */
+ cinfo.err = fn_jpeg_std_error (&mgr.pub);
mgr.pub.error_exit = my_error_exit;
if ((rc = setjmp (mgr.setjmp_buffer)) != 0)
#ifdef HAVE_NTGUI
/* TIFF library details. */
- DEF_IMGLIB_FN (TIFFSetErrorHandler, (TIFFErrorHandler));
- DEF_IMGLIB_FN (TIFFSetWarningHandler, (TIFFErrorHandler));
- DEF_IMGLIB_FN (TIFFOpen, (const char *, const char *));
- DEF_IMGLIB_FN (TIFFClientOpen, (const char *, const char *, thandle_t,
-DEF_IMGLIB_FN (TIFFErrorHandler, TIFFSetErrorHandler);
-DEF_IMGLIB_FN (TIFFErrorHandler, TIFFSetWarningHandler);
-DEF_IMGLIB_FN (TIFF *, TIFFOpen);
-DEF_IMGLIB_FN (TIFF *, TIFFClientOpen);
-DEF_IMGLIB_FN (int, TIFFGetField);
-DEF_IMGLIB_FN (int, TIFFReadRGBAImage);
-DEF_IMGLIB_FN (void, TIFFClose);
-DEF_IMGLIB_FN (int, TIFFSetDirectory);
++DEF_IMGLIB_FN (TIFFErrorHandler, TIFFSetErrorHandler, (TIFFErrorHandler));
++DEF_IMGLIB_FN (TIFFErrorHandler, TIFFSetWarningHandler, (TIFFErrorHandler));
++DEF_IMGLIB_FN (TIFF *, TIFFOpen, (const char *, const char *));
++DEF_IMGLIB_FN (TIFF *, TIFFClientOpen, (const char *, const char *, thandle_t,
+ TIFFReadWriteProc, TIFFReadWriteProc,
+ TIFFSeekProc, TIFFCloseProc, TIFFSizeProc,
+ TIFFMapFileProc, TIFFUnmapFileProc));
- DEF_IMGLIB_FN (TIFFGetField, (TIFF *, ttag_t, ...));
- DEF_IMGLIB_FN (TIFFReadRGBAImage, (TIFF *, uint32, uint32, uint32 *, int));
- DEF_IMGLIB_FN (TIFFClose, (TIFF *));
- DEF_IMGLIB_FN (TIFFSetDirectory, (TIFF *, tdir_t));
++DEF_IMGLIB_FN (int, TIFFGetField, (TIFF *, ttag_t, ...));
++DEF_IMGLIB_FN (int, TIFFReadRGBAImage, (TIFF *, uint32, uint32, uint32 *, int));
++DEF_IMGLIB_FN (void, TIFFClose, (TIFF *));
++DEF_IMGLIB_FN (int, TIFFSetDirectory, (TIFF *, tdir_t));
static int
init_tiff_functions (Lisp_Object libraries)
#ifdef HAVE_NTGUI
/* GIF library details. */
- DEF_IMGLIB_FN (DGifCloseFile, (GifFileType *));
- DEF_IMGLIB_FN (DGifSlurp, (GifFileType *));
- DEF_IMGLIB_FN (DGifOpen, (void *, InputFunc));
- DEF_IMGLIB_FN (DGifOpenFileName, (const char *));
-DEF_IMGLIB_FN (int, DGifCloseFile);
-DEF_IMGLIB_FN (int, DGifSlurp);
-DEF_IMGLIB_FN (GifFileType *, DGifOpen);
-DEF_IMGLIB_FN (GifFileType *, DGifOpenFileName);
++DEF_IMGLIB_FN (int, DGifCloseFile, (GifFileType *));
++DEF_IMGLIB_FN (int, DGifSlurp, (GifFileType *));
++DEF_IMGLIB_FN (GifFileType *, DGifOpen, (void *, InputFunc));
++DEF_IMGLIB_FN (GifFileType *, DGifOpenFileName, (const char *));
static int
init_gif_functions (Lisp_Object libraries)