aboutsummaryrefslogtreecommitdiffstats
path: root/nt/ChangeLog (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix bug #17334 with overrunning string bounds when PATH is broken.Eli Zaretskii2014-04-261-0/+5
| | | | | nt/cmdproxy.c (make_absolute): Don't copy more characters from PATH than a single directory name can hold.
* Fix redefinition warning in MinGW64 build.Eli Zaretskii2014-04-211-0/+5
| | | | | nt/inc/ms-w32.h (lseek): Define only if not already a macro. Suggested by Fabrice Popineau <fabrice.popineau@gmail.com>.
* Revert most of the recent change involving manifests on Cygwin. (Bug#17176)Ken Brown2014-04-091-0/+4
| | | | | | | * 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.
* Don't use manifest on Cygwin. (Bug#17176)Ken Brown2014-04-031-0/+4
| | | | | | | * 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.
* */ChangeLog: Trivial fixes.Juanma Barranquero2014-03-031-3/+3
|
* nt/Makefile.in: Follow up to previous change.Juanma Barranquero2014-02-171-2/+2
| | | | | | | nt/Makefile.in (install): Create destination directory before copying README.W32, and use ${datadir} to refer to the file. Fixes: debbugs:16772
* nt/Makefile.in: Fix bug#16772.Juanma Barranquero2014-02-171-0/+5
| | | | | * nt/Makefile.in (install): Create destination directory before copying README.W32.
* Copy README.W32 when installing Windows build (bug#14757).Juanma Barranquero2014-02-131-0/+6
| | | | | | | | * 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.
* Fix bug #14762 with insufficient and outdated w32 installation documentation.Eli Zaretskii2014-02-081-0/+8
| | | | | | nt/INSTALL: Update for Emacs 24.4. nt/README: Update for Emacs 24.4. nt/README.W32: Update and improve instructions.
* * README.W32: Say what GnuTLS and libxml2 does.Lars Ingebrigtsen2014-02-071-0/+4
|
* Fix file name handling on MS-Windows 9X.Eli Zaretskii2014-01-181-0/+6
| | | | | | | | | | | | | | | | | 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.
* ChangeLog fixesGlenn Morris2014-01-161-3/+1
|
* ChangeLog fixesGlenn Morris2014-01-151-5/+5
|
* Fix MS-Windows build with MinGW runtime 4.x.Claudio Bley2014-01-111-0/+5
| | | | | nt/inc/sys/stat.h (_WSTAT_DEFINED): Define, to avoid compilation failures when wchar.h is included.
* Fix minor build problems related to MinGW64.Fabrice Popineau2014-01-111-0/+4
| | | | | | | | | 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.
* ChangeLog fixesGlenn Morris2014-01-101-1/+1
|
* Update copyright year to 2014 by running admin/update-copyright.Paul Eggert2014-01-011-1/+1
|
* Minor fixes for MinGW64 build.Fabrice Popineau2013-12-311-0/+4
| | | | | | | | | | | | | | | | 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.
* Fix bug #16299 with assertion violation in set-default-file-modes on Windows.Eli Zaretskii2013-12-301-0/+4
| | | | | | src/w32.c (sys_umask): New function. nt/inc/ms-w32.h (umask) [emacs]: Redirect to sys_umask.
* Update MS-Windows installation instructions for librsvg.Eli Zaretskii2013-12-231-0/+6
|
* Update Emacs's Windows manifests to support Windows 8.1.Eli Zaretskii2013-12-161-0/+10
| | | | | | | | | | 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.
* Support MS-Windows file names that use characters outside of ANSI codepage.Eli Zaretskii2013-12-121-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Move runtime leim lisp files to lisp/leim directoryGlenn Morris2013-11-261-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows us to reuse much of the lisp build and installation machinery, rather than duplicating it. * Makefile.in (abs_builddir, leimdir): Remove. (buildlisppath, SUBDIR, COPYDIR, COPYDESTS): No more leim directory. (epaths-force-w32): No longer set BLD. (leim): Remove. (install-arch-indep): No longer run or install leim. (mostlyclean, clean): No longer run leim rule. (bootstrap-clean): Change leim target. (maintainer-clean): Add leim. (check-declare): Remove leim. * README: Update for leim changes. * configure.ac (leimdir): Remove. (standardlisppath): No more leimdir. * make-dist: Update for files from leim/ now being in lisp/leim/. * doc/lispref/loading.texi (Library Search): * doc/lispref/os.texi (Startup Summary): No more leim directory. * leim/Makefile.in (leimdir): New variable. (TIT_GB, TIT_BIG5, MISC, changed.tit, changed.misc) (${leimdir}/leim-list.el, ${leimdir}/ja-dic/ja-dic.el): Generate in $leimdir. (all): Remove compilation, add ja-dic. (leim-list.el): Now PHONY. (setwins, compile-targets, compile-main, clean, mostlyclean) (extraclean): Remove. (bootstrap-clean): Delete all generated files. * leim/README: Update for moved leim/ directory. * leim/leim-ext.el (ucs-input-activate, hangul-input-method-activate): Remove manual autoloads; now in loaddefs.el. Disable byte-compile, version-control, autoloads in the output. * lisp/Makefile.in (setwins_for_subdirs): Skip leim/ directory. (compile-main): Depend on lisp/leim rule. (leim): New rule. * lisp/loadup.el: Move leim-list.el to leim/ subdirectory. * lisp/startup.el (normal-top-level): No more leim directory. * lisp/international/ja-dic-cnv.el (skkdic-convert): Disable version-control and autoloads in output files. * lisp/international/titdic-cnv.el (titdic-convert, miscdic-convert): Disable version-control and autoloads in output files. * lisp/leim/quail: Move here from ../leim. * lisp/leim/quail/hangul.el (hangul-input-method-activate): Add autoload cookie. (generated-autoload-load-name): Set file-local value. * lisp/leim/quail/uni-input.el (ucs-input-activate): Add autoload cookie. (generated-autoload-load-name): Set file-local value. * nt/README.W32: * nt/addpm.c (env_vars): * nt/epaths.nt (PATH_LOADSEARCH, PATH_DUMPLOADSEARCH): * nt/paths.h (PATH_LOADSEARCH): No more leim directory. * src/Makefile.in (leimdir): Now in lisp source directory. ($(leimdir)/leim-list.el): Just use ../leim . * src/epaths.in (PATH_DUMPLOADSEARCH): * src/lread.c (load_path_default): * src/nsterm.m (ns_load_path): No more leim directory. * .bzrignore: Update for relocated leim files.
* Preload leim-list.elGlenn Morris2013-11-251-0/+4
| | | | | | | | | | | | | | | | | | | * Makefile.in (abs_builddir): New, set by configure. (buildlisppath): Add leim/. (epaths-force-w32): Set BLD. * lisp/loadup.el: Load leim-list.el when found. * lisp/startup.el (normal-top-level): Skip re-loading leim/leim-list.el. * nt/epaths.nt (PATH_DUMPLOADSEARCH): Add leim/. * src/callproc.c (init_callproc): Don't assume PATH_DUMPLOADSEARCH is a single directory. * src/epaths.in (PATH_DUMPLOADSEARCH): Add leim/. Fixes: debbugs:4789
* Remove nt/msysconfig.shDani Moncayo2013-11-111-0/+5
| | | | | | | | | | | | * configure.ac [MINGW32]: Source nt/mingw-cfg.site. * make-dist: Don't distribute nt/msysconfig.sh. * nt/msysconfig.sh: Remove. * nt/INSTALL: Update for this. * nt/mingw-cfg.site: Comment.
* * nt/mingw-cfg.site: No need for this to be executable.Glenn Morris2013-11-081-0/+4
|
* Avoid non-portable "` ... \"...\" ... `" nestingGlenn Morris2013-10-241-0/+3
| | | | | | | | * configure.ac: * Makefile.in (install-arch-indep, install-etcdoc, install-info): * lib-src/Makefile.in ($(DESTDIR)${archlibdir}): * nt/Makefile.in ($(DESTDIR)${archlibdir}): Avoid non-portable "`\" nesting.
* Attempt at a fix for mingw CPPFLAGSGlenn Morris2013-10-231-0/+4
| | | | | | | | | | | | * configure.ac (CPPFLAGS) [mingw32]: Use abs_top_srcdir. * Makefile.in (abs_top_srcdir): * lib-src/Makefile.in (abs_top_srcdir): * lwlib/Makefile.in (abs_top_srcdir): * nt/Makefile.in (abs_top_srcdir): * oldXMenu/Makefile.in (abs_top_srcdir): * src/Makefile.in (abs_top_srcdir): New, set by configure.
* Progress towards allowing installation in directories with whitespaceGlenn Morris2013-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.in (COPYDESTS, write_subdir, install-arch-dep) (install-arch-indep, install-etcdoc, install-info, install-man) (install-etc, uninstall): Quote entities that might contain whitespace. * build-aux/update-subdirs: Handle whitespace in argument. Check cd return value. * doc/emacs/Makefile.in (install-dvi, install-html, install-pdf) (install-ps, uninstall-dvi, uninstall-html, uninstall-ps) (uninstall-pdf): Quote entities that might contain whitespace. * doc/lispintro/Makefile.in (install-dvi, install-html, install-pdf) (install-ps, uninstall-dvi, uninstall-html, uninstall-ps) (uninstall-pdf): Quote entities that might contain whitespace. * doc/lispref/Makefile.in (install-dvi, install-html, install-pdf) (install-ps, uninstall-dvi, uninstall-html, uninstall-ps) (uninstall-pdf): Quote entities that might contain whitespace. * doc/misc/Makefile.in (install-dvi, install-html, install-pdf) (install-ps, uninstall-dvi, uninstall-html, uninstall-ps) (uninstall-pdf): Quote entities that might contain whitespace. * lib-src/Makefile.in ($(DESTDIR)${archlibdir}, need-blessmail, install) (uninstall): Quote entities that might contain whitespace. * nt/Makefile.in ($(DESTDIR)${archlibdir}, install, uninstall): Quote entities that might contain whitespace.
* Make building in directories with whitespace possibleGlenn Morris2013-10-221-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make has trouble with targets containing whitespace, http://savannah.gnu.org/bugs/?712, so the general approach is to use relative paths where possible. It's generally only Emacs itself that needs absolute paths, eg in src/epaths.h. * configure.ac (srcdir): Don't make it absolute - abs_srcdir exists. * Makefile.in (abs_srcdir): New, set by configure. (buildlisppath): Use abs_srcdir. (install-arch-indep, install-etcdoc, install-info, install-man) (install-etc): Quote entities that might contain whitespace. * admin/unidata/Makefile.in (emacs, ${DSTDIR}/charprop.el): Quote entities that might contain whitespace. * leim/Makefile.in (abs_srcdir): New, set by configure. (buildlisppath): Use abs_srcdir. (RUN_EMACS, .el.elc, changed.tit, changed.misc, leim-list.el) ($(srcdir)/ja-dic/ja-dic.el, setwins, distclean, check-declare): Quote entities that might contain whitespace. * lib-src/Makefile.in ($(DESTDIR)${archlibdir}): Quote entities that might contain whitespace. * lisp/Makefile.in (abs_srcdir, abs_lisp): New, set by configure. (emacs, compile, compile-always): Quote entities that might contain whitespace. (custom-deps, finder-data, autoloads): Use abs_lisp. ($(MH_E_DIR)/mh-loaddefs.el, $(TRAMP_DIR)/tramp-loaddefs.el) ($(CAL_DIR)/cal-loaddefs.el, $(CAL_DIR)/diary-loaddefs.el) ($(CAL_DIR)/hol-loaddefs.el): Manually expand target file name. * nextstep/Makefile.in (${ns_check_file} ${ns_appdir}): Quote entities that might contain whitespace. * nt/Makefile.in ($(DESTDIR)${archlibdir}): Quote entities that might contain whitespace. * src/Makefile.in (RUN_TEMACS): Make relative (again). ($(leimdir)/leim-list.el, .el.elc, $(lispsource)/loaddefs.el) (bootstrap-emacs$(EXEEXT)): Quote entities that might contain whitespace. * test/automated/Makefile.in (abs_top_srcdir, top_builddir): New, set by configure. (top_srcdir): Remove. (abs_test, abs_lispsrc): New. (lisp): No longer absolute. (emacs, lisp-compile, compile, compile-always): Quote entities that might contain whitespace. Fixes: debbugs:15675
* Attempt to fix time_t related problems with MinGW 4.0 runtime.Eli Zaretskii2013-10-141-0/+6
| | | | | | | | nt/inc/mingw_time.h: New file. nt/inc/ms-w32.h: Include mingw_time.h instead of doing its job. src/w32proc.c: Include mingw_time.h. src/w32.c: Include mingw_time.h.
* Make the MinGW32 build compatible with MinGW runtime 4.x.Eli Zaretskii2013-10-121-0/+12
| | | | | | | | | | | nt/inc/dirent.h (struct dirent) [__MINGW_MAJOR_VERSION >= 4]: Make the layout of 'struct dirent' be compatible with MinGW32 runtime versions 4.0 and later. nt/inc/ms-w32.h (__MINGW_MAJOR_VERSION, __MINGW_MINOR_VERSION) (__MINGW_PATCHLEVEL) [!__MINGW64_VERSION_MAJOR]: Define, if not defined, but not for MinGW64. (_USE_32BIT_TIME_T) [__MINGW64_VERSION_MAJOR]: Define, to force use of 32-bit time_t type.
* Improve support for popcount and counting trailing zeros.Paul Eggert2013-10-071-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do this by using the Gnulib modules for this. This should generate faster code on non-GCC, non-MSC platforms, and make the code a bit more portable, at least in theory. * admin/merge-gnulib (GNULIB_MODULES): Add count-one-bits and count-trailing-zeros. * lib/count-one-bits.c, lib/count-one-bits.h: * lib/count-trailing-zeros.c, lib/count-trailing-zeros.h: * m4/count-one-bits.m4, m4/count-trailing-zeros.m4: New files, copied from gnulib. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. * nt/gnulib.mk: Merge changes from lib/gnulib.mk. * src/data.c: Include <count-one-bits.h>, <count-trailing-zeros.h>. (USE_MSC_POPCOUNT, POPCOUNT_STATIC_INLINE) (NEED_GENERIC_POPCOUNT, popcount_size_t_generic) (popcount_size_t_msc, popcount_size_t_gcc): Remove; now done by Gnulib. (popcount_size_t): Now a macro that defers to Gnulib. (count_trailing_zero_bits): Return int, for consistency with Gnulib and because Emacs prefers signed to unsigned int. Don't assume that size_t is either unsigned int or unsigned long or unsigned long long. (size_t_to_host_endian): Do not assume that size_t is either exactly 32 or exactly 64 bits wide. * src/lisp.h (BITS_PER_SIZE_T): Define consistently with BITS_PER_LONG etc., so that it's now an enum constant, not a macro. No need to assume that it's either 32 or 64. Fixes: debbugs:15550
* In nt/gnulib.mk create <byteswap.h> from <byteswap.in.h>.Paul Eggert2013-10-041-0/+4
| | | | * gnulib.mk: Create <byteswap.h> from <byteswap.in.h>.
* Avoid replacing 'struct timeval' and compiling lib/gettimeofday.c on MinGW.Eli Zaretskii2013-09-201-0/+9
| | | | | | | | | nt/mingw-cfg.site (gl_cv_sys_struct_timeval_tv_sec): Set to "yes" to avoid gnulib replacement of 'struct timeval' and the resulting compilation of lib/gettimeofday.c with incompatible version of gettimeofday. Related discussions on emacs-devel: http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00286.html http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00361.html
* Update nt installation instructions to point to supported methodGlenn Morris2013-08-311-0/+6
| | | | | | | | | | * nt/INSTALL: Rename from INSTALL.MSYS. * nt/INSTALL.OLD: Rename from INSTALL. * nt/configure.bat: Update for INSTALL name changes. * make-dist: Update for nt/INSTALL* changes.
* Add a question into configure.bat whether the user want to continue atVincent Belaïche2013-08-251-0/+6
| | | | his/her own risks.
* * INSTALL: Refer to INSTALL.MSYS.Glenn Morris2013-08-251-0/+1
|
* * nt/configure.bat: Disable it.Glenn Morris2013-08-251-2/+5
| | | | Ref http://lists.gnu.org/archive/html/emacs-devel/2013-08/msg00705.html
* Minor fix of the last commit.Eli Zaretskii2013-08-041-0/+1
|
* Implement mkostemp for MS-Windows.Eli Zaretskii2013-08-041-0/+9
| | | | | | | | | | | nt/mingw-cfg.site (ac_cv_func_mkostemp): New var with value of "yes". nt/inc/ms-w32.h (mkostemp): Declare prototype. nt/config.nt (HAVE_MKOSTEMP): Define to 1. src/w32.c (mkostemp): New function. (mktemp): Remove, no longer used. Most of the code reused in mkostemp. Fixes: debbugs:15015
* MS-Windows followup for 2013-07-07T18:00:14Z!eggert@cs.ucla.edu.Eli Zaretskii2013-07-071-0/+5
| | | | | | | | | | | nt/inc/sys/socket.h (F_SETFD, O_CLOEXEC, F_DUPFD_CLOEXEC) (FD_CLOEXEC): New macros. src/w32.c (sys_dup): Declare prototype. src/filelock.c: src/emacs.c: src/callproc.c [WINDOWSNT]: Include sys/socket.h.
* Make file descriptors close-on-exec when possible.Paul Eggert2013-07-071-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This simplifies Emacs a bit, since it no longer needs to worry about closing file descriptors by hand in some cases. It also fixes some unlikely races. Not all such races, as libraries often open files internally without setting close-on-exec, but it's an improvement. * admin/merge-gnulib (GNULIB_MODULES): Add fcntl, pipe2. (GNULIB_TOOL_FLAGS): Avoid binary-io, close. Do not avoid fcntl. * configure.ac (mkostemp): New function to check for. (PTY_OPEN): Pass O_CLOEXEC to posix_openpt. * lib/fcntl.c, lib/getdtablesize.c, lib/pipe2.c, m4/fcntl.m4: * m4/getdtablesize.m4, m4/pipe2.m4: New files, taken from gnulib. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. * nt/gnulib.mk: Remove empty gl_GNULIB_ENABLED_verify section; otherwise, gnulib-tool complains given close-on-exec changes. * nt/inc/ms-w32.h (pipe): Remove. * nt/mingw-cfg.site (ac_cv_func_fcntl, gl_cv_func_fcntl_f_dupfd_cloexec) (gl_cv_func_fcntl_f_dupfd_works, ac_cv_func_pipe2): New vars. * src/alloc.c (valid_pointer_p) [!WINDOWSNT]: * src/callproc.c (Fcall_process) [!MSDOS]: * src/emacs.c (main) [!DOS_NT]: * src/nsterm.m (ns_term_init): * src/process.c (create_process): Use 'pipe2' with O_CLOEXEC instead of 'pipe'. * src/emacs.c (Fcall_process_region) [HAVE_MKOSTEMP]: * src/filelock.c (create_lock_file) [HAVE_MKOSTEMP]: Prefer mkostemp with O_CLOEXEC to mkstemp. * src/callproc.c (relocate_fd) [!WINDOWSNT]: * src/emacs.c (main): Use F_DUPFD_CLOEXEC, not plain F_DUPFD. No need to use fcntl (..., F_SETFD, FD_CLOEXEC), since we're now using pipe2. * src/filelock.c (create_lock_file) [! HAVE_MKOSTEMP]: Make the resulting file descriptor close-on-exec. * src/lisp.h, src/lread.c, src/process.c (close_load_descs, close_process_descs): * src/lread.c (load_descriptor_list, load_descriptor_unwind): Remove; no longer needed. All uses removed. * src/process.c (SOCK_CLOEXEC): Define to 0 if not supplied by system. (close_on_exec, accept4, process_socket) [!SOCK_CLOEXEC]: New functions. (socket) [!SOCK_CLOEXEC]: Supply a substitute. (Fmake_network_process, Fnetwork_interface_list): (Fnetwork_interface_info, server_accept_connection): Make newly-created socket close-on-exec. * src/sysdep.c (emacs_open, emacs_fopen): Make new-created descriptor close-on-exec. * src/w32.c (fcntl): Support F_DUPFD_CLOEXEC well enough for Emacs. * src/w32.c, src/w32.h (pipe2): Rename from 'pipe', with new flags arg. Fixes: debbugs:14803
* nt/configure.bat: Warn about deprecation status.Juanma Barranquero2013-06-251-0/+5
|
* Fix ChangeLog typos and whitespace.Juanma Barranquero2013-06-101-4/+4
|
* Minor improvements in nt/INSTALL.MSYS instructions.Eli Zaretskii2013-06-071-0/+7
| | | | | | | nt/INSTALL.MSYS: mingw-get is not a GUI program (yet). msys-automake is not suitable for MinGW builds. Mention the --enable-locallisppath switch to msysconfig.sh. Suggested by ׃scar Fuentes <ofv@wanadoo.es>.
* Fix bug #14513 with --enable-locallisppath not working on MS-Windows.Richard Copley2013-06-071-0/+4
| | | | | | | | | | | Makefile.in (msys_to_w32): Modify to support d:\foo file names. (msys_lisppath_to_w32, msys_prefix_subst, msys_sed_sh_escape): New variables. (epaths-force-w32): Use them. epaths.nt (PATH_SITELOADSEARCH): Fix commentary. epaths.in: Fix commentary to PATH_SITELOADSEARCH.
* * configure.ac (HAVE_GFILENOTIFY): Do not change $LIBS.Eli Zaretskii2013-06-031-0/+4
| | | | | | | | | | | | | | | (GFILENOTIFY_CFLAGS, GFILENOTIFY_LIBS): Substitute. * nt/config.nt: Add HAVE_GFILENOTIFY, HAVE_W32NOTIFY and USE_FILE_NOTIFY. * src/Makefile.in (GFILENOTIFY_CFLAGS, GFILENOTIFY_LIBS): New variables. (ALL_CFLAGS): Add $(GFILENOTIFY_CFLAGS). (LIBES): Add $(GFILENOTIFY_LIBS). * src/w32inevt.c (handle_file_notifications): Add dummy implementation for !HAVE_W32NOTIFY. * src/w32term.c: Wrap code with HAVE_W32NOTIFY.
* Attempt to resolve gettimeofday compilation errors with MinGW64.Eli Zaretskii2013-06-031-0/+4
| | | | | | | src/w32.c (gettimeofday): Make the signature identical to prototype in nt/inc/sys/time.h. nt/inc/sys/time.h (struct timeval): Remove the _W64 guards.
* Fix compilation error on MinGW64 due to nt/inc/sys/time.h.Eli Zaretskii2013-06-011-0/+5
| | | | | nt/inc/sys/time.h [!_TIMEZONE_DEFINED]: Define _TIMEZONE_DEFINED to avoid multiple definition errors on MinGW64.