1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-18 06:01:22 -08:00
Commit graph

2151 commits

Author SHA1 Message Date
Paul Eggert
b59a2e9edb Parallelize documentation builds.
This speeds up building of documentation on multiprocessor
platforms, and is motivated by Texinfo 5.0, which is much slower.
Add a toplevel rule 'make docs' to make all the documentation.
* .bzrignore: Add .dvi, .html, .ps.
* Makefile.in (DVIS, HTMLS, INFOS, PSS, DOCS): New macros.
($(DOCS), docs, vi, html, pdf, ps): New rules.
(info-real): Depend on $(INFOS) rather than doing it sequentially.
(dvi): Depend on $(DVIS) rather than doing it sequentially.
* doc/misc/Makefile.in (html): New rule.
2013-02-21 14:42:56 -08:00
Aidan Gauland
6a0fda530d Documented Eshell's insert output-redirection operator 2013-02-19 07:27:51 +13:00
Paul Eggert
648e5523fb Merge from emacs-24; up to 2012-12-19T13:01:16Z!michael.albinus@gmx.de 2013-02-14 22:35:54 -08:00
Paul Eggert
35b3a27e67 Fix AIX port.
* configure.ac (DATA_START, DATA_SEG_BITS): Set to 0x20000000 on AIX.
(GC_MARK_STACK): Do not set to GC_USE_GCPROS_AS_BEFORE, as that
runs afoul of some other bug in Emacs, and the default value
GC_MAKE_GCPROS_NOOPS has been tested and works.
* src/lisp.h (XPNTR) [!USE_LSB_TAG && DATA_SEG_BITS]:
Fix bug introduced in 2012-07-27 change.  DATA_SEG_BITS, if set,
was #undeffed earlier, so it cannot be used as a macro here.
Use the constant and not the macro.  Tested on AIX.
* src/unexaix.c: Revert 2013-02-11 and 2013-02-12 changes to this
file.  They're almost surely OK but we're just before a release so
we should avoid changes unless they're clearly needed.  Instead,
make the following minor change:
(ADDR_CORRECT): New macro.

Fixes: debbugs:13650
2013-02-14 12:05:10 -08:00
Eli Zaretskii
8c0905acd1 MS-Windows followup for 2013-02-11T23:37:18Z!eggert@cs.ucla.edu.
lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/memrchr.$(O).
 ($(BLD)/memrchr.$(O)): New dependency.

 nt/inc/ms-w32.h: Add prototype for memrchr.
2013-02-12 05:52:04 +02:00
Paul Eggert
a84b7c5334 Tune by using memchr and memrchr.
* .bzrignore: Add string.h.
* admin/merge-gnulib (GNULIB_MODULES): Add memrchr.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/memrchr.c, lib/string.in.h, m4/memrchr.m4, m4/string_h.m4:
New files, from gnulib.
* src/doc.c (Fsnarf_documentation):
* src/fileio.c (Fsubstitute_in_file_name):
* src/search.c (find_newline, scan_newline):
* src/xdisp.c (pos_visible_p, display_count_lines):
Use memchr and memrchr rather than scanning byte-by-byte.
* src/search.c (find_newline): Rename from scan_buffer.
Omit first arg TARGET, as it's always '\n'.  All callers changed.
2013-02-11 15:37:18 -08:00
Paul Eggert
71d4202f20 Merge from gnulib. 2013-02-11 15:15:46 -08:00
Glenn Morris
55fe8e6492 ChangeLog for previous 2013-02-10 16:55:26 -08:00
Glenn Morris
8b0590de7e * configure.ac (emacs_config_options): Strip out the (internal) arguments
--no-create and --no-recursion.
2013-02-09 19:37:48 -08:00
Paul Eggert
8376d87efc Merge from gnulib. 2013-02-08 15:37:17 -08:00
Paul Eggert
8654f9d7d6 Use fdopendir, fstatat and readlinkat, for efficiency.
On my host, this speeds up directory-files-and-attributes by a
factor of 3, when applied to Emacs's src directory.
These functions are standardized by POSIX and are common these
days; fall back on a (slower) gnulib implementation if the host
is too old to supply them.
* .bzrignore: Add lib/dirent.h.
* lib/Makefile.am (libgnu_a_SOURCES): Add openat-die.c, save-cwd.c.
* lib/careadlinkat.c, lib/careadlinkat.h: Merge from gnulib,
incorporating: 2013-01-29 careadlinkat: do not provide careadlinkatcwd.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/dirent.in.h, lib/fdopendir.c, lib/fstatat.c, lib/openat-priv.h:
* lib/openat-proc.c, lib/openat.h, m4/dirent_h.m4, m4/fdopendir.m4:
* m4/fstatat.m4: New files, from gnulib.
* lib/openat-die.c, lib/save-cwd.c, lib/save-cwd.h: New files.
These last three are specific to Emacs and are not copied from gnulib.
They are simpler than the gnulib versions and are tuned for Emacs.
* admin/merge-gnulib (GNULIB_MODULES): Add fdopendir, fstatat, readlinkat.
(GNULIB_TOOL_FLAGS): Do not avoid at-internal, openat-h.
Avoid dup, open, opendir.
* nt/inc/sys/stat.h (fstatat):
* nt/inc/unistd.h (readlinkat): New decls.
* src/conf_post.h (GNULIB_SUPPORT_ONLY_AT_FDCWD): Remove.
* src/dired.c: Include <fcntl.h>.
(open_directory): New function, which uses open and fdopendir
rather than opendir.  DOS_NT platforms still use opendir, though.
(directory_files_internal, file_name_completion): Use it.
(file_attributes): New function, with most of the old Ffile_attributes.
(directory_files_internal, Ffile_attributes): Use it.
(file_attributes, file_name_completion_stat): First arg is now fd,
not dir name.  All uses changed.  Use fstatat rather than lstat +
stat.
(file_attributes): Use emacs_readlinkat rather than Ffile_symlink_p.
* src/fileio.c: Include <allocator.h>, <careadlinkat.h>.
(emacs_readlinkat): New function, with much of the old
Ffile_symlink_p, but with an fd argument for speed.
It uses readlinkat rather than careadlinkatcwd, so that it
need not assume the working directory.
(Ffile_symlink_p): Use it.
* src/filelock.c (current_lock_owner): Use emacs_readlinkat
rather than emacs_readlink.
* src/lisp.h (emacs_readlinkat): New decl.
(READLINK_BUFSIZE, emacs_readlink): Remove.
* src/sysdep.c: Do not include <allocator.h>, <careadlinkat.h>.
(emacs_norealloc_allocator, emacs_readlink): Remove.
This stuff is moved to fileio.c.
* src/w32.c (fstatat, readlinkat): New functions.
(careadlinkat): Don't check that fd == AT_FDCWD.
(careadlinkatcwd): Remove; no longer needed.

Fixes: debbugs:13539
2013-01-31 22:30:51 -08:00
Glenn Morris
0eb61895e5 Move lisp/calc/README* to etc/CALC-NEWS
* make-dist: Only README files exist in lisp/ now, not README*.

* doc/misc/calc.texi (Help Commands): Mention etc/CALC-NEWS.

* etc/CALC-NEWS: Move here from lisp/calc/README, README.prev.

* lisp/calc/README, lisp/calc/README.prev: Rename/merge to etc/CALC-NEWS.
2013-01-31 19:58:50 -08:00
Giorgos Keramidas
e02703bda9 * .bzrignore: add lib-src/blessmail. 2013-01-23 15:49:46 -08:00
Paul Eggert
ea78b88298 Merge from gnulib. 2013-01-22 17:47:44 -08:00
Glenn Morris
795e7a5b32 Merge from emacs-24; up to 2012-12-11T09:51:12Z!dmantipov@yandex.ru 2013-01-19 12:38:13 -08:00
Paul Eggert
ffe04adc88 Merge from gnulib. 2013-01-16 09:45:39 -08:00
Paul Eggert
c4e2ba0a60 * configure.ac: Document that --enable-gcc-warnings emits errors.
Fixes: debbugs:13448
2013-01-15 22:04:58 -08:00
Glenn Morris
94898d72a3 * Makefile.in (install-arch-indep): Put back a chmod
that was removed 2012-05-19.  (Bug#13430)
2013-01-15 20:41:31 -05:00
Glenn Morris
c0511b5769 Merge from emacs-24; up to 2012-12-10T20:27:33Z!eggert@cs.ucla.edu 2013-01-13 12:03:01 -08:00
Paul Eggert
444b01bb49 Enable conservative stack scanning for all architectures.
Suggested by Stefan Monnier in
<http://lists.gnu.org/archive/html/emacs-devel/2013-01/msg00183.html>.
* configure.ac (GC_MARK_STACK): Remove.
2013-01-11 21:21:06 -08:00
Paul Eggert
002b843312 * lib/getopt_.h: Remove trailing CRs that crept in. 2013-01-11 15:28:04 -08:00
Eli Zaretskii
b76381c62b lib/getopt_.h: Regenerate. 2013-01-11 11:20:41 +02:00
Glenn Morris
39aff4a79f * make-dist: Add options for xz compression and no compression. 2013-01-09 20:00:02 -08:00
Paul Eggert
6466e676b9 Merge from gnulib. 2013-01-09 18:19:44 -08:00
Glenn Morris
0f668a4db4 Merge from emacs-24; up to 2012-12-06T20:16:38Z!monnier@iro.umontreal.ca 2013-01-04 11:22:37 -08:00
Glenn Morris
92d5961122 Add htmlfontify manual to build process
* doc/misc/Makefile.in (INFO_TARGETS, DVI_TARGETS, PDF_TARGETS):
Add htmlfontify.
(htmlfontify, $(buildinfodir)/htmlfontify$(INFO_EXT))
(htmlfontify.dvi, htmlfontify.pdf): New targets.

* doc/misc/makefile.w32-in (INFO_TARGETS, DVI_TARGETS, clean):
Add htmlfontify.
($(infodir)/htmlfontify$(INFO_EXT), htmlfontify.dvi): New targets.

* info/dir: Add htmlfontify.
2013-01-04 01:43:08 -08:00
Paul Eggert
ee0d39381a Merge from gnulib.
This incorporates:
2013-01-04 stdio: remove now-unnecessary stdio.c
2013-01-04 fprintftime: depend on stdio, not ignore-value
2013-01-04 fwrite: silence __wur only for older glibc versions
2013-01-04 fwrite: silence __wur without using inline
* lib/stdio.c: Remove.
* lib/stdio.in.h, lib/strftime.c: Update from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
2013-01-03 18:17:49 -08:00
Paul Eggert
9ff99d22a0 Merge from gnulib. 2013-01-02 08:37:04 -08:00
Paul Eggert
0877d0dc24 Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.ca 2013-01-02 08:13:04 -08:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Jan Djärv
7ec363cf23 Silence Gtk deprecation warnings by default.
* configure.ac: New enable: --enable-gtk-deprecation-warnings, default off.
(HAVE_GTK3): If above enable is off, add
-DGDK_DISABLE_DEPRECATION_WARNINGS to GTK_CFLAGS.
2012-12-30 20:34:25 +01:00
Jan Djärv
8b745d925b Check for deprecated gtk tearoff menu item in configure.
* configure.ac: Check for GtkHandlebox.
Check for GtkTearoffMenuItem.

* src/gtkutil.c (TOOLBAR_TOP_WIDGET): New macro.
(xg_pack_tool_bar): Use TOOLBAR_TOP_WIDGET, condition out use of
handlebox_widget.  Set toolbar_in_hbox to false/true, set
toolbar_is_packed to true.
(xg_update_tool_bar_sizes): Use widget returned by TOOLBAR_TOP_WIDGET.
(update_frame_tool_bar): Check toolbar_is_packed for packing.
Show all on TOOLBAR_TOP_WIDGET.
(free_frame_tool_bar): Check toolbar_is_packed.  Use widget returned
by TOOLBAR_TOP_WIDGET.
(xg_change_toolbar_position): Use widget returned by TOOLBAR_TOP_WIDGET.
Check toolbar_is_packed.
(xg_have_tear_offs, tearoff_remove, tearoff_activate): Condition on
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_have_tear_offs): When ! HAVE_GTK_TEAROFF_MENU_ITEM_NEW, return
false.
(create_menus): Create tearoff only if HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_update_menubar): Update title only if
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_update_submenu): Skip tearoff only if
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_initialize): Initialize xg_detached_menus only if
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
2012-12-30 20:08:15 +01:00
Jan Djärv
5a1d858bbc Check for deprecated gtk_handle_box in configure.
* configure.ac: Check for GtkHandlebox.

* src/gtkutil.c (TOOLBAR_TOP_WIDGET): New macro.
(xg_pack_tool_bar): Use TOOLBAR_TOP_WIDGET, condition out use of
handlebox_widget.  Set toolbar_in_hbox to false/true, set
toolbar_is_packed to true.
(xg_update_tool_bar_sizes): Use widget returned by TOOLBAR_TOP_WIDGET.
(update_frame_tool_bar): Check toolbar_is_packed for packing.
Show all on TOOLBAR_TOP_WIDGET.
(free_frame_tool_bar): Check toolbar_is_packed.  Use widget returned
by TOOLBAR_TOP_WIDGET.
(xg_change_toolbar_position): Use widget returned by TOOLBAR_TOP_WIDGET.
Check toolbar_is_packed.

* src/xterm.h (struct x_output): Surround handlebox_widget with
#ifdef HAVE_GTK_HANDLE_BOX_NEW.  toolbar_is_packed is new,
toolbar_in_hbox is bool.
2012-12-30 19:44:00 +01:00
Glenn Morris
d5e5e7b411 Merge from emacs-24; up to 2012-12-05T00:13:56Z!yamaoka@jpl.org 2012-12-30 10:09:01 -08:00
Andreas Schwab
2550c6e404 Properly configure GNUstep libraries
* configure.ac (TEMACS_LDFLAGS2): Don't define.
(LIBS_GNUSTEP): Set for GNUstep and substitute.
(LD_SWITCH_SYSTEM_TEMACS): Don't set for GNUstep.

* src/Makefile.in (TEMACS_LDFLAGS2): Remove.
(LIBS_GNUSTEP): Define.
(LIBES): Add $(LIBS_GNUSTEP).
(temacs$(EXEEXT)): Use $(LDFLAGS) instead of $(TEMACS_LDFLAGS2).
2012-12-29 20:37:32 +01:00
Glenn Morris
60f5e585bd configure.ac fix for double quotes in configure command-line
* configure.ac (emacs_config_options): New.
Use $@ rather than undocumented $ac_configure_args.
Replace any embedded double quotes.

Fixes: debbugs:13274
2012-12-27 09:59:21 -08:00
Glenn Morris
82e2a1f054 Merge from emacs-24; up to 2012-12-03T21:07:47Z!eggert@cs.ucla.edu 2012-12-27 00:21:08 -08:00
Paul Eggert
a8e1690bbd Revert static checking of stack smashing.
* configure.ac (WARN_CFLAGS): Omit -Wstack-protector when
configured with --enable-gcc-warnings.  -Wstack-protector causes
diagnostics to be issued on Ubuntu 12.10 x86-64.
2012-12-25 21:41:42 -08:00
Andreas Schwab
02e7729e7b Fixes: debbugs:13222
* configure.ac (SIGNALS_VIA_CHARACTERS): Also define for darwin.
2012-12-24 11:26:35 +01:00
Paul Eggert
219023c434 Merge from gnulib. 2012-12-23 22:24:08 -08:00
Glenn Morris
a4b0cca119 Merge from emacs-24; up to 2012-12-01T13:25:13Z!cyd@gnu.org 2012-12-21 11:32:43 -08:00
Akinori MUSHA
018246572c * Makefile.in (install-arch-dep): Ignore chmod errors (tiny change)
Fixes: debbugs:13233
2012-12-19 23:56:56 -08:00
Romain Francoise
7c3d167f48 Add support for preserving ACL entries of files.
* configure.ac (acl): New option.
	(HAVE_POSIX_ACL): Test for POSIX ACL support.  This is typically
	provided by libacl on GNU/Linux.

	* fileio.c (Ffile_acl, Fset_file_acl): New functions.
	(Fcopy_file): Change last arg to `preserve_extended_attributes'
	and copy ACL entries of file in addition to SELinux context if
	set.
	(syms_of_fileio): Add `file-acl' and `set-file-acl'.

	* Makefile.in (LIBACL_LIBS): New macro.
	(LIBES): Use it.

	* files.el (file-extended-attributes)
	(set-file-extended-attributes): New functions.
	(backup-buffer): Use them to handle both SELinux context and ACL
	entries.
	(backup-buffer-copy): Work with an alist of extended attributes,
	rather than an SELinux context.
	(basic-save-buffer-2): Ditto.

	* files.texi (File Attributes): Document ACL support and new
	`file-acl' function.
	(Changing Files): Mention argument name change of `copy-file' and
	document new function `set-file-acl'.
2012-12-16 19:22:27 +01:00
Paul Eggert
97976f9f3f Fix permissions bugs with setgid directories etc.
* configure.ac (BSD4_2): Remove; no longer needed.
* admin/CPP-DEFINES (BSD4_2): Remove.
* doc/lispintro/emacs-lisp-intro.texi (Files List):
directory-files-and-attributes now outputs t for attribute that's
now a placeholder.
* doc/lispref/files.texi (Testing Accessibility): Document GROUP arg
of file-ownership-preserved-p.
(File Attributes): Document that 9th element is now
just a placeholder.
* doc/lispref/os.texi (User Identification): Document new functions group-gid,
group-real-gid.
* etc/NEWS: Document changes to file-attributes,
file-ownership-preserved-p.
Mention new functions group-gid, group-real-gid.
* lisp/files.el (backup-buffer): Don't rely on 9th output of
file-attributes, as it's now a placeholder.  Instead, use the new
optional arg of file-ownership-preserved-p.
(file-ownership-preserved-p): New optional arg GROUP.
Fix mishandling of setuid directories that would cause this
function to return t when it should have returned nil.
Document what happens if the file does not exist, and when
it's not known whether the ownership will be preserved.
* lisp/net/tramp-sh.el (tramp-sh-handle-file-ownership-preserved-p):
Likewise.
(tramp-get-local-gid): Use group-gid for integer, as that's
faster and more reliable.
* src/dired.c (Ffile_attributes): Return t as the 9th attribute,
to mark it as a placeholder.  The old value was often wrong.
The only user of this attribute has been changed to use
file-ownership-preserved-p instead, with its new group arg.
* src/editfns.c (Fgroup_gid, Fgroup_real_gid): New functions.

Fixes: debbugs:13125
2012-12-14 10:59:00 -08:00
Glenn Morris
727f973937 Merge from emacs-24; up to 2012-11-30T04:44:52Z!cyd@gnu.org 2012-12-12 21:29:15 -08:00
Glenn Morris
bfe6ffb652 Add wisent manual to build process
* doc/misc/wisent.texi: Small edits.  Set copyright to FSF, update license to
GFDL 1.3+.

* doc/misc/Makefile.in (INFO_TARGETS, DVI_TARGETS, PDF_TARGETS): Add wisent.
(wisent, $(buildinfodir)/wisent$(INFO_EXT), wisent.dvi, wisent.pdf):
New targets.

* doc/misc/makefile.w32-in (INFO_TARGETS, DVI_TARGETS, clean): Add wisent.
($(infodir)/wisent$(INFO_EXT), wisent.dvi): New targets.

* info/dir: wisent.
2012-12-12 20:47:14 -08:00
Glenn Morris
98c94021a1 Add bovine manual to build process
* doc/misc/bovine.texi: Small edits.  Set copyright to FSF, update license to
GFDL 1.3+, remove empty index.

* doc/misc/Makefile.in (INFO_TARGETS, DVI_TARGETS, PDF_TARGETS): Add bovine.
(bovine, $(buildinfodir)/bovine$(INFO_EXT), bovine.dvi, bovine.pdf):
New targets.

* doc/misc/makefile.w32-in (INFO_TARGETS, DVI_TARGETS, clean): Add bovine.
($(infodir)/bovine$(INFO_EXT), bovine.dvi): New targets.

* info/dir: Add bovine.
2012-12-12 20:25:50 -08:00
Andreas Schwab
0f59daafb7 * Makefile.in (install-info): Use `${MAKE} -s' for echo-info.
(uninstall): Likewise.
2012-12-12 18:52:01 +01:00
Glenn Morris
4c2dd4eeff Add srecode manual to build process
* doc/misc/srecode.texi: Small edits.  Set copyright to FSF, add explicit
GFDL 1.3+ license, fix up index.

* doc/misc/Makefile.in (INFO_TARGETS, DVI_TARGETS, PDF_TARGETS): Add srecode.
(srecode, $(buildinfodir)/srecode$(INFO_EXT), srecode.dvi)
(srecode.pdf): New targets.

* doc/misc/makefile.w32-in (INFO_TARGETS, DVI_TARGETS, clean): Add srecode.
($(infodir)/srecode$(INFO_EXT), srecode.dvi): New targets.

* info/dir: Add srecode.
2012-12-12 09:19:20 -08:00
Nicolas Avrutin
02925206eb Fix for install-info in non-English locales (tiny change)
* Makefile.in (install-info, uninstall):
Ensure make's messages about changing directories are in English.

Fixes: debbugs:13142
2012-12-11 13:37:53 -05:00