Fix core dump in char-equal.

* editfns.c (Fchar_equal): Do not use MAKE_CHAR_MULTIBYTE in
unibyte buffers, as we can't tell whether the characters are
actually unibyte.
src/*.c: Silence a few warnings about unused vars and functions.

* src/image.c (x_bitmap_height, x_bitmap_width) [HAVE_X_WINDOWS]:
* src/sysdep.c (reset_sigio) [!DOS_NT]: Declare conditionally.

* src/keyboard.c (read_decoded_event_from_main_queue): #ifdef out
  variables on Windows.

* src/w32.c (unsetenv): Remove unused var `retval'.
  (emacs_gnutls_pull): Remove unused vars `fdset' and `timeout'.

* src/w32fns.c (Ffile_system_info): Use parenthesis in and/or expression.

* src/w32notify.c (watch_worker): Remove unnecesary var sleep_result.
  (start_watching): Remove unused var `thr'.

* src/w32proc.c (sys_spawnve): Comment out unused vars `first', `last'.
  (find_child_console): Remove unnecesary var `thread_id'.

* src/w32term.c (w32_read_socket): Comment out unused vars `row', `columns'.
  (x_focus_frame): #ifdef 0 unused variable `dpyinfo'.
Fix wrong timestamp.
* lisp/emacs-lisp/package.el: Fix bug#16733 (again).
  (url-http-parse-response, url-http-end-of-headers, url-recreate-url)
  (url-http-target-url): Remove unused declarations.
  (package-handle-response): Remove.
  (package--with-work-buffer): Use url-insert-file-contents and simplify.
  (package--download-one-archive): Use current-buffer instead of
  dynamic binding of `buffer'.
  (describe-package-1): Do not decode readme-string.

* lisp/url/url-handlers.el (url-http-parse-response): Add autoload.
  (url-insert-file-contents): Signal file-error in case of HTTP error.
Merge from emacs-24; up to r116865
More backward-compatible fix to char-equal core dump.

* editfns.c (Fchar_equal): In unibyte buffers, assume values in
range 128-255 are raw bytes.  Suggested by Eli Zaretskii.
Provide command for deleting processes from list-processes buffer
lisp/emacs-lisp/package-x.el: Follow-up to change in package.el.

(package--archive-contents-from-url): Use url-insert-file-contents;
package-handle-response no longer exists.
lisp/frameset.el: Fix bug#17046.

(frameset--restore-frame): Remove workaround for bug#14795
which is no longer needed and causes trouble in GTK builds.
src/image.c: Avoid partial load of SVG libraries.

(init_svg_functions): When loading SVG-related libraries,
free already loaded libraries if the initialization fails.
(rsvg_handle_set_size_callback): Remove declaration, unused.
Fix bug#17097

* lisp/progmodes/ruby-mode.el (ruby-syntax-propertize-function):
Don't propertize `?' or `!' as symbol constituent when after
colon.
* lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
special globals with font-lock-builtin-face.
Fix bug #17115 with displaying on w32 images that have 'box' face.

 src/w32term.c (x_draw_image_glyph_string): Fix computation of height
 and width of image background when it is displayed with a 'box'
 face.
Merge from emacs-24; up to r116871
* doc/misc/vhdl-mode.texi: New file, imported from upstream vhdl-mode.
vhdl-mode.texi clean-up

* doc/misc/vhdl-mode.texi: General clean-up.
Set copyright to FSF (years based on vhdl-mode releases), add license.
Remove hand-written node pointers.  Remove info re old Emacs versions.
Markup fixes.
(Getting Connected): Remove irrelevant info.
(Indentation Commands, Requirements): Remove empty/irrelevant nodes.
(Frequently Asked Questions): Electric indent is now enabled.
Add vhdl-mode.info build rules 

* doc/misc/Makefile.in (INFO_COMMON): Add vhdl-mode.
(vhdl_mode_deps, vhdl-mode, $(buildinfodir)/vhdl-mode$(INFO_EXT))
(vhdl-mode.dvi, vhdl-mode.pdf, vhdl-mode.html): New rules/variables.
Allow selective autoloading from lisp/obsolete directory

* lisp/Makefile.in (obsolete-autoloads): New rule.
(autoloads): Run obsolete-autoloads.

* lisp/obsolete/iswitchb.el (iswitchb-mode): Use obsolete-autoload.

* lisp/simple.el (iswitchb-mode): Remove hand-written autoloads.
Require GNU make to build Emacs

Ref: http://debbugs.gnu.org/16717#45
If no-one objects, we can then start getting rid of some of the
convoluted Makefile hacks that exist to support non-GNU makes.

* configure.ac: Require GNU make.
(HAVE_GNU_MAKE): Remove.

* INSTALL, etc/NEWS, etc/PROBLEMS: Update for this change.

* Makefile.in: Comment.
Simplify treatment of some startup hooks

* lisp/startup.el (inhibit-startup-hooks): Doc tweak.
(normal-top-level): Simplify running of hooks.
For window-setup-hook, respect inhibit-startup-hooks.
(command-line-1): Don't set window-setup-hook to nil.