1. 26 Jun, 2012 2 commits
    • Eli Zaretskii's avatar
      Fix parallel bootstrap on MS-Windows in lib/ and lisp/. · cc06e7e7
      Eli Zaretskii authored
       lib/makefile.w32-in ($(GNULIBOBJS)): Depend on stamp_BLD.  This
       replaces separate dependency for each object file, which required
       the same object file to be mentioned twice, causing failures in
       parallel builds.
       lisp/makefile.w32-in (compile, compile-always): Depend on
       update-subdirs, not on subdirs.el.  Otherwise, several different
       sub-targets of 'bootstrap' running in parallel could
       simultaneously write to subdirs.el, producing a garbled file.
      cc06e7e7
    • Paul Eggert's avatar
      cf38a720
  2. 25 Jun, 2012 1 commit
    • Dmitry Antipov's avatar
      * configure.in (AC_CHECK_FUNCS): Detect library functions · 3511c784
      Dmitry Antipov authored
      strcasecmp and strncasecmp.
      * lib-src/etags.c (etags_strcasecmp, etags_strncasecmp): Define to
      library functions strcasecmp and strncasecmp if available.
      * lwlib/lwlib.c (my_strcasecmp): Rename to lwlib_strcasecmp, which
      may be defined to library function strcasecmp if available.
      * src/dispextern.c (xstrcasecmp): Define to library function
      strcasecmp if available.
      * src/xfaces.c: Do not use xstrcasecmp if strcasecmp is available.
      3511c784
  3. 24 Jun, 2012 2 commits
    • Paul Eggert's avatar
      Switch from NO_RETURN to C11's _Noreturn. · 845ca893
      Paul Eggert authored
      Fixes: debbugs:11750
      845ca893
    • Eli Zaretskii's avatar
      Improve port of struct timespec to MS-Windows. · 696056c2
      Eli Zaretskii authored
       lib/makefile.w32-in ($(BLD)/dtotimespec.$(O)):
       ($(BLD)/timespec-add.$(O)):
       ($(BLD)/timespec-sub.$(O)): Don't depend on
       $(EMACS_ROOT)/nt/inc/sys/time.h.
       lib/stat-time.h:
       lib/timespec.h:
       lib/utimens.h: Revert last change.
       src/makefile.w32-in (TIMESPEC_H): Remove nt/inc/sys/time.h.
       (SYSTIME_H): Add nt/inc/sys/time.h.
       src/systime.h [WINDOWSNT]: Include sys/time.h.
       src/s/ms-w32.h (struct timespec): Definition moved from
       nt/inc/sys/time.h.  Suggested by Paul Eggert <eggert@cs.ucla.edu>.
       nt/inc/sys/time.h (struct timespec): Don't define it here, it is
       now defined in src/s/ms-w32.h.
      
      Fixes: debbugs:9000
      696056c2
  4. 23 Jun, 2012 3 commits
    • Paul Eggert's avatar
      Merge from gnulib. · 47d0c011
      Paul Eggert authored
      * m4/getopt.m4: Copy new version from gnulib, incorporating:
      getopt-gnu: Handle suboptimal getopt_long's abbreviation handling.
      47d0c011
    • Eli Zaretskii's avatar
      Fix the MS-Windows build broken by 2012-06-22T21:17:42Z!eggert@cs.ucla.edu. · 388cdec0
      Eli Zaretskii authored
       nt/inc/sys/time.h (struct timespec): Define.
       lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/dtotimespec.$(O),
       $(BLD)/gettime.$(O), $(BLD)/timespec-add.$(O), and
       $(BLD)/timespec-sub.$(O).
       ($(BLD)/dtotimespec.$(O)):
       ($(BLD)/gettime.$(O)):
       ($(BLD)/timespec-add.$(O)):
       ($(BLD)/timespec-sub.$(O)): New dependencies.
       lib/stat-time.h:
       lib/timespec.h:
       lib/utimens.h: Include sys/time.h
       src/w32.c (fdutimens): New function.
       src/w32proc.c (sys_select): Adapt to change in the EMACS_TIME type.
       src/s/ms-w32.h (pselect): Redirect to sys_select.
       src/sysselect.h [WINDOWSNT]: Don't include sys/select.h.
      
      Fixes: debbugs:9000
      388cdec0
    • Andreas Schwab's avatar
      * configure.in: Don't use AC_CHECK_FUNCS_ONCE, which doesn't use · 54e8a418
      Andreas Schwab authored
      the correct CFLAGS and LIBS.
      54e8a418
  5. 22 Jun, 2012 2 commits
    • Paul Eggert's avatar
      Support higher-resolution time stamps. · d35af63c
      Paul Eggert authored
      Fixes: debbugs:9000
      d35af63c
    • Paul Eggert's avatar
      Merge from gnulib. · 05730648
      Paul Eggert authored
      * lib/filemode.h, lib/signal.in.h, lib/stat.c, lib/stdint.in.h:
      * lib/stdlib.in.h, lib/unistd.in.h, m4/extensions.m4, m4/getloadavg.m4:
      * m4/getopt.m4, m4/gnulib-common.m4, m4/largefile.m4, m4/mktime.m4:
      * m4/multiarch.m4, m4/nocrash.m4, m4/stdio_h.m4, m4/time_r.m4:
      Copy new versions from gnulib, incorporating the following changes:
      2012-06-22 time_r: fix typo that always overrode localtime_r decl
      2012-06-22 Write "Mac OS X" instead of "MacOS X".
      2012-06-21 mktime: fix integer overflow in 'configure'-time test
      2012-06-21 nonblocking: Avoid compilation error on mingw64.
      2012-06-19 stat, fstat: Avoid warnings on mingw64.
      2012-06-19 getopt-gnu: Fix exit code overflow in autoconf test.
      05730648
  6. 17 Jun, 2012 2 commits
    • Glenn Morris's avatar
      ChangeLog fix · 8da9479c
      Glenn Morris authored
      8da9479c
    • Alp Aker's avatar
      Implement wave-style variant of underlining. · 9b0e3eba
      Alp Aker authored
        * doc/lispref/display.texi: Document new face attribute.
        * lisp/cus-face.el (custom-face-attributes): Add wave-style underline
        attribute.
        * lisp/faces.el (set-face-attribute): Update docstring.
        * src/dispextern.h (face_underline_type): New enum.
        (face): Add field for underline type.
        * src/nsterm.m (ns_draw_underwave): New function.
        (ns_draw_text_decoration): Use it.
        * src/w32term.c (w32_restore_glyph_string_clip, w32_draw_underwave):
        New functions.
        (x_draw_glyph_string): Use them.
        * src/xfaces.c (Qline, Qwave): New Lisp objects.
        (check_lface_attrs, merge_face_ref)
        (Finternal_set_lisp_face_attribute, realize_x_face): Handle
        wave-style underline face attributes.
        * src/xterm.c (x_draw_underwave): New function.
        (x_draw_glyph_string): Use it.
      9b0e3eba
  7. 13 Jun, 2012 1 commit
    • Andreas Schwab's avatar
      Use a simple struct to implement compile time checks for the Lisp_Object type · 646b5f55
      Andreas Schwab authored
      * configure.in: Rename --enable-use-lisp-union-type to
      --enable-check-lisp-object-type and define CHECK_LISP_OBJECT_TYPE
      instead of USE_LISP_UNION_TYPE.
      
      * admin/make-emacs: Rename --union-type to --check-lisp-type.  Define
      CHECK_LISP_OBJECT_TYPE insted of USE_LISP_UNION_TYPE.
      * admin/CPP-DEFINES (DEBUG_LISP_OBJECT_TYPE): Renamed from
      USE_LISP_UNION_TYPE.
      
      * src/lisp.h (Lisp_Object) [CHECK_LISP_OBJECT_TYPE]: Define as struct
      instead of union.
      (XLI, XIL): Define.
      (XHASH, XTYPE, XINT, XUINT, make_number, XSET, XPNTR, XUNTAG): Use
      them.
      * src/emacs.c (gdb_use_struct): Renamed from gdb_use_union.
      * src/.gdbinit: Check gdb_use_struct instead of gdb_use_union.
      * src/alloc.c (widen_to_Lisp_Object): Removed.
      (mark_memory): Use XIL instead of widen_to_Lisp_Object.
      * src/frame.c (delete_frame): Remove outdated comment.
      * src/w32fns.c (Fw32_register_hot_key): Use XLI instead of checking
      USE_LISP_UNION_TYPE.
      (Fw32_unregister_hot_key): Likewise.
      (Fw32_toggle_lock_key): Likewise.
      * src/w32menu.c (add_menu_item): Likewise.
      (w32_menu_display_help): Use XIL instead of checking
      USE_LISP_UNION_TYPE.
      * src/w32heap.c (allocate_heap): Don't check USE_LISP_UNION_TYPE.
      (init_heap): Likewise.
      * src/w32term.c (w32_read_socket): Update comment.
      646b5f55
  8. 12 Jun, 2012 7 commits
  9. 11 Jun, 2012 1 commit
    • Glenn Morris's avatar
      Move SYSTEM_TYPE from src/s to configure · a9be7d2b
      Glenn Morris authored
      * configure.in (SYSTEM_TYPE): New AC_DEFINE.
      
      * msdos/sed2v2.inp (SYSTEM_TYPE): Set it.
      
      * nt/config.nt (SYSTEM_TYPE): Define it.
      
      * src/s/aix4-2.h, src/s/bsd-common.h, src/s/cygwin.h, src/s/darwin.h:
      * src/s/gnu-kfreebsd.h, src/s/gnu-linux.h, src/s/gnu.h, src/s/hpux10-20.h:
      * src/s/irix6-5.h, src/s/ms-w32.h, src/s/msdos.h, src/s/template.h:
      * src/s/usg5-4-common.h: Remove SYSTEM_TYPE.
      a9be7d2b
  10. 09 Jun, 2012 1 commit
  11. 06 Jun, 2012 1 commit
    • Glenn Morris's avatar
      Remove lib-src/vcdiff · 276d5f5d
      Glenn Morris authored
      * lib-src/vcdiff: Remove file.
      * lib-src/Makefile.in (SCRIPTS, STAMP_SCRIPTS): Remove vcdiff.
      (stamp-vcdiff): Remove.
      
      * INSTALL, make-dist: Remove vcdiff.
      
      * lisp/emacs-lisp/authors.el (authors-fixed-entries): Remove vcdiff
      276d5f5d
  12. 03 Jun, 2012 2 commits
    • Glenn Morris's avatar
      Remove lib-src/rcs-checkin · 418cd726
      Glenn Morris authored
      This script isn't used by Emacs, and I can't imagine anyone else is
      using it any more either...  From the commentary:
      "This script is intended to be used to convert files with an
      old-Emacs-style version history for use with VC (the Emacs 19
      version-control interface), which likes to use RCS as its back end."
      
      * lib-src/rcs-checkin: Remove file.
      * lib-src/Makefile.in (INSTALLABLE_SCRIPTS, STAMP_INST_SCRIPTS):
      Remove rcs-checkin.
      (stamp-rcs-checkin): Remove.
      
      * INSTALL, make-dist: Remove rcs-checkin.
      
      * admin/quick-install-emacs (PUBLIC_LIBSRC_SCRIPTS): Remove rcs-checkin.
      
      * doc/man/rcs-checkin.1: Remove.
      418cd726
    • Ulrich Müller's avatar
      Workaround dumping problem on PaX-enabled Linux kernels · c71232db
      Ulrich Müller authored
      * configure.in (PAXCTL): Check for paxctl.
      
      * src/Makefile.in (PAXCTL): Define.
      (temacs$(EXEEXT)): Disable memory randomization for the temacs
      binary via PaX flags if the paxctl utility is available.
      (emacs$(EXEEXT), bootstrap-emacs$(EXEEXT)):
      Restore PaX flags to their default.
      
      Fixes: debbugs:11398
      c71232db
  13. 01 Jun, 2012 2 commits
  14. 28 May, 2012 1 commit
    • Paul Eggert's avatar
      Make 'configure' a bit smaller and faster. · 0e7a053e
      Paul Eggert authored
      * configure.in (INSTALL_INFO): Set it with one call to
      AC_PATH_PROG, not three.
      (PKG_CONFIG): Hoist this out of PKG_CHECK_MODULES, since it's
      so likely that it'll be needed.
      (AC_CHECK_HEADERS_ONCE): Prefer to AC_CHECK_HEADERS where either works.
      (AC_PROG_MAKE_SET): Remove; Automake does this.
      (sysinfo): Do not check for this function, as it's never used.
      (tzset): Check for this function just once.
      * admin/CPP-DEFINES: Remove HAVE_SYSINFO.
      * m4/manywarnings.m4: Sync from gnulib, incorporating the following:
      2012-05-27 manywarnings: remove duplicate -Wmultichar entry
      0e7a053e
  15. 27 May, 2012 3 commits
    • Eli Zaretskii's avatar
      Fix the MSDOS build following gnulib update. · 42a53d84
      Eli Zaretskii authored
       config.bat (lib): Create/update lib/stdalign.in-h and
       lib/sys_types.in-h.
       msods/sedlibmk.inp (GNULIB_GL_UNISTD_H_GETOPT, GNULIB_POSIX_OPENPT)
       (GNULIB_ISATTY, GNULIB_PTSNAME_R, GNULIB_RANDOM)
       (GNULIB_SETHOSTNAME, HAVE_POSIX_OPENPT, HAVE_PTSNAME_R)
       (HAVE_RANDOM, HAVE_SETHOSTNAME, NEXT_SYS_TYPES_H)
       (NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H, REPLACE_FTRUNCATE)
       (REPLACE_ISATTY, REPLACE_PTSNAME_R, REPLACE_RANDOM_R)
       (REPLACE_STRTOIMAX, STDALIGN_H, WINDOWS_64_BIT_OFF_T)
       (WINDOWS_64_BIT_ST_SIZE, GL_GENERATE_STDALIGN_H_TRUE)
       (GL_GENERATE_STDALIGN_H_FALSE): Edit as appropriate for DJGPP.
       (cat FOO): Edit into "sed -e '' FOO >>".
      42a53d84
    • Eli Zaretskii's avatar
      Fix the MS-Windows build broken by 1995-02-25T20:57:45Z!rms@gnu.org. · cd376509
      Eli Zaretskii authored
       lib/makefile.w32-in ($(BLD)/md5.$(O)): 
       ($(BLD)/sha1.$(O)): 
       ($(BLD)/sha256.$(O)): 
       ($(BLD)/sha512.$(O)): Depend on $(EMACS_ROOT)/nt/inc/stdalign.h.
       Suggested by Christoph Scholtes <cschol2112@googlemail.com>.
       lib/getopt_.h: Regenerate.
       nt/inc/stdalign.h: New file.
      
      Fixes: debbugs:11527
      cd376509
    • Paul Eggert's avatar
      Assume gnulib does largefile. · 50c4645e
      Paul Eggert authored
      Gnulib does the largefile configuration anyway, so when configure.in
      invokes AC_SYS_LARGEFILE, that bloats 'configure' unnecessarily.
      * admin/merge-gnulib (GNULIB_MODULES): Add largefile.
      * configure.in (AC_SYS_LARGEFILE): Remove.
      * lib/gnulib.mk: Autoupdate.
      50c4645e
  16. 26 May, 2012 1 commit
  17. 22 May, 2012 3 commits
    • Paul Eggert's avatar
      Remove src/m/*. · 34374650
      Paul Eggert authored
      * configure.in: Remove all mention of src/m/*.
      (machine, machfile, M_FILE, config_machfile, and_machfile): Remove.
      All uses removed.
      (BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
      (BITS_PER_LONG_LONG): Move to src/lisp.h.
      * lib/makefile.w32-in: Remove dependencies on
      $(EMACS_ROOT)/src/m/intel386.h.
      * make-dist: Don't make links to src/m.
      * admin/CPP-DEFINES: Do not mention src/m/*.h.
      (BITS_PER_EMACS_INT, BITS_PER_LONG, BITS_PER_CHAR)
      (BITS_PER_SHORT, BITS_PER_INT): Remove.
      * admin/MAINTAINERS: Remove src/m/.
      * lib-src/makefile.w32-in: Remove dependencies on
      $(EMACS_ROOT)/src/m/intel386.h.
      * msdos/mainmake.v2 (TAGS tags): Don't look at $(CURDIR)/src/m/intel386.h.
      * nt/config.nt: Do not include "m/intel386.h"; file was removed.
      (BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG):
      Move to src/lisp.h.
      (EMACS_INT_MAX): New macro.
      This directory predates autoconf and is no longer needed nowadays.
      Move its few remaining bits of functionality to where they're needed.
      * src/m/README, src/m/alpha.h, src/m/amdx86-64.h, src/m/ia64.h, src/m/ibmrs6000.h:
      * src/m/ibms390x.h, src/m/intel386.h, src/m/m68k.h, src/m/macppc.h:
      * src/m/sparc.h, src/m/template.h: Remove.
      * src/Makefile.in (M_FILE): Remove.  All uses removed.
      * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS):
      * src/lisp.h (USE_LSB_TAG):
      * src/mem-limits.h (EXCEEDS_LISP_PTR):
      Use VAL_MAX, not VALBITS, in #if.
      * src/lisp.h (EMACS_INT_MAX): New macro, useful in #if.
      (EMACS_UINT): Define unconditionally now.
      (BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
      (BITS_PER_EMACS_INT): New constants, replacing
      what used to be in config.h, but not useful in #if.
      (GCTYPEBITS, VALBITS): Define unconditionally, since m/* files don't
      define them any more.
      (VAL_MAX): New macro.
      (VALMASK): Use it.
      * src/puresize.h (PURESIZE_RATIO): Use EMACS_INT_MAX, not
      BITS_PER_EMACS_INT, in #if.
      * src/s/aix4-2.h (BROKEN_FIONREAD, BROKEN_SIGAIO, BROKEN_SIGPTY)
      (BROKEN_SIGPOLL): Move here from m/ibmrs6000.h, which was removed.
      * src/s/gnu-linux.h (ULIMIT_BREAK_VALUE) [__i386__]:
      * src/s/ms-w32.h (DATA_START):
      Move here from removed file m/intel386.h.
      * src/s/gnu.h (NLIST_STRUCT): Remove undef; 'configure' does this.
      * src/s/irix6-5.h (_LP64): Remove; lisp.h no longer needs this.
      34374650
    • Paul Eggert's avatar
      * Makefile.in (ACLOCAL_INPUTS): Fix up gnulib-comp.m4 name. (Bug#11529) · ec21c7f8
      Paul Eggert authored
      Without this further fix, aclocal was being invoked unnecessarily.
      ec21c7f8
    • Glenn Morris's avatar
      More small tweaks for Makefile.in · 39078e4a
      Glenn Morris authored
      * Makefile.in (blessmail, install-arch-dep, uninstall):
      Check cd lib-src works.
      (install-arch-dep, uninstall): Remove unneeded subshells.
      39078e4a
  18. 21 May, 2012 5 commits
    • Glenn Morris's avatar
      * update-subdirs: Move to build-aux/. · ff0c3cfb
      Glenn Morris authored
      * make-dist:
      * Makefile.in (install-arch-indep):
      * lisp/Makefile.in (update-subdirs):
      * lisp/makefile.w32-in (update-subdirs-SH):
      Update for this change.
      ff0c3cfb
    • Glenn Morris's avatar
      Let the top-level Makefile install leim · d10cfddd
      Glenn Morris authored
      * Makefile.in (leimdir): New, set by configure.
      (COPYDIR, COPYDESTS): Add leim directories.
      (install-leim): Remove.
      (install-arch-indep): Handle leim installation directly.
      
      * leim/Makefile.in (install): Remove, let top-level do it.
      (version, prefix, datarootdir, datadir, ns_appresdir, leimdir):
      (MKDIR_P, GZIP_PROG): Remove, no longer used.
      d10cfddd
    • Glenn Morris's avatar
      Remove vpath.sed; unused for literally decades AFAICS · be17565b
      Glenn Morris authored
      * vpath.sed: Remove unused file.
      * make-dist: No more vpath.sed.
      be17565b
    • Paul Eggert's avatar
      Use full name for m4/gnulib-comp.m4. (Bug#11529) · fb77d37e
      Paul Eggert authored
      Previously the file was named m4/gl-comp.m4 due to DOS 8+3 restrictions,
      even though the file's name in gnulib is m4/gnulib-comp.m4.
      This had a problem when merging from gnulib, as the code temporarily
      renamed it to the full name, causing problems when interrupted.
      Now the file has its full name, with the idea that we will find
      a solution for MS-DOS that does not affect the rest of Emacs.
      * m4/gnulib-comp.m4: Rename from m4/gl-comp.m4.
      * admin/merge-gnulib: Leave m4/gnulib-comp.m4's name alone.
      fb77d37e
    • Paul Eggert's avatar
      Assume C89 or later. · 261cb4bb
      Paul Eggert authored
      * configure.in (AC_C_PROTOTYPES, AC_C_VOLATILE, AC_C_CONST)
      (POINTER_TYPE, PROTOTYPES): Remove.
      * admin/CPP-DEFINES: Remove NULL, const.
      * lib-src/etags.c (static, const): Remove macros.
      (PTR): Remove; all uses replaced with void *.  Omit needless casts.
      * src/alloc.c, src/buffer.c, lisp.h: Replace POINTER_TYPE with void.
      * alloc.c (overrun_check_malloc, overrun_check_realloc, xmalloc)
      (xrealloc):
      * buffer.c (mmap_free_1, mmap_enlarge): Omit needless casts.
      * editfns.c, fns.c, gmalloc.c, insdel.c, sysdep.c, termcap.c (NULL):
      * textprop.c, tparam.c (NULL): Remove.
      * ralloc.c, vm-limit.c (POINTER): Assume void * works.
      * regex.c (SIGN_EXTEND_CHAR): Assume signed char works.
      * regex.h (_RE_ARGS): Remove.  All uses rewritten to use prototypes.
      * unexelf.c (ElfBitsW): Assume c89 preprocessor or better.
      * xterm.c (input_signal_count): Assume volatile works.
      261cb4bb