1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-28 08:11:05 -08:00
Commit graph

1154 commits

Author SHA1 Message Date
Glenn Morris
36cf8493af Merge from emacs-24; up to 2014-06-01T23:37:59Z!eggert@cs.ucla.edu 2014-06-07 17:35:27 -07:00
Dmitry Antipov
ea633fff4c * configure.ac (POLL_FOR_INPUT): Define with HAVE_WINDOW_SYSTEM.
* nt/inc/ms-w32.h (POLL_FOR_INPUT): Likewise.
* src/keyboard.c, src/process.c: Do not define POLL_FOR_INPUT here
because it will be defined in generated config.h if needed.
2014-06-05 10:24:54 +04:00
Eli Zaretskii
a56ae34d22 nt/INSTALL: Instructions how to start Bash. 2014-06-04 19:44:04 +03:00
Eli Zaretskii
1bb596eece nt/ChangeLog: Fix last entry. 2014-05-29 22:19:18 +03:00
Eli Zaretskii
7479dd3e8a Remove nt/addsection.c and don't build addsection.exe.
configure.ac (ADDSECTION, TEMACS_POST_LINK): Don't compute,
 unused.

 nt/Makefile.in (DONT_INSTALL): Now empty.
 (addsection${EXEEXT}): Remove target.
 nt/addsection.c: File removed.

 src/Makefile.in (TEMACS_POST_LINK): Remove target.
 (emacs$(EXEEXT)): Remove $(ADDSECTION) from prerequisites.
 (temacs$(EXEEXT)): Remove $(TEMACS_POST_LINK) from the recipe.
2014-05-29 22:16:32 +03:00
Fabrice Popineau
587fd086a0 Use mmap(2) emulation for buffer text on MS-Windows.
src/Makefile.in (C_HEAP_SWITCH): Get the predefined heap size from
 configure.
 (ADDSECTION, MINGW_TEMACS_POST_LINK): Remove, no longer used.
 src/lisp.h (NONPOINTER_BITS): Modify the condition to define to zero
 for MinGW, since it no longer uses gmalloc.
 src/buffer.c: Do not define mmap allocations functions for Windows.
 Remove mmap_find which is unused. Remove mmap_set_vars which does
 nothing useful.
 [WINDOWSNT]: Include w32heap.h.
 (init_buffer): Always allocate new memory for buffers.
 src/emacs.c: Remove mmap_set_vars calls.
 src/image.c (free_image): Undef free for Windows because it is
 redirected to our private version.
 src/unexw32.c (COPY_PROC_CHUNK): Use %p format for 64bits
 compatibility.
 (copy_executable_and_dump_data): Remove dumping the heap section.
 (unexec): Restore using_dynamic_heap after dumping.
 src/w32heap.c (dumped_data_commit, malloc_after_dump)
 (malloc_before_dump, realloc_after_dump, realloc_before_dump)
 (free_after_dump, free_before_dump, mmap_alloc, mmap_realloc)
 (mmap_free): New functions.
 src/w32heap.h: Declare dumped_data and mmap_* function prototypes.

 nt/inc/ms-w32.h: Switch to the system heap allocation scheme
 instead of GNU malloc and ralloc.
 nt/inc/sys/mman.h: New file.
 nt/INSTALL: Update for the new build requirements.

 etc/NEWS: Mention build changes on MS-Windows.

 configure.ac (C_HEAP_SWITCH) define for different values of
 dumped heap size depending on 32/64bits arch on Windows.
 Don't check for pthreads.h on MinGW32/64, it gets in the way.
 Use mmap(2) for buffers and system malloc for MinGW32/64.
2014-05-27 20:31:17 +03:00
Paul Eggert
8208d2bf95 Assume C99 or later.
* lib/stdarg.in.h, lib/stdbool.in.h, m4/stdarg.m4, m4/stdbool.m4:
Remove.
* configure.ac (_AC_PROG_CC_C89): Define a dummy, to keep 'configure'
smaller.
(gl_PROG_CC_C99): Use this to get C99 or later.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* admin/merge-gnulib (GNULIB_MODULES): Remove stdarg, stdbool.
(GNULIB_TOOL_FLAGS): Avoid stdarg, stdbool.
* doc/lispref/internals.texi (C Dialect): Document this.
* etc/NEWS: Document this.
* nt/gnulib.mk: Remove stdarg and stdbool modules.
* src/bytecode.c (B__dummy__): Remove.
* src/conf_post.h (bool_bf) [!NS_IMPL_GNUSTEP]: Use bool.
(FLEXIBLE_ARRAY_MEMBER): Now always empty.
* src/dbusbind.c (XD_DEBUG_MESSAGE) [!DBUS_DEBUG]:
* src/regex.c (DEBUG_PRINT): Assume varargs macros.
* src/lisp.h (DEFUN_FUNCTION_INIT): Remove.  All uses now assume C99.

Fixes: debbugs:17487
2014-05-17 01:11:31 -07:00
Paul Eggert
c56327b55d Don't require pkg-config when building from repository.
* INSTALL: Prefer './configure FOO=BAR' to 'FOO=BAR ./configure'.
* INSTALL.REPO: pkg-config is no longer required to build from
the repository.
* autogen.sh: Don't check for pkg-config.
(progs): Remove pkg-config.
(pkg_config_min, AUTORECONF_ENV, env_space, ACLOCAL_PATH):
Remove.  All uses removed.
* m4/pkg.m4: New file, built by admin/merge-pkg-config.
* configure.ac: Remove unnecessary m4_pattern_forbid of ^PKG_ and
an AC_ARG_VAR of PKG_CONFIG_PATH.  pkg.m4 does that for us.
(EMACS_CHECK_MODULES): Remove workaround for old pkg-config bug,
as we use pkg.m4 from a newer pkg-config.
* admin/merge-pkg-config: New script.
* admin/notes/copyright: Update for m4/*.m4, in particular m4/pkg.m4.
* etc/NEWS: Prefer './configure FOO=BAR' to 'FOO=BAR ./configure'.
* etc/PROBLEMS (Build-time-problems): Remove pkg-config problem
that is no longer an issue.
* nt/INSTALL: Remove no-longer-needed notes about pkg-config.
2014-05-16 08:49:13 -07:00
Glenn Morris
5c06e5e758 Bump version to 24.3.91 2014-05-11 23:11:08 -07:00
Eli Zaretskii
fa8e9c09f3 nt/INSTALL: Minor rearrangement of text for clarity. 2014-05-08 19:22:35 +03:00
Eli Zaretskii
1e125ee226 nt/INSTALL: More details about creating the build environment. 2014-05-08 18:38:02 +03:00
Eli Zaretskii
9db5046c10 Update nt/INSTALL for the latest changes in configury.
nt/INSTALL: Update to the effect that pkg-config is now required
 for building from the repository.
2014-05-05 13:06:04 +03:00
Juanma Barranquero
09b911adf4 Merge from emacs-24; up to 2014-05-01T10:21:17Z!rgm@gnu.org 2014-04-30 21:54:52 +02:00
Eli Zaretskii
7ece6d4014 Fix bug #17334 with overrunning string bounds when PATH is broken.
nt/cmdproxy.c (make_absolute): Don't copy more characters from PATH
 than a single directory name can hold.
2014-04-26 10:06:33 +03:00
Paul Eggert
42e910349d Merge from emacs-24; up to 2014-04-22T20:19:17Z!eggert@cs.ucla.edu 2014-04-22 14:32:51 -07:00
Eli Zaretskii
e3188b2df1 Fix redefinition warning in MinGW64 build.
nt/inc/ms-w32.h (lseek): Define only if not already a macro.
 Suggested by Fabrice Popineau <fabrice.popineau@gmail.com>.
2014-04-21 09:37:21 +03:00
Glenn Morris
536aa46681 Merge from emacs-24; up to 2014-04-04T23:31:02Z!joaotavora@gmail.com 2014-04-10 23:43:20 -07:00
Glenn Morris
b6e870b336 Bump version to 24.3.90; regenerate AUTHORS 2014-04-10 22:53:02 -07:00
Ken Brown
0cccc183d7 Revert most of the recent change involving manifests on Cygwin. (Bug#17176)
* configure.ac (EMACS_MANIFEST): Revert last change (but leave
UPDATE_MANIFEST empty).
* nt/emacs.rc: Revert last change.
* src/Makefile.in (EMACS_MANIFEST): Revert last change.
2014-04-09 17:16:37 -04:00
Glenn Morris
6f287c898a ChangeLog fixes
Merged entries get today's date.
May as well combine consecutive separate entries by same author into one.
Backported entries should not appear twice.
2014-04-07 17:19:31 -04:00
Daniel Colascione
7e31acf6b8 Merge from emacs-24; up to 2014-04-01T20:18:12Z!eggert@cs.ucla.edu 2014-04-07 13:54:16 -07:00
Ken Brown
ebe8e0765c Don't use manifest on Cygwin. (Bug#17176)
* nt/emacs.rc: Don't use manifest on Cygwin.
* configure.ac (EMACS_MANIFEST, UPDATE_MANIFEST): Leave these
variables empty on Cygwin. 
* src/Makefile.in (EMACS_MANIFEST): Update comment.
2014-04-03 15:10:35 -04:00
Juanma Barranquero
09aba8153a Merge from emacs-24; up to 2014-03-28T01:39:30Z!rgm@gnu.org 2014-04-02 17:14:50 +02:00
Eli Zaretskii
34cad8271d nt/INSTALL: Minor fixes. 2014-03-30 21:55:19 +03:00
Eli Zaretskii
a502d89381 Bump trunk version to 24.4.50.
modified files:
   ChangeLog
   README
   configure.ac
   doc/emacs/emacsver.texi
   doc/man/emacs.1
   msdos/sed2v2.inp
   nt/config.nt
   nt/emacs.rc
   nt/emacsclient.rc
   nt/makefile.w32-in
2014-03-21 12:12:53 +02:00
Juanma Barranquero
35e951cd4b */ChangeLog: Trivial fixes. 2014-03-03 05:57:26 +01:00
Glenn Morris
d7265107d2 * nt/INSTALL: Prefix must be absolute. 2014-02-17 16:45:43 -08:00
Juanma Barranquero
f260162808 nt/Makefile.in: Follow up to previous change.
nt/Makefile.in (install): Create destination directory before copying
README.W32, and use ${datadir} to refer to the file.

Fixes: debbugs:16772
2014-02-17 20:04:51 +01:00
Juanma Barranquero
1bba94f235 nt/Makefile.in: Fix bug#16772.
* nt/Makefile.in (install): Create destination directory before
copying README.W32.
2014-02-17 20:01:14 +01:00
Juanma Barranquero
1a4c95f664 Copy README.W32 when installing Windows build (bug#14757).
* Makefile.in (install-nt): Also pass datadir.

* nt/Makefile.in (datarootdir, datadir, INSTALL_DATA): Declare.
(install): Copy README.W32 to $(datadir)/emacs/$(version).
(uninstall): Remove README.W32.
2014-02-13 04:19:57 +01:00
Eli Zaretskii
c8740fa21b Fix bug #14762 with insufficient and outdated w32 installation documentation.
nt/INSTALL: Update for Emacs 24.4.
 nt/README: Update for Emacs 24.4.
 nt/README.W32: Update and improve instructions.
2014-02-08 12:25:33 +02:00
Lars Ingebrigtsen
fdb510756f * README.W32: Say what GnuTLS and libxml2 does. 2014-02-07 22:36:11 -08:00
Eli Zaretskii
5197f0c2fe Fix file name handling on MS-Windows 9X.
src/w32.c (maybe_load_unicows_dll): New function.
 src/emacs.c (main) [WINDOWSNT]: Call maybe_load_unicows_dll early
 on, to make sure we can convert file names to and from UTF-8 on
 Windows 9X.  This fixes a failure to start up because Emacs cannot
 find term/w32-win.el.  Reported by oslsachem <oslsachem@gmail.com>.
 src/w32font.c [WINDOWSNT]: Include w32.h.
 (w32_load_unicows_or_gdi32): Call maybe_load_unicows_dll, instead
 of implementing the same stuff.
 Remove now unused g_b_init_is_windows_9x.
 src/w32.h (maybe_load_unicows_dll): Add prototype.

 nt/runemacs.c (ensure_unicows_dll): Don't tell in the message box
 that "emacs -nw" can do without UNICOWS.DLL on Windows 9X.  See
 w32.c:maybe_load_unicows_dll and its callers for the reason.
2014-01-18 13:46:22 +02:00
Glenn Morris
d967cd184c ChangeLog fixes 2014-01-16 00:34:43 -08:00
Paul Eggert
c91c771dbe Spelling fixes. 2014-01-15 22:24:06 -08:00
Glenn Morris
c6c863df8d ChangeLog fixes 2014-01-15 00:49:38 -08:00
Claudio Bley
f0b5cd897f Fix MS-Windows build with MinGW runtime 4.x.
nt/inc/sys/stat.h (_WSTAT_DEFINED): Define, to avoid compilation
 failures when wchar.h is included.
2014-01-11 16:48:51 +02:00
Fabrice Popineau
e05d3a05bf Fix minor build problems related to MinGW64.
configure.ac: Read $srcdir/nt/mingw-cfg.site when $MSYSTEM is
 "MINGW64" as well.

 nt/inc/ms-w32.h (pthread_sigmask): Undefine if defined, for MinGW64.

 src/unexw32.c (_start) [__MINGW64__]: Define to __start.
2014-01-11 15:36:06 +02:00
Glenn Morris
a12bf61ed4 ChangeLog fixes 2014-01-10 19:55:50 -08:00
Paul Eggert
06827ec842 Spelling fixes.
* mail/unrmail.el (unrmail-mbox-format): Choice is mboxo, not mboxro.
* woman.el (woman-mark-horizontal-position):
Rename from woman-mark-horizonal-position.  Use changed.
2014-01-09 23:10:37 -08:00
Eric S. Raymond
314668368c Clean up unnecessary references to Bazaar. Documentation changes only. 2014-01-08 19:10:07 -05:00
Eric S. Raymond
ac4c50ad33 Rename INSTALL.BZR to UNSTALL.REPOm and carry that through in other files. 2014-01-08 18:24:54 -05:00
Paul Eggert
6bc383b1a4 Fix copyright years by hand.
These are dates that admin/update-copyright did not update,
or updated incorrectly.
2014-01-01 00:31:29 -08:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Fabrice Popineau
bd717ca4f4 Minor fixes for MinGW64 build.
configure.ac (canonical, C_SWITCH_SYSTEM): Support a 64-bit
 MinGW64 build on MS-Windows.

 nt/inc/ms-w32.h (sys_kill): Fix prototype.

 src/w32term.c (w32_initialize): Use LCID and LOWORD.
 src/w32proc.c (create_child): Use pid_t for 5th argument.
 (IsValidLocale): Don't provide prototype for MinGW64.
 (Fw32_get_valid_keyboard_layouts, Fw32_get_keyboard_layout)
 (Fw32_set_keyboard_layout): Use HKL and HIWORD/LOWORD.
 src/w32heap.c (allocate_heap) [_WIN64]: Use "ull", not "i64", which
 MinGW64 doesn't support.
 src/lisp.h (EMACS_INT) [_WIN64]: Define for the MinGW64 build.
2013-12-31 18:01:34 +02:00
Eli Zaretskii
1b7259fce2 Fix bug #16299 with assertion violation in set-default-file-modes on Windows.
src/w32.c (sys_umask): New function.

 nt/inc/ms-w32.h (umask) [emacs]: Redirect to sys_umask.
2013-12-30 19:51:28 +02:00
Eli Zaretskii
6313576256 Update MS-Windows installation instructions for librsvg. 2013-12-23 20:32:58 +02:00
Eli Zaretskii
2f43a3ee6a Update Emacs's Windows manifests to support Windows 8.1.
nt/emacs-x64.manifest:
 nt/emacs-x86.manifest: Declare that we target Windows 8.1 as well
 as earlier versions.  This is so GetVersion and GetVersionEx APIs
 used for bug reporting and other purposes return accurate version
 number on Windows 8.1.  See the discussion on MSDN
 http://msdn.microsoft.com/en-us/library/windows/desktop/dn302074.aspx
 for more details.
2013-12-16 20:18:44 +02:00
Eli Zaretskii
01633a17e7 Support MS-Windows file names that use characters outside of ANSI codepage.
src/w32.c (get_file_security, set_file_security)
 (create_symbolic_link): Separate pointers and boolean flags for
 ANSI and Unicode APIs.  Use the latter if w32_unicode_filenames is
 non-zero, else the former.
 (codepage_for_filenames, filename_to_utf16, )
 (filename_from_utf16, filename_to_ansi, filename_from_ansi): New
 functions.
 (init_user_info): Allow $HOME and $SHELL to include non-ANSI
 characters.
 (normalize_filename): Lose the DBCS code, now works on UTF-8.
 Accept only one argument; all callers changed.
 (dostounix_filename): Remove the second argument, now works in
 UTF-8.  All callers changed.
 (parse_root): Lose DBCS code.
 (get_long_basename, w32_get_short_filename, init_environment)
 (GetCachedVolumeInformation, sys_readdir, open_unc_volume)
 (read_unc_volume, logon_network_drive, faccessat, sys_chdir)
 (sys_chmod, sys_creat, sys_fopen, sys_link, sys_mkdir, sys_open)
 (sys_rename_replace, sys_rmdir, sys_unlink, stat_worker, utime)
 (is_symlink, readlink, chase_symlinks, w32_delayed_load): Work in
 Unicode mode if w32_unicode_filenames is non-zero, in ANSI mode
 otherwise.
 (ansi_encode_filename): New function.
 (get_emacs_configuration, get_emacs_configuration_options):
 Functions deleted.
 (add_volume_info, GetCachedVolumeInformation): Run the input file
 name through unixtodos_filename, to ensure it is stored and
 referenced in canonical form.
 (get_volume_info): Lose the DBCS code, now works in UTF-8.
 (logon_network_drive, sys_link, utime): Improve error handling.
 (sys_access): New function.
 (hashval, generate_inode_val): Unused functions deleted.
 (symlink, readlink, readlinkat): Lose DBCS code, now works in UTF-8.
 (check_windows_init_file): Convert error message from UTF-8 to
 ANSI codepage, for display in the message box.
 (globals_of_w32): Set w32_unicode_filenames according to the OS
 version.
 src/w32term.c (construct_drag_n_drop): Work in Unicode mode when
 w32_unicode_filenames is non-zero, ANSI mode otherwise.
 (syms_of_w32term): Declare w32-unicode-filenames.
 src/w32proc.c (new_child, delete_child): Remove code that handled
 unused pending_deletion and input_file members of the child struct.
 (create_child, sys_spawnve): Convert all file names to ANSI
 codepage.  Use ANSI APIs explicitly; forcibly fail if any file
 name cannot be encoded in ANSI codepage.  Don't use
 unixtodos_filename, mirror slashes by hand.
 (record_infile, record_pending_deletion): Functions deleted.
 (Fw32_short_file_name): Call w32_get_short_filename instead of
 GetShortPathName.
 src/w32notify.c (add_watch): Work in Unicode mode when
 w32_unicode_filenames is non-zero, ANSI mode otherwise.
 (Fw32notify_add_watch): Rewrite to avoid using GetFullPathName;
 instead, do the same with Lisp primitives.
 src/w32fns.c (file_dialog_callback, Fx_file_dialog)
 (Fsystem_move_file_to_trash, Fw32_shell_execute)
 (Ffile_system_info, Fdefault_printer_name): Work in Unicode mode
 when w32_unicode_filenames is non-zero, ANSI mode otherwise.
 (Fw32_shell_execute): Improve error reporting.
 (Fdefault_printer_name): Ifdef away for Cygwin.
 src/w32.h (struct _child_process): Remove input_file and
 pending_deletion members that are no longer used.
 (dostounix_filename, w32_get_short_filename, filename_from_ansi)
 (filename_to_ansi, filename_from_utf16, filename_to_utf16)
 (ansi_encode_filename): New and updated prototypes.
 src/unexw32.c (open_input_file, open_output_file, unexec): Use ANSI
 APIs explicitly.
 (unexec): Don't use dostounix_filename, it expects a file name in
 UTF-8.  Instead, mirror backslashes by hand.  Convert NEW_NAME to
 ANSI encoding.
 src/fileio.c (Ffile_name_directory, file_name_as_directory)
 (directory_file_name, Fexpand_file_name)
 (Fsubstitute_in_file_name) [WINDOWSNT]: Adapt to the change in
 arguments of dostounix_filename.
 (Fexpand_file_name) [WINDOWSNT]: Convert value of $HOME to UTF-8.
 use MAX_UTF8_PATH for size of file-name strings.
 (emacs_readlinkat): Build an explicitly unibyte string for file
 names.
 (syms_of_fileio) <file-name-coding-system>
 default-file-name-coding-system>: Mention MS-Windows peculiarities.
 src/emacs.c (init_cmdargs) [WINDOWSNT]: Convert argv[0] to UTF-8.
 (main) [WINDOWSNT]: Convert the argv[] elements that are files or
 directories to UTF-8.
 (decode_env_path) [WINDOWSNT]: Convert file names taken from the
 environment, and each element of the input PATH, to UTF-8.
 src/dired.c (file_attributes): Use build_unibyte_string explicitly
 to make Lisp strings from user and group names.
 src/coding.h (ENCODE_FILE, DECODE_FILE): Just call encode_file and
 decode_file.
 src/coding.c (decode_file_name, encode_file_name): New functions.
 src/termcap.c (tgetent): Adapt to the change in arguments of
 dostounix_filename.
 src/sysdep.c (sys_subshell) [WINDOWSNT]: Use MAX_UTF8_PATH for file
 names.
 src/msdos.c (dostounix_filename, init_environment): Adapt to the
 change in arguments of dostounix_filename.
 src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
 [WINDOWSNT]: Encode file names passed to the image libraries in
 ANSI codepage.
 src/gnutls.c (Fgnutls_boot): Encode all file names passed to GnuTLS.
 [WINDOWSNT]: Convert file names to the current ANSI codepage.
 src/filelock.c (lock_file) [WINDOWSNT]: Adapt to the change in
 arguments of dostounix_filename.

 nt/inc/ms-w32.h (MAX_UTF8_PATH): New macro.
 (opendir, closedir, readdir, seekdir): Redirect to replacement
 functions.
 nt/inc/dirent.h: Make d_name[] be MAXNAMELEN*4 characters long.

 lisp/term/w32-win.el (w32-handle-dropped-file):
 lisp/startup.el (normal-top-level):
 lisp/net/browse-url.el (browse-url-file-url):
 lisp/dnd.el (dnd-get-local-file-name): On MS-Windows, encode and
 decode file names using 'utf-8' rather than
 file-name-coding-system.

 doc/emacs/mule.texi (File Name Coding): Document file-name encoding
 peculiarities on MS-Windows.

 doc/lispref/nonascii.texi (Encoding and I/O): Document file-name encoding
 peculiarities on MS-Windows.

 etc/NEWS: Mention support on MS-Windows of file names outside of the
 current locale.

Fixes: debbugs:7100
2013-12-12 20:19:10 +02:00
Eli Zaretskii
ce1d7b61f1 Merge from trunk. 2013-12-07 19:21:57 +02:00