1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-26 10:49:33 +00:00
emacs/nt
Eli Zaretskii cb5af79249 Fix compiler warnings in the MinGW build
* configure.ac [mingw32]: Don't add -Wpointer-sign, and add
-Wno-pointer-sign, to keep the noise level down.

* nt/mingw-cfg.site (gl_cv_warn_c__Wredundant_decls): Disable
-Wredundant-decls, as that produces a lot of noise due to
redeclaration of time-related functions by gnulib.
* nt/runemacs.c (set_user_model_id): Fix argument type of
'SetCurrentProcessExplicitAppUserModelID'.

* src/image.c (x_create_bitmap_from_file) [HAVE_NTGUI]: Don't
declare 'dpyinfo', as it is unused.
(xpm_load): Fix warnings about pointer signedness.
* src/w32proc.c (IsValidLocale, init_winsock): Remove redundant
prototypes.
(sys_spawnve): Avoid warnings about discarding 'const' qualifier.
(sys_select): Provide prototype.
(g_b_init_compare_string_w): Move declaration to file scope.
* src/w32heap.c (dumped_data_commit): Now static.
(FREEABLE_P): Avoid warnings about pointer comparison with integer.
(mmap_realloc): Cast to 'char *' for arithmetics on void pointers.
* src/w32console.c (ctrl_c_handler, sys_tputs, sys_tgetstr)
(evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear):
Provide prototypes.
* src/w32.c (globals_of_w32, conv_sockaddr_to_lisp): Remove
redundant prototypes.
(w32_get_internal_run_time, map_w32_filename): Provide prototype.
(init_environment, sys_ctime): Avoid warnings about discarding
'const' qualifier.
Include utimens.h.
(sys_ctime, sys_chdir, sys_creat, sys_fopen, sys_mkdir)
(sys_open, sys_rename, sys_rmdir, is_slow_fs, term_winsock)
(sys_close, sys_dup2, sys_read, sys_write, sys_localtime): Provide
prototypes.
(sys_rename_replace): Use %d to avoid compiler warnings.
(_wsa_errlist): Make the message text 'const char *', to avoid
compilation warnings.
(dynlib_reset_last_error): Move prototype to file scope.
(w32_get_resource): First argument is now 'const char *'.
* src/w32uniscribe.c (syms_of_w32uniscribe): Provide prototype.
(otf_features): Second argument is no 'const char *'.
* src/w32term.c (free_frame_menubar, x_wm_set_size_hint)
(x_set_window_size): Remove redundant prototypes.
(XChangeGC, XGetGCValues, w32_draw_underwave)
(w32_draw_rectangle, w32_shift_glyphs_for_insert, x_mouse_leave)
(x_calc_absolute_position, x_destroy_window): Now static.
(menubar_selection_callback): Move prototype to file scope.
* src/w32font.c (g_b_init_get_glyph_outline_w): Remove redundant
declaration.
(w32_to_x_charset): Fix warnings about discarding 'const' qualifier.
(w32font_full_name): Fix warnings about implicit conversion of
'float' to 'double'.
* src/w32reg.c (w32_get_rdb_resource): Fix warnings about
discarding 'const' qualifier.
* src/w32menu.c (syms_of_w32menu, globals_of_w32menu)
(set_frame_menubar): Remove redundant prototypes.
(menubar_selection_callback, w32_menu_display_help): Provide
prototypes.
(simple_dialog_show): Avoid warnings about discarding 'const'
qualifier.
* src/w32fns.c (syms_of_w32fns, globals_of_w32fns)
(free_frame_menubar, w32_strerror, x_set_menu_bar_lines)
(x_set_tool_bar_lines, x_set_internal_border_width): Remove
redundant prototypes.
(current_popup_menu): Remove redundant declaration.
(colormap_t): Member 'name' is now 'const char *'.
(add_system_logical_colors_to_map): Fix signed/unsigned warnings.
(x_decode_color, x_set_border_pixel)
(x_clear_under_internal_border, x_set_name, hook_w32_key)
(reset_w32_kbdhook_state, deliver_wm_chars, w32_backtrace): Now
static.
(w32_load_cursor, w32_key_to_modifier, map_keypad_keys)
(w32_msg_worker, w32_last_error): Provide prototypes.
(funhook, lookup_vk_code): Avoid warnings about missing
parentheses.
(x_default_font_parameter, Fw32_notification_notify): Avoid
warnings about discarding 'const' qualifier.
(Fx_create_frame): Avoid warnings about empty body of 'else'.
(x_screen_planes): Ifdef away unused function.
(Fx_show_tip): Remove unused variables.
(Fw32_battery_status): Avoid warnings about implicit promotion
from float to double.
(Fw32_notification_notify): Initialize 'timeout'.
* src/profiler.c (profiler_cpu_running) [HAVE_ITIMERSPEC]: Only
define the TIMER_SETTIME_RUNNING value if it will be used.
* src/w32notify.c (send_notifications): Ifdef away an empty if
clause.  Remove unused variable.
(watch_end, watch_completion): Provide prototypes.
* src/sound.c (sound_warning) [WINDOWSNT]: Don't define: unused.
* src/callproc.c (child_setup, getenv_internal_1) [WINDOWSNT]: Fix
warning with pointer signedness.
* src/gnutls.c (gnutls_x509_crt_get_signature)
(gnutls_alert_send_appropriate) [WINDOWSNT]: Don't define, and
don't load them from the GnuTLS library, as they are no longer
used.
* src/process.c (DATAGRAM_CHAN_P) [!DATAGRAM_SOCKETS]: Don't
define, as it's unused.
* src/unexw32.c (open_input_file, open_output_file)
(close_file_data): Remove redundant prototypes.
(_start): provide prototype.
(mainCRTStartup): Move prototype to file level.
(find_section): Use type-cast to shut up compiler warnings.
(offset_to_section, relocate_offset): Now static.
(find_section): First argument is now a 'const char *'.
(offset_to_section): Ifdef away, as it's unused.
* src/w32heap.h (find_section): Adjust prototype.
* src/dynlib.c (dynlib_reset_last_error): Provide prototype.
* src/dired.c (directory_files_internal_w32_unwind): Avoid
warnings about missing prototypes.
(is_slow_fs) [WINDOWSNT]: Provide prototype at file level.
(directory_files_internal) [WINDOWSNT]: Fix warnings about pointer
signedness.
* src/fileio.c (Ffile_writable_p, Ffile_regular_p) [WINDOWSNT]:
Fix warnings about pointer signedness.
* src/filelock.c (WTMP_FILE) [WINDOWSNT]: Don't define, it's
unused.
* src/sysdep.c (_getpid): Remove redundant prototype.
(sys_subshell) [DOS_NT]: Don't define 'status', it's unused.
[!MSDOS]: Don't define 'st', it's unused.
(init_sys_modes) [DOS_NT]: Don't define 'terminal', it's unused.
(str_collate) [WINDOWSNT]: Avoid warnings about pointer signedness.
* src/keyboard.c (tty_read_avail_input) [WINDOWSNT]: Don't define
n_to_read, as it is not used.
(MAX_ENCODED_BYTES) [WINDOWSNT]: Don't define, as it's unused.
* src/w32font.h (syms_of_w32font): Remove redundant prototype.
* src/xfaces.c (x_display_info) [HAVE_NTGUI]: Remove unused macro.
* src/term.c (init_tty) [DOS_NT]: Ifdef away variables that are
not used by DOS_NT builds, to avoid compiler warnings.
* src/menu.c (current_popup_menu) [HAVE_NTGUI]: Remove redundant
declaration.
* src/dispnew.c (init_display) [WINDOWSNT]: Use type-cast to shut
up compiler warnings.
* src/w32term.h (x_set_window_size, x_get_focus_frame)
(x_make_frame_visible, x_make_frame_invisible, x_iconify_frame)
(x_set_frame_alpha, x_activate_menubar, x_bitmap_icon)
(x_free_frame_resources, x_real_positions)
(display_x_get_resource): Remove redundant prototypes.

* lib-src/ntlib.c (sys_ctime, sys_fopen, sys_chdir, mkostemp)
(sys_rename, gettimeofday): Provide prototypes.
* lib-src/ntlib.h (getuid, geteuid, mkostemp): Remove redundant
declarations.
* lib-src/emacsclient.c (w32_getenv): Argument is now 'const char *'.
(xstrdup, w32_get_resource, w32_window_app, w32_execvp, ttyname)
(close_winsock, initialize_sockets, w32_set_user_model_id)
(w32_find_emacs_process, w32_give_focus) [WINDOWSNT]: Add
prototypes.
(w32_get_resource) [WINDOWSNT]: Fix a warning about signedness
difference.
(w32_set_user_model_id): Update prototype of
SetCurrentProcessExplicitAppUserModelID to avoid compiler
warnings.
(start_daemon_and_retry_set_socket) [WINDOWSNT]: Use type-cast to
shut up compiler warnings.
* lib-src/etags.c (MAXPATHLEN) [WINDOWSNT]: Remove unused macro.
2016-05-21 20:06:33 +03:00
..
icons Fix copyright years by hand 2016-01-01 01:38:07 -08:00
inc Merge from origin/emacs-25 2016-03-11 13:33:32 -08:00
addpm.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
ChangeLog.1 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
cmdproxy.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
configure.bat Fix copyright years by hand 2016-01-01 01:38:07 -08:00
COPYING
ddeclient.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
emacs-x64.manifest Reorder Windows version in Emacs manifests 2015-09-25 22:22:31 +03:00
emacs-x86.manifest Reorder Windows version in Emacs manifests 2015-09-25 22:22:31 +03:00
emacs.rc.in Fix copyright years by hand 2016-01-01 01:38:07 -08:00
emacsclient.rc.in Fix copyright years by hand 2016-01-01 01:38:07 -08:00
epaths.nt Update copyright year to 2016 2016-01-01 01:34:24 -08:00
ftime-nostartup.bat
ftime.bat
gnulib.mk Port recent filevercmp addition to MS-Windows 2016-02-21 20:00:06 -08:00
INSTALL Update copyright year to 2016 2016-01-01 01:34:24 -08:00
INSTALL.W64 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
Makefile.in Merge from origin/emacs-25 2016-01-11 22:48:07 -08:00
mingw-cfg.site Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00
preprep.c Rework C source files to avoid ^( 2016-03-10 07:59:19 -08:00
README Update copyright year to 2016 2016-01-01 01:34:24 -08:00
README.W32 Update copyright year to 2016 2016-01-01 01:34:24 -08:00
runemacs.c Fix compiler warnings in the MinGW build 2016-05-21 20:06:33 +03:00

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

	     Emacs for Windows NT/2000 and Windows 95/98/ME

  Copyright (C) 2001-2016 Free Software Foundation, Inc.
  See the end of the file for license conditions.

  This directory contains support for compiling and running GNU Emacs on
  Windows NT, Windows 95, and their successors.  This port supports all
  of the major functionality of the Unix version, including
  subprocesses, windowing features (fonts, colors, scroll bars, multiple
  frames, etc.), and networking support.

  Precompiled distributions are also available; ftp to

	ftp://ftp.gnu.org/gnu/emacs/windows/

  for the latest precompiled distributions.

* Building and installing

  See the INSTALL file in this directory for detailed instructions on
  building and installing Emacs on your system.

* EXE files produced

  Building and installing Emacs will produce the following executable
  files in the bin directory.

  + emacs.exe - The main Emacs executable.  As this is designed to run
    as both a text-mode application (emacs -nw) and as a GUI application,
    it will pop up a command prompt window if run directly from Explorer.

  + runemacs.exe - A wrapper for running Emacs as a GUI application
    without popping up a command prompt window.  If you create a
    desktop shortcut for invoking Emacs, make it point to this
    executable, not to emacs.exe.

  + emacsclient.exe - A command-line client program that can
    communicate with a running Emacs process.  See the `Emacs Server'
    node of the Emacs manual.

  + emacsclientw.exe - A version of emacsclient that does not open
    a command-line window.

  + addpm.exe - A basic installer that creates Start Menu icons for Emacs.
    Running this is optional.

  + ctags.exe, etags.exe - Tools for generating tag files.  See the
    `Tags' node of the Emacs manual.

  + ebrowse.exe - A tool for generating C++ browse information.  See the
    `Ebrowse' manual.

  Several helper programs are installed in a version-specific
  subdirectory of the libexec directory:

  + cmdproxy.exe - Used internally by Emacs to work around problems with
    the native shells in various versions of Windows.

  + ddeclient.exe - A tool for interacting with DDE servers.  To be
    invoked as "ddeclient SERVER [TOPIC]", where SERVER is the DDE
    server name, and sends each line of its standard input to the DDE
    server using the DdeClientTransaction API.  This program is
    supposed to be invoked via the 'call-process-region' Emacs
    primitive.

  + hexl.exe - A tool for producing hex dumps of binary files.  See the
    `Editing Binary Files' node of the Emacs manual.

  + movemail.exe - A helper application for safely moving mail from
    a mail spool or POP server to a local user mailbox.  See the
    `Movemail' node of the Emacs manual.

  + profile.exe - A helper program that generates periodic events for
    profiling Emacs Lisp code.

  + update-game-score.exe - A utility for updating the score files of
    Emacs games.

* Further information

  The Emacs User manual describes Windows-specific issues in the
  appendix named "Emacs and Microsoft Windows/MS-DOS".  You can read
  it in Emacs by typing

        C-h r g Microsoft Windows RET

  This appendix is also available (as part of the entire manual) at

        http://www.gnu.org/software/emacs/manual/html_mono/emacs.html#Microsoft-Windows

  In addition to the manual, there is a mailing list for discussing
  issues related to the Windows port of Emacs.  For information about
  the list, see this Web page:

	http://mail.gnu.org/mailman/listinfo/help-emacs-windows

  To ask questions on the mailing list, send email to
  help-emacs-windows@gnu.org.  (You don't need to subscribe for that.)
  To subscribe to the list or unsubscribe from it, fill the form you
  find at http://mail.gnu.org/mailman/listinfo/help-emacs-windows as
  explained there.

  Another valuable source of information and help which should not be
  overlooked is the various Usenet news groups dedicated to Emacs.
  These are particularly good for help with general issues which aren't
  specific to the Windows port of Emacs.  The main news groups to use
  for seeking help are:

	gnu.emacs.help
	comp.emacs

  There are also fairly regular postings and announcements of new or
  updated Emacs packages on this group:

	gnu.emacs.sources

* Reporting bugs

  If you encounter a bug in this port of Emacs, we would like to hear
  about it.  First check the file etc/PROBLEMS and the FAQ on the web
  page above to see if the bug is already known and if there are any
  workarounds.  If not, then check whether the bug has something to do
  with code in your .emacs file, e.g. by invoking Emacs with the "-Q"
  option.

  Use the built in bug reporting functionality in Emacs so that it
  will be seen by the right people.  You can use the command M-x
  report-emacs-bug to create and send the bug report.

This file is part of GNU Emacs.

GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.