------------------------------------------------------------ revno: 118104 committer: Jan Dj?rv branch nick: trunk timestamp: Mon 2014-10-13 08:09:05 +0200 message: * NEWS: Move and clarify OSX >= 10.6. diff: === modified file 'etc/ChangeLog' --- etc/ChangeLog 2014-10-12 08:35:50 +0000 +++ etc/ChangeLog 2014-10-13 06:09:05 +0000 @@ -1,3 +1,7 @@ +2014-10-13 Jan Djärv + + * NEWS: Move and clarify OSX >= 10.6. + 2014-10-12 Jan Djärv * NEWS: OSX required is 10.6 or newer. === modified file 'etc/NEWS' --- etc/NEWS 2014-10-12 08:35:50 +0000 +++ etc/NEWS 2014-10-13 06:09:05 +0000 @@ -36,9 +36,6 @@ undumping code to GCC under IRIX, or by configuring --with-wide-int, or by sticking with Emacs 24.4. -** Building Emacs on OSX now requires 10.6 or newer. -That also means that PowerPC is not supported. - --- ** The configure option `--with-pkg-config-prog' has been removed. Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to. @@ -376,6 +373,8 @@ or Windows Server 2003. The built binaries still run on all versions of Windows starting with Windows 9X. +** Building Emacs on OSX with Coca (--with-ns) now requires 10.6 or newer. +PowerPC on OSX is not supported. ---------------------------------------------------------------------- ------------------------------------------------------------ revno: 118103 [merge] committer: Glenn Morris branch nick: trunk timestamp: Sun 2014-10-12 18:47:48 -0700 message: Merge from emacs-24; up to r117577 diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2014-10-12 14:56:58 +0000 +++ doc/emacs/ChangeLog 2014-10-13 01:47:48 +0000 @@ -1,3 +1,7 @@ +2014-10-13 Glenn Morris + + * Makefile.in (dist): Update for new output variables. + 2014-10-12 Paul Eggert * macos.texi (Mac OS / GNUstep, Mac / GNUstep Basics) === modified file 'doc/emacs/Makefile.in' --- doc/emacs/Makefile.in 2014-08-07 09:55:09 +0000 +++ doc/emacs/Makefile.in 2014-10-13 01:47:48 +0000 @@ -209,6 +209,7 @@ ## Make a standalone tarfile of the Emacs manual sources. ## The [c] is a dumb way to prevent configure expanding it. +## TODO this is getting increasingly lengthy; not sure it is worth keeping. dist: rm -rf emacs-manual-${version} mkdir emacs-manual-${version} @@ -219,6 +220,21 @@ -e 's/^\(clean:.*\)/\1 infoclean/' \ -e "s/@ver[s]ion@/${version}/" \ -e 's/@MAKE[I]NFO@/makeinfo/' -e 's/@MK[D]IR_P@/mkdir -p/' \ + -e 's/@IN[F]O_EXT@/.info/' -e 's/@IN[F]O_OPTS@//' \ + -e 's|@SH[E]LL@|/bin/bash|' \ + -e 's|@[p]refix@|/usr/local|' \ + -e 's|@[d]atarootdir@|$${prefix}/share|' \ + -e 's|@[d]atadir@|$${datarootdir}|' \ + -e 's|@[P]ACKAGE_TARNAME@|emacs|' \ + -e 's|@[d]ocdir@|$${datarootdir}/doc/$${PACKAGE_TARNAME}|' \ + -e 's|@[d]vidir@|$${docdir}|' \ + -e 's|@[h]tmldir@|$${docdir}|' \ + -e 's|@[p]dfdir@|$${docdir}|' \ + -e 's|@[p]sdir@|$${docdir}|' \ + -e 's|@[G]ZIP_PROG@|gzip|' \ + -e 's|@IN[S]TALL@|install -c|' \ + -e 's|@IN[S]TALL_DATA@|$${INSTALL} -m 644|' \ + -e '/@[c]onfigure_input@/d' \ ${srcdir}/Makefile.in > emacs-manual-${version}/Makefile @if grep '@[a-zA-Z_]*@' emacs-manual-${version}/Makefile; then \ echo "Unexpanded configure variables in Makefile?" 1>&2; exit 1; \ === modified file 'doc/lispintro/ChangeLog' --- doc/lispintro/ChangeLog 2014-07-16 17:06:12 +0000 +++ doc/lispintro/ChangeLog 2014-10-13 01:47:48 +0000 @@ -1,3 +1,7 @@ +2014-10-13 Glenn Morris + + * Makefile.in (dist): Update for new output variables. + 2014-07-16 Álvar Jesús Ibeas Martín (tiny change) * emacs-lisp-intro.texi (Variables, Buffer Names, if & or) === modified file 'doc/lispintro/Makefile.in' --- doc/lispintro/Makefile.in 2014-06-23 06:43:20 +0000 +++ doc/lispintro/Makefile.in 2014-10-13 01:47:48 +0000 @@ -134,6 +134,21 @@ -e 's/^\(clean:.*\)/\1 infoclean/' \ -e "s/@ver[s]ion@/${version}/" \ -e 's/@MAKE[I]NFO@/makeinfo/' -e 's/@MK[D]IR_P@/mkdir -p/' \ + -e 's/@IN[F]O_EXT@/.info/' -e 's/@IN[F]O_OPTS@//' \ + -e 's|@SH[E]LL@|/bin/bash|' \ + -e 's|@[p]refix@|/usr/local|' \ + -e 's|@[d]atarootdir@|$${prefix}/share|' \ + -e 's|@[d]atadir@|$${datarootdir}|' \ + -e 's|@[P]ACKAGE_TARNAME@|emacs|' \ + -e 's|@[d]ocdir@|$${datarootdir}/doc/$${PACKAGE_TARNAME}|' \ + -e 's|@[d]vidir@|$${docdir}|' \ + -e 's|@[h]tmldir@|$${docdir}|' \ + -e 's|@[p]dfdir@|$${docdir}|' \ + -e 's|@[p]sdir@|$${docdir}|' \ + -e 's|@[G]ZIP_PROG@|gzip|' \ + -e 's|@IN[S]TALL@|install -c|' \ + -e 's|@IN[S]TALL_DATA@|$${INSTALL} -m 644|' \ + -e '/@[c]onfigure_input@/d' \ ${srcdir}/Makefile.in > emacs-lispintro-${version}/Makefile @if grep '@[a-zA-Z_]*@' emacs-lispintro-${version}/Makefile; then \ echo "Unexpanded configure variables in Makefile?" 1>&2; exit 1; \ === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2014-10-12 22:56:45 +0000 +++ doc/lispref/ChangeLog 2014-10-13 01:47:48 +0000 @@ -1,3 +1,7 @@ +2014-10-13 Glenn Morris + + * Makefile.in (dist): Update for new output variables. + 2014-10-12 Glenn Morris * elisp.texi (DATE): Bump to October 2014. === modified file 'doc/lispref/Makefile.in' --- doc/lispref/Makefile.in 2014-06-23 06:43:20 +0000 +++ doc/lispref/Makefile.in 2014-10-13 01:47:48 +0000 @@ -192,6 +192,21 @@ -e 's/^\(clean:.*\)/\1 infoclean/' \ -e "s/@ver[s]ion@/${version}/" \ -e 's/@MAKE[I]NFO@/makeinfo/' -e 's/@MK[D]IR_P@/mkdir -p/' \ + -e 's/@IN[F]O_EXT@/.info/' -e 's/@IN[F]O_OPTS@//' \ + -e 's|@SH[E]LL@|/bin/bash|' \ + -e 's|@[p]refix@|/usr/local|' \ + -e 's|@[d]atarootdir@|$${prefix}/share|' \ + -e 's|@[d]atadir@|$${datarootdir}|' \ + -e 's|@[P]ACKAGE_TARNAME@|emacs|' \ + -e 's|@[d]ocdir@|$${datarootdir}/doc/$${PACKAGE_TARNAME}|' \ + -e 's|@[d]vidir@|$${docdir}|' \ + -e 's|@[h]tmldir@|$${docdir}|' \ + -e 's|@[p]dfdir@|$${docdir}|' \ + -e 's|@[p]sdir@|$${docdir}|' \ + -e 's|@[G]ZIP_PROG@|gzip|' \ + -e 's|@IN[S]TALL@|install -c|' \ + -e 's|@IN[S]TALL_DATA@|$${INSTALL} -m 644|' \ + -e '/@[c]onfigure_input@/d' \ ${srcdir}/Makefile.in > emacs-lispref-${version}/Makefile @if grep '@[a-zA-Z_]*@' emacs-lispref-${version}/Makefile; then \ echo "Unexpanded configure variables in Makefile?" 1>&2; exit 1; \ === modified file 'doc/misc/ChangeLog' --- doc/misc/ChangeLog 2014-10-08 22:05:48 +0000 +++ doc/misc/ChangeLog 2014-10-13 01:47:48 +0000 @@ -1,3 +1,7 @@ +2014-10-13 Glenn Morris + + * Makefile.in (dist): Update for new output variables. + 2014-10-08 Leo Liu * cl.texi (Porting Common Lisp): Remove parse-integer. === modified file 'doc/misc/Makefile.in' --- doc/misc/Makefile.in 2014-09-04 02:15:56 +0000 +++ doc/misc/Makefile.in 2014-10-13 01:47:48 +0000 @@ -251,6 +251,21 @@ -e 's/^\(clean:.*\)/\1 infoclean/' \ -e "s/@ver[s]ion@/${version}/" \ -e 's/@MAKE[I]NFO@/makeinfo/' -e 's/@MK[D]IR_P@/mkdir -p/' \ + -e 's/@IN[F]O_EXT@/.info/' -e 's/@IN[F]O_OPTS@//' \ + -e 's|@SH[E]LL@|/bin/bash|' \ + -e 's|@[p]refix@|/usr/local|' \ + -e 's|@[d]atarootdir@|$${prefix}/share|' \ + -e 's|@[d]atadir@|$${datarootdir}|' \ + -e 's|@[P]ACKAGE_TARNAME@|emacs|' \ + -e 's|@[d]ocdir@|$${datarootdir}/doc/$${PACKAGE_TARNAME}|' \ + -e 's|@[d]vidir@|$${docdir}|' \ + -e 's|@[h]tmldir@|$${docdir}|' \ + -e 's|@[p]dfdir@|$${docdir}|' \ + -e 's|@[p]sdir@|$${docdir}|' \ + -e 's|@[G]ZIP_PROG@|gzip|' \ + -e 's|@IN[S]TALL@|install -c|' \ + -e 's|@IN[S]TALL_DATA@|$${INSTALL} -m 644|' \ + -e '/@[c]onfigure_input@/d' \ ${srcdir}/Makefile.in > emacs-misc-${version}/Makefile @if grep '@[a-zA-Z_]*@' emacs-misc-${version}/Makefile; then \ echo "Unexpanded configure variables in Makefile?" 1>&2; exit 1; \ ------------------------------------------------------------ revno: 118102 [merge] committer: Glenn Morris branch nick: trunk timestamp: Sun 2014-10-12 15:56:45 -0700 message: Merge from emacs-24; up to r117576 diff: === modified file 'ChangeLog' --- ChangeLog 2014-10-12 08:35:50 +0000 +++ ChangeLog 2014-10-12 22:56:45 +0000 @@ -1,3 +1,8 @@ +2014-10-12 Ken Brown + + * configure.ac (LD_SWITCH_SYSTEM_TEMACS) [CYGWIN]: Set stack size + to 8 MB. (Bug#18438) + 2014-10-12 Jan Djärv * configure.ac: Require OSX 10.6. Remove NSInteger test, === modified file 'admin/make-tarball.txt' --- admin/make-tarball.txt 2014-05-02 19:45:17 +0000 +++ admin/make-tarball.txt 2014-10-12 18:41:05 +0000 @@ -149,13 +149,15 @@ 11. Send an announcement to: emacs-devel, and bcc: info-gnu-emacs@gnu.org. For a pretest, also bcc: platform-testers@gnu.org. + For a release, also bcc: info-gnu@gnu.org. (The reason for using bcc: is to make it less likely that people will followup on the wrong list.) See the info-gnu-emacs mailing list archives for the form of past announcements. The first pretest announcement, and the release announcement, should have more detail. -12. For a release, update the Emacs homepage in the web repository. - Also update history.html, and add the new NEWS file as NEWS.xx.y. +12. For a release, update the Emacs homepage emacs.html in the web repository. + Also update history.html, and add the new NEWS file as news/NEWS.xx.y. Regenerate the html manuals (use make-manuals from admin.el). If there are new manuals, add appropriate index pages. + Delete any old manual pages that are no longer present. === modified file 'configure.ac' --- configure.ac 2014-10-12 08:35:50 +0000 +++ configure.ac 2014-10-12 22:56:45 +0000 @@ -4870,6 +4870,8 @@ case "$opsys" in aix4-2) LD_SWITCH_SYSTEM_TEMACS="-Wl,-bnodelcsect" ;; + cygwin) LD_SWITCH_SYSTEM_TEMACS="-Wl,-stack,0x00800000" ;; + darwin) ## The -headerpad option tells ld (see man page) to leave room at the ## end of the header for adding load commands. Needed for dumping. === modified file 'doc/emacs/help.texi' --- doc/emacs/help.texi 2014-07-03 06:00:53 +0000 +++ doc/emacs/help.texi 2014-10-12 22:56:45 +0000 @@ -129,7 +129,7 @@ Find packages by topic keyword (@code{finder-by-keyword}). This lists packages using a package menu buffer. @xref{Packages}. @item C-h P @var{package} @key{RET} -Display documentation about the package named @var{package} +Display documentation about the specified package (@code{describe-package}). @item C-h r Display the Emacs manual in Info (@code{info-emacs-manual}). === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2014-10-09 04:23:09 +0000 +++ doc/lispref/ChangeLog 2014-10-12 22:56:45 +0000 @@ -1,3 +1,7 @@ +2014-10-12 Glenn Morris + + * elisp.texi (DATE): Bump to October 2014. + 2014-10-09 Glenn Morris * frames.texi (Multiple Terminals): Copyedits. === modified file 'doc/lispref/control.texi' --- doc/lispref/control.texi 2014-09-06 00:59:00 +0000 +++ doc/lispref/control.texi 2014-10-12 22:56:45 +0000 @@ -328,13 +328,13 @@ @example (defun evaluate (exp env) (pcase exp - (`(add ,x ,y) (+ (evaluate x env) (evaluate y env))) - (`(call ,fun ,arg) (funcall (evaluate fun env) (evaluate arg env))) - (`(fn ,arg ,body) (lambda (val) - (evaluate body (cons (cons arg val) env)))) - ((pred numberp) exp) - ((pred symbolp) (cdr (assq exp env))) - (_ (error "Unknown expression %S" exp)))) + (`(add ,x ,y) (+ (evaluate x env) (evaluate y env))) + (`(call ,fun ,arg) (funcall (evaluate fun env) (evaluate arg env))) + (`(fn ,arg ,body) (lambda (val) + (evaluate body (cons (cons arg val) env)))) + ((pred numberp) exp) + ((pred symbolp) (cdr (assq exp env))) + (_ (error "Unknown expression %S" exp)))) @end example Where @code{`(add ,x ,y)} is a pattern that checks that @code{exp} is a three === modified file 'doc/lispref/elisp.texi' --- doc/lispref/elisp.texi 2014-10-04 08:20:24 +0000 +++ doc/lispref/elisp.texi 2014-10-12 22:56:45 +0000 @@ -56,7 +56,7 @@ @c (See comments for EDITION in emacs.texi) @set VERSION 3.1 @include emacsver.texi -@set DATE January 2013 +@set DATE October 2014 @c in general, keep the following line commented out, unless doing a @c copy of this manual that will be published. The manual should go === modified file 'doc/misc/org.texi' --- doc/misc/org.texi 2014-10-03 15:44:46 +0000 +++ doc/misc/org.texi 2014-10-12 22:56:45 +0000 @@ -2,7 +2,8 @@ @c %**start of header @setfilename ../../info/org.info @settitle The Org Manual -@set VERSION 8.2.8 + +@set VERSION 8.2.9 @c Version and Contact Info @set MAINTAINERSITE @uref{http://orgmode.org,maintainers web page} === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-10-12 20:09:15 +0000 +++ lisp/ChangeLog 2014-10-12 22:56:45 +0000 @@ -1,3 +1,15 @@ +2014-10-12 Fabián Ezequiel Gallina + + Fix import completion. (Bug#18582) + * progmodes/python.el (python-shell-completion-get-completions): + Fix import case regexp. + +2014-10-12 Stefan Monnier + + * progmodes/bat-mode.el (bat-font-lock-keywords): Fix \\<_ typo + (bug#18622). Reported by Arni Magnusson . + * progmodes/prolog.el (prolog-electric--underscore): Same. + 2014-10-12 Michael Albinus * net/tramp-sh.el (tramp-get-remote-id): Check also for "gid". === modified file 'lisp/org/ChangeLog' --- lisp/org/ChangeLog 2014-10-03 16:07:31 +0000 +++ lisp/org/ChangeLog 2014-10-12 22:56:45 +0000 @@ -1,3 +1,15 @@ +2014-10-12 Christopher Schmidt + + * org.el (orgstruct-make-binding): Do not use loop in interpreted code. + +2014-10-12 Mike McLean (tiny change) + + * org-agenda.el (org-agenda-time-grid): Change docstring. + +2014-10-12 Nicolas Goaziou + + * ox.el (org-export-async-start): Allow to use symbols as function. + 2014-10-03 Achim Gratz * ob-sh.el (org-babel-sh-initiate-session): After initiating a === modified file 'lisp/org/org-agenda.el' --- lisp/org/org-agenda.el 2014-10-03 08:13:51 +0000 +++ lisp/org/org-agenda.el 2014-10-12 22:25:24 +0000 @@ -1472,6 +1472,7 @@ weekly if the agenda shows an entire week today show grid on current date, independent of daily/weekly display require-timed show grid only if at least one item has a time specification + remove-match skip grid times already present in an entry The second item is a string which will be placed behind the grid time. @@ -5088,8 +5089,7 @@ "Get the (Emacs Calendar) diary entries for DATE." (require 'diary-lib) (let* ((diary-fancy-buffer "*temporary-fancy-diary-buffer*") - (diary-display-hook '(fancy-diary-display)) - (diary-display-function 'fancy-diary-display) + (diary-display-function 'diary-fancy-display) (pop-up-frames nil) (diary-list-entries-hook (cons 'org-diary-default-entry diary-list-entries-hook)) === modified file 'lisp/org/org-version.el' --- lisp/org/org-version.el 2014-10-03 08:13:51 +0000 +++ lisp/org/org-version.el 2014-10-12 22:25:24 +0000 @@ -5,13 +5,13 @@ (defun org-release () "The release version of org-mode. Inserted by installing org-mode or when a release is made." - (let ((org-release "8.2.8")) + (let ((org-release "8.2.10")) org-release)) ;;;###autoload (defun org-git-version () "The Git version of org-mode. Inserted by installing org-mode or when a release is made." - (let ((org-git-version "release_8.2.8")) + (let ((org-git-version "release_8.2.10")) org-git-version)) (provide 'org-version) === modified file 'lisp/org/org.el' --- lisp/org/org.el 2014-10-12 20:09:15 +0000 +++ lisp/org/org.el 2014-10-12 22:56:45 +0000 @@ -9099,14 +9099,16 @@ (if fallback (let* ((orgstruct-mode) (binding - (loop with key = ,key - for rep in - '(nil - ("<\\([^>]*\\)tab>" . "\\1TAB") - ("<\\([^>]*\\)return>" . "\\1RET") - ("<\\([^>]*\\)escape>" . "\\1ESC") - ("<\\([^>]*\\)delete>" . "\\1DEL")) - do + (let ((key ,key)) + (catch 'exit + (dolist + (rep + '(nil + ("<\\([^>]*\\)tab>" . "\\1TAB") + ("<\\([^>]*\\)return>" . "\\1RET") + ("<\\([^>]*\\)escape>" . "\\1ESC") + ("<\\([^>]*\\)delete>" . "\\1DEL")) + nil) (when rep (setq key (read-kbd-macro (let ((case-fold-search)) @@ -9114,7 +9116,8 @@ (car rep) (cdr rep) (key-description key)))))) - thereis (key-binding key)))) + (when (key-binding key) + (throw 'exit (key-binding key)))))))) (if (keymapp binding) (org-set-transient-map binding) (let ((func (or binding === modified file 'lisp/org/ox-publish.el' --- lisp/org/ox-publish.el 2014-10-03 08:13:51 +0000 +++ lisp/org/ox-publish.el 2014-10-12 22:25:24 +0000 @@ -881,7 +881,7 @@ ;; project is still a string here. (list (assoc project org-publish-project-alist))))) (if async - (org-export-async-start 'ignore + (org-export-async-start (lambda (results) nil) `(let ((org-publish-use-timestamps-flag (if ',force nil ,org-publish-use-timestamps-flag))) (org-publish-projects ',project-alist))) @@ -899,7 +899,7 @@ in another process." (interactive "P") (if async - (org-export-async-start 'ignore + (org-export-async-start (lambda (results) nil) `(progn (when ',force (org-publish-remove-all-timestamps)) (let ((org-publish-use-timestamps-flag @@ -921,7 +921,7 @@ (interactive "P") (let ((file (buffer-file-name (buffer-base-buffer)))) (if async - (org-export-async-start 'ignore + (org-export-async-start (lambda (results) nil) `(let ((org-publish-use-timestamps-flag (if ',force nil ,org-publish-use-timestamps-flag))) (org-publish-file ,file))) === modified file 'lisp/org/ox.el' --- lisp/org/ox.el 2014-10-03 08:13:51 +0000 +++ lisp/org/ox.el 2014-10-12 22:25:24 +0000 @@ -5479,8 +5479,9 @@ (defmacro org-export-async-start (fun &rest body) "Call function FUN on the results returned by BODY evaluation. -BODY evaluation happens in an asynchronous process, from a buffer -which is an exact copy of the current one. +FUN is an anonymous function of one argument. BODY evaluation +happens in an asynchronous process, from a buffer which is an +exact copy of the current one. Use `org-export-add-to-stack' in FUN in order to register results in the stack. === modified file 'lisp/progmodes/bat-mode.el' --- lisp/progmodes/bat-mode.el 2014-01-01 07:43:34 +0000 +++ lisp/progmodes/bat-mode.el 2014-10-10 04:03:27 +0000 @@ -78,11 +78,11 @@ "goto" "gtr" "if" "in" "leq" "lss" "neq" "not" "start")) (UNIX '("bash" "cat" "cp" "fgrep" "grep" "ls" "sed" "sh" "mv" "rm"))) - `(("\\<_\\(call\\|goto\\)\\_>[ \t]+%?\\([A-Za-z0-9-_\\:.]+\\)%?" + `(("\\_<\\(call\\|goto\\)\\_>[ \t]+%?\\([A-Za-z0-9-_\\:.]+\\)%?" (2 font-lock-constant-face t)) ("^:[^:].*" . 'bat-label-face) - ("\\<_\\(defined\\|set\\)\\_>[ \t]*\\(\\w+\\)" + ("\\_<\\(defined\\|set\\)\\_>[ \t]*\\(\\w+\\)" (2 font-lock-variable-name-face)) ("%\\(\\w+\\)%?" (1 font-lock-variable-name-face)) === modified file 'lisp/progmodes/prolog.el' --- lisp/progmodes/prolog.el 2014-07-28 09:39:09 +0000 +++ lisp/progmodes/prolog.el 2014-10-12 22:56:45 +0000 @@ -3139,7 +3139,7 @@ (eq (char-before) ?_) (save-excursion (skip-chars-backward "[:alpha:]_") - (looking-at "\\<_[_[:upper:]][[:alnum:]_]*\\_>"))) + (looking-at "\\_<[_[:upper:]][[:alnum:]_]*\\_>"))) (replace-match "_") (skip-chars-forward ", \t\n"))))) === modified file 'lisp/progmodes/python.el' --- lisp/progmodes/python.el 2014-10-04 02:35:28 +0000 +++ lisp/progmodes/python.el 2014-10-12 22:56:45 +0000 @@ -2886,9 +2886,13 @@ completion." (with-current-buffer (process-buffer process) (let* ((prompt - (let ((prompt-boundaries (python-util-comint-last-prompt))) + ;; Get last prompt of the inferior process buffer (this + ;; intentionally avoids using `comint-last-prompt' because + ;; of incompatibilities with Emacs 24.x). + (save-excursion (buffer-substring-no-properties - (car prompt-boundaries) (cdr prompt-boundaries)))) + (line-beginning-position) ;End of prompt. + (re-search-backward "^")))) (completion-code ;; Check whether a prompt matches a pdb string, an import ;; statement or just the standard prompt and use the === modified file 'src/ChangeLog' --- src/ChangeLog 2014-10-12 20:36:49 +0000 +++ src/ChangeLog 2014-10-12 22:56:45 +0000 @@ -1,5 +1,15 @@ 2014-10-12 Paul Eggert + Fix port to Debian GNU/kFreeBSD 7 (wheezy) (Bug#18666). + * process.c (accept4) [!HAVE_ACCEPT4]: New macro. + +2014-10-12 Stefan Monnier + + * frame.c (Fmouse_pixel_position): Call Vmouse_position_function + (bug#18638). + +2014-10-12 Paul Eggert + * editfns.c (dump_tz_string): No longer const. It might be modified. === modified file 'src/ChangeLog.11' --- src/ChangeLog.11 2014-01-26 00:47:40 +0000 +++ src/ChangeLog.11 2014-10-11 08:24:56 +0000 @@ -2241,7 +2241,7 @@ * xdisp.c (try_scrolling): Avoid infloop if the first line is obscured due to a vscroll (Bug#7537). -2010-12-13 Jan Djärv +2010-12-13 Jan Djärv * nsterm.h (FRAME_NS_TOOLBAR_HEIGHT): Rename to FRAME_TOOLBAR_HEIGHT. === modified file 'src/frame.c' --- src/frame.c 2014-10-01 03:28:16 +0000 +++ src/frame.c 2014-10-12 22:56:45 +0000 @@ -1850,7 +1850,8 @@ { struct frame *f; Lisp_Object lispy_dummy; - Lisp_Object x, y; + Lisp_Object x, y, retval; + struct gcpro gcpro1; f = SELECTED_FRAME (); x = y = Qnil; @@ -1867,7 +1868,11 @@ } XSETFRAME (lispy_dummy, f); - return Fcons (lispy_dummy, Fcons (x, y)); + retval = Fcons (lispy_dummy, Fcons (x, y)); + GCPRO1 (retval); + if (!NILP (Vmouse_position_function)) + retval = call1 (Vmouse_position_function, retval); + RETURN_UNGCPRO (retval); } #ifdef HAVE_WINDOW_SYSTEM @@ -4869,8 +4874,8 @@ DEFVAR_LISP ("mouse-position-function", Vmouse_position_function, doc: /* If non-nil, function to transform normal value of `mouse-position'. -`mouse-position' calls this function, passing its usual return value as -argument, and returns whatever this function returns. +`mouse-position' and `mouse-pixel-position' call this function, passing their +usual return value as argument, and return whatever this function returns. This abnormal hook exists for the benefit of packages like `xt-mouse.el' which need to do mouse handling at the Lisp level. */); Vmouse_position_function = Qnil; === modified file 'src/process.c' --- src/process.c 2014-10-12 20:09:15 +0000 +++ src/process.c 2014-10-12 22:56:45 +0000 @@ -173,6 +173,9 @@ return fd; } +# undef accept4 +# define accept4(sockfd, addr, addrlen, flags) \ + process_accept4 (sockfd, addr, addrlen, flags) static int accept4 (int sockfd, struct sockaddr *addr, socklen_t *addrlen, int flags) { ------------------------------------------------------------ revno: 118101 author: Paul Eggert committer: Paul Eggert branch nick: trunk timestamp: Sun 2014-10-12 13:36:49 -0700 message: * editfns.c (dump_tz_string): No longer const. It might be modified. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-10-12 20:09:15 +0000 +++ src/ChangeLog 2014-10-12 20:36:49 +0000 @@ -1,5 +1,8 @@ 2014-10-12 Paul Eggert + * editfns.c (dump_tz_string): No longer const. + It might be modified. + * nsmenu.m (clear): Assume OS X 10.6 or later. 2014-10-12 Jan Djärv === modified file 'src/editfns.c' --- src/editfns.c 2014-10-12 06:09:50 +0000 +++ src/editfns.c 2014-10-12 20:36:49 +0000 @@ -90,7 +90,7 @@ /* A valid but unlikely setting for the TZ environment variable. It is OK (though a bit slower) if the user chooses this value. */ -static char const dump_tz_string[] = "TZ=UtC0"; +static char dump_tz_string[] = "TZ=UtC0"; void init_editfns (void) @@ -109,7 +109,7 @@ if (!initialized) { # ifdef HAVE_TZSET - xputenv ((char *) dump_tz_string); + xputenv (dump_tz_string); tzset (); # endif return; ------------------------------------------------------------ revno: 118100 committer: Paul Eggert branch nick: trunk timestamp: Sun 2014-10-12 13:09:15 -0700 message: Spelling fixes. diff: === modified file 'admin/versioning' --- admin/versioning 2014-10-10 07:54:08 +0000 +++ admin/versioning 2014-10-12 20:09:15 +0000 @@ -6,7 +6,7 @@ chosen, and lightly documents the previous schemes. It was prompted by http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00872.html. -Releated info: +Related info: - [[file:FOR-RELEASE][FOR-RELEASE]] - [[file:make-tarball.txt][make-tarball.txt]] === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-10-12 18:27:37 +0000 +++ lisp/ChangeLog 2014-10-12 20:09:15 +0000 @@ -3305,7 +3305,7 @@ outside of ignored environments. (tildify-build-regexp): Remove function since it is now incorporated in `tildify-foreach-region-outside-env' where it is - optimised and simplified by the use of `mapconcat'. + optimized and simplified by the use of `mapconcat'. (tildify-tildify): Return number of substitutions made so that… (tildify-count): …can be removed. (tildify-find-env): Accept a new PAIRS argument which was @@ -3318,7 +3318,7 @@ and instead using or. * textmodes/tildify.el (tildify-ignored-environments-alist): - Optimise environments regexes + Optimize environments regexes Each time beginning of an environment to ignore is found, `tildify-find-env' needs to identify regexp for the ending @@ -3400,7 +3400,7 @@ The most trivial fix would be to replace `expression' in the true-part of the if-statement with `aux', but instead, this commit - optimises `tildify-find-env' by changing it to use `mapconcat' + optimizes `tildify-find-env' by changing it to use `mapconcat' rather than open-coded while-loop. 2014-06-05 Mario Lang @@ -16622,7 +16622,7 @@ 2013-06-04 Alan Mackenzie - Remove faulty optimisation from indentation calculation. + Remove faulty optimization from indentation calculation. * progmodes/cc-engine.el (c-guess-basic-syntax): Don't calculate search limit based on 2000 characters back from indent-point. === modified file 'lisp/org/org.el' --- lisp/org/org.el 2014-10-03 15:44:46 +0000 +++ lisp/org/org.el 2014-10-12 20:09:15 +0000 @@ -7571,7 +7571,7 @@ in the current line after point \(see `org-M-RET-may-split-line' on how to modify this behavior). -With one universal prefirx argument, set the user option +With one universal prefix argument, set the user option `org-insert-heading-respect-content' to t for the duration of the command. This modifies the behavior described above in this ways: on list items and at the beginning of normal lines, force === modified file 'lisp/progmodes/cc-engine.el' --- lisp/progmodes/cc-engine.el 2014-10-04 04:03:49 +0000 +++ lisp/progmodes/cc-engine.el 2014-10-12 20:09:15 +0000 @@ -5162,7 +5162,7 @@ ;; Now loop, one decl spot per iteration. We already have the first ;; match in `cfd-match-pos'. (while (progn - ;; Go foward over "false matches", one per iteration. + ;; Go forward over "false matches", one per iteration. (while (and (< cfd-match-pos cfd-limit) === modified file 'lisp/progmodes/cc-langs.el' --- lisp/progmodes/cc-langs.el 2014-10-04 04:03:49 +0000 +++ lisp/progmodes/cc-langs.el 2014-10-12 20:09:15 +0000 @@ -1591,7 +1591,7 @@ ;; The Emacs variables beginning-of-defun-function and end-of-defun-function ;; will be set so that commands like `mark-defun' and `narrow-to-defun' work ;; right. In older Emacsen, the key sequences C-M-a and C-M-e are, however, -;; bound directly to the CC Mode functions, allowing optimisation for large n. +;; bound directly to the CC Mode functions, allowing optimization for large n. ;; From Emacs 23, this isn't necessary any more, since n is passed to the two ;; functions. (c-lang-defconst beginning-of-defun-function === modified file 'src/ChangeLog' --- src/ChangeLog 2014-10-12 18:02:47 +0000 +++ src/ChangeLog 2014-10-12 20:09:15 +0000 @@ -10445,7 +10445,7 @@ (imagemagick_get_animation_cache): Fix a double-free error. (imagemagick_load_image): Remove the ping_wand code, which only apparently saved time on invalid animated images, and slowed down - everything else. Optimise for the common case. + everything else. Optimize for the common case. 2013-08-16 Xue Fuqiao === modified file 'src/font.c' --- src/font.c 2014-10-07 16:00:35 +0000 +++ src/font.c 2014-10-12 20:09:15 +0000 @@ -1184,14 +1184,14 @@ val = prop[XLFD_ENCODING_INDEX]; if (! NILP (val)) { - AUTO_STRING (stardash, "*-"); - val = concat2 (stardash, SYMBOL_NAME (val)); + AUTO_STRING (star_dash, "*-"); + val = concat2 (star_dash, SYMBOL_NAME (val)); } } else if (NILP (prop[XLFD_ENCODING_INDEX])) { - AUTO_STRING (dashstar, "-*"); - val = concat2 (SYMBOL_NAME (val), dashstar); + AUTO_STRING (dash_star, "-*"); + val = concat2 (SYMBOL_NAME (val), dash_star); } else { @@ -5028,7 +5028,7 @@ if (FONTP (arg)) { Lisp_Object tail, elt; - AUTO_STRING (equalstr, "="); + AUTO_STRING (equal, "="); val = Ffont_xlfd_name (arg, Qt); for (tail = AREF (arg, FONT_EXTRA_INDEX); CONSP (tail); @@ -5038,16 +5038,15 @@ if (EQ (XCAR (elt), QCscript) && SYMBOLP (XCDR (elt))) val = concat3 (val, SYMBOL_NAME (QCscript), - concat2 (equalstr, SYMBOL_NAME (XCDR (elt)))); + concat2 (equal, SYMBOL_NAME (XCDR (elt)))); else if (EQ (XCAR (elt), QClang) && SYMBOLP (XCDR (elt))) val = concat3 (val, SYMBOL_NAME (QClang), - concat2 (equalstr, SYMBOL_NAME (XCDR (elt)))); + concat2 (equal, SYMBOL_NAME (XCDR (elt)))); else if (EQ (XCAR (elt), QCotf) && CONSP (XCDR (elt)) && SYMBOLP (XCAR (XCDR (elt)))) val = concat3 (val, SYMBOL_NAME (QCotf), - concat2 (equalstr, - SYMBOL_NAME (XCAR (XCDR (elt))))); + concat2 (equal, SYMBOL_NAME (XCAR (XCDR (elt))))); } arg = val; } === modified file 'src/keymap.c' --- src/keymap.c 2014-10-08 22:05:48 +0000 +++ src/keymap.c 2014-10-12 20:09:15 +0000 @@ -1339,8 +1339,8 @@ *p = 0; c = reorder_modifiers (c); - AUTO_STRING (new_modstring, new_mods); - keystring = concat2 (new_modstring, XCDR (assoc)); + AUTO_STRING (new_mods_string, new_mods); + keystring = concat2 (new_mods_string, XCDR (assoc)); error ("To bind the key %s, use [?%s], not [%s]", SDATA (SYMBOL_NAME (c)), SDATA (keystring), @@ -2245,9 +2245,9 @@ if (CONSP (key) && INTEGERP (XCAR (key)) && INTEGERP (XCDR (key))) /* An interval from a map-char-table. */ { - AUTO_STRING (dotdot, ".."); + AUTO_STRING (dot_dot, ".."); return concat3 (Fsingle_key_description (XCAR (key), no_angles), - dotdot, + dot_dot, Fsingle_key_description (XCDR (key), no_angles)); } === modified file 'src/lread.c' --- src/lread.c 2014-10-02 14:01:27 +0000 +++ src/lread.c 2014-10-12 20:09:15 +0000 @@ -3661,8 +3661,8 @@ We don't use Fexpand_file_name because that would make the directory absolute now. */ { - AUTO_STRING (dotdotlisp, "../lisp/"); - elt = concat2 (dotdotlisp, Ffile_name_nondirectory (elt)); + AUTO_STRING (dot_dot_lisp, "../lisp/"); + elt = concat2 (dot_dot_lisp, Ffile_name_nondirectory (elt)); } } else if (EQ (elt, Vload_file_name) === modified file 'src/process.c' --- src/process.c 2014-10-01 03:28:16 +0000 +++ src/process.c 2014-10-12 20:09:15 +0000 @@ -4099,9 +4099,9 @@ #endif default: caller = Fnumber_to_string (make_number (connect_counter)); - AUTO_STRING (space_lessthan, " <"); - AUTO_STRING (greaterthan, ">"); - caller = concat3 (space_lessthan, caller, greaterthan); + AUTO_STRING (space_less_than, " <"); + AUTO_STRING (greater_than, ">"); + caller = concat3 (space_less_than, caller, greater_than); break; } === modified file 'test/ChangeLog' --- test/ChangeLog 2014-10-08 22:05:48 +0000 +++ test/ChangeLog 2014-10-12 20:09:15 +0000 @@ -313,7 +313,7 @@ 2014-06-05 Michal Nazarewicz - * automated/tildify-tests.el (tildify-test--test): Optimise the test + * automated/tildify-tests.el (tildify-test--test): Optimize the test slightly by reusing the same temporary buffer across multiple test cases. ------------------------------------------------------------ revno: 118099 committer: Michael Albinus branch nick: trunk timestamp: Sun 2014-10-12 20:27:37 +0200 message: * net/tramp-sh.el (tramp-get-remote-id): Check also for "gid". diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-10-11 20:00:59 +0000 +++ lisp/ChangeLog 2014-10-12 18:27:37 +0000 @@ -1,3 +1,7 @@ +2014-10-12 Michael Albinus + + * net/tramp-sh.el (tramp-get-remote-id): Check also for "gid". + 2014-10-11 Jan Djärv * cus-start.el (all): Add missing ns and boolean to === modified file 'lisp/net/tramp-sh.el' --- lisp/net/tramp-sh.el 2014-09-25 13:07:28 +0000 +++ lisp/net/tramp-sh.el 2014-10-12 18:27:37 +0000 @@ -5228,13 +5228,14 @@ (with-tramp-connection-property vec "id" (tramp-message vec 5 "Finding POSIX `id' command") (catch 'id-found - (let ((dl (tramp-get-remote-path vec)) - result) - (while (and dl (setq result (tramp-find-executable vec "id" dl t t))) - ;; Check POSIX parameter. - (when (tramp-send-command-and-check vec (format "%s -u" result)) - (throw 'id-found result)) - (setq dl (cdr dl))))))) + (dolist (cmd '("id" "gid")) + (let ((dl (tramp-get-remote-path vec)) + result) + (while (and dl (setq result (tramp-find-executable vec cmd dl t t))) + ;; Check POSIX parameter. + (when (tramp-send-command-and-check vec (format "%s -u" result)) + (throw 'id-found result)) + (setq dl (cdr dl)))))))) (defun tramp-get-remote-uid-with-id (vec id-format) (tramp-send-command-and-read ------------------------------------------------------------ revno: 118098 committer: Paul Eggert branch nick: trunk timestamp: Sun 2014-10-12 11:02:47 -0700 message: * nsmenu.m (clear): Assume OS X 10.6 or later. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-10-12 08:35:50 +0000 +++ src/ChangeLog 2014-10-12 18:02:47 +0000 @@ -1,3 +1,7 @@ +2014-10-12 Paul Eggert + + * nsmenu.m (clear): Assume OS X 10.6 or later. + 2014-10-12 Jan Djärv * unexmacosx.c: Remove include ppc/reloc.h. === modified file 'src/nsmenu.m' --- src/nsmenu.m 2014-10-12 08:35:50 +0000 +++ src/nsmenu.m 2014-10-12 18:02:47 +0000 @@ -693,9 +693,7 @@ { NSMenuItem *item = [self itemAtIndex: n]; NSString *title = [item title]; - if (([title length] == 0 /* OSX 10.5 */ - || [ns_app_name isEqualToString: title] /* from 10.6 on */ - || [@"Apple" isEqualToString: title]) /* older */ + if ([ns_app_name isEqualToString: title] && ![item isSeparatorItem]) continue; [self removeItemAtIndex: n]; ------------------------------------------------------------ revno: 118097 committer: Paul Eggert branch nick: trunk timestamp: Sun 2014-10-12 07:56:58 -0700 message: Update doc to say Mac OS X 10.6 or later now required. * doc/emacs/macos.texi (Mac OS / GNUstep, Mac / GNUstep Basics) (Mac / GNUstep Customization): * nextstep/README: Mac OS X 10.6 or later now required. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2014-10-09 04:23:09 +0000 +++ doc/emacs/ChangeLog 2014-10-12 14:56:58 +0000 @@ -1,3 +1,8 @@ +2014-10-12 Paul Eggert + + * macos.texi (Mac OS / GNUstep, Mac / GNUstep Basics) + (Mac / GNUstep Customization): Mac OS X 10.6 or later now required. + 2014-10-09 Glenn Morris * package.texi (Package Menu): The package list was changed to not === modified file 'doc/emacs/macos.texi' --- doc/emacs/macos.texi 2014-05-29 06:15:48 +0000 +++ doc/emacs/macos.texi 2014-10-12 14:56:58 +0000 @@ -12,7 +12,7 @@ Mac OS X with native window system support. On Mac OS X, Emacs can be built either without window system support, with X11, or with the Cocoa interface; this section only applies to the Cocoa build. This -does not support versions of Mac OS X earlier than 10.4. +does not support versions of Mac OS X earlier than 10.6. For various historical and technical reasons, Emacs uses the term @samp{Nextstep} internally, instead of ``Cocoa'' or ``Mac OS X''; for @@ -84,7 +84,7 @@ they would when launched from the shell. For the PATH and MANPATH variables, a system-wide method -of setting PATH is recommended on Mac OS X 10.5 and later, using the +of setting PATH is recommended on Mac OS X, using the @file{/etc/paths} files and the @file{/etc/paths.d} directory. @node Mac / GNUstep Customization @@ -118,7 +118,7 @@ @kbd{M-x list-faces-display}. @cindex Core Text, on Mac OS X -In Mac OS X 10.5 and later, Emacs uses a Core Text based font backend +In Mac OS X, Emacs uses a Core Text based font backend by default. If you prefer the older font style, enter the following at the command-line before starting Emacs: === modified file 'nextstep/ChangeLog' --- nextstep/ChangeLog 2014-06-25 06:39:03 +0000 +++ nextstep/ChangeLog 2014-10-12 14:56:58 +0000 @@ -1,3 +1,7 @@ +2014-10-12 Paul Eggert + + * README: Mac OS X 10.6 or later now required. + 2014-06-25 Glenn Morris * Makefile.in (${ns_appbindir}): New. === modified file 'nextstep/README' --- nextstep/README 2014-01-01 07:43:34 +0000 +++ nextstep/README 2014-10-12 14:56:58 +0000 @@ -12,7 +12,7 @@ Requirements ------------ -MacOS X 10.4 or later +Mac OS X 10.6 or later - or - === modified file 'src/macfont.m' --- src/macfont.m 2014-10-12 08:35:50 +0000 +++ src/macfont.m 2014-10-12 14:56:58 +0000 @@ -40,7 +40,7 @@ static struct font_driver macfont_driver; -/* Core Text, for Mac OS X 10.5 and later. */ +/* Core Text, for Mac OS X. */ static Lisp_Object Qmac_ct; static double mac_ctfont_get_advance_width_for_glyph (CTFontRef, CGGlyph); @@ -2706,7 +2706,7 @@ s->width, FONT_HEIGHT (s->font)); else background_rect = CGRectNull; - + text_position = CGPointMake (x, -y); glyphs = xmalloc (sizeof (CGGlyph) * len); { @@ -2735,7 +2735,7 @@ if (!CGRectIsNull (background_rect)) { - if (s->hl == DRAW_MOUSE_FACE) + if (s->hl == DRAW_MOUSE_FACE) { face = FACE_FROM_ID (s->f, MOUSE_HL_INFO (s->f)->mouse_face_face_id); if (!face) @@ -2744,7 +2744,7 @@ CG_SET_FILL_COLOR_WITH_FACE_BACKGROUND (context, face, f); CGContextFillRects (context, &background_rect, 1); } - + if (macfont_info->cgfont) { CGAffineTransform atfm; === modified file 'src/nsterm.m' --- src/nsterm.m 2014-10-12 08:35:50 +0000 +++ src/nsterm.m 2014-10-12 14:56:58 +0000 @@ -3445,7 +3445,7 @@ } #endif -/* GNUstep and OSX <= 10.4 does not have cancelTracking. */ +/* GNUstep does not have cancelTracking. */ #ifdef NS_IMPL_COCOA /* Check if menu open should be canceled or continued as normal. */ void @@ -4518,7 +4518,7 @@ #define NSAppKitVersionNumber10_8 1187 #endif - if (NSAppKitVersionNumber <= NSAppKitVersionNumber10_8) + if (NSAppKitVersionNumber <= NSAppKitVersionNumber10_8) { [super run]; return; @@ -7065,7 +7065,7 @@ #endif #endif - for (i = 0; i < nr_screens; ++i) + for (i = 0; i < nr_screens; ++i) { NSScreen *s = [screens objectAtIndex: i]; NSRect scrrect = [s frame]; ------------------------------------------------------------ revno: 118096 committer: Jan D. branch nick: trunk timestamp: Sun 2014-10-12 10:35:50 +0200 message: Require OSX >= 10.6. Remove PowerPC unexec code. * configure.ac: Require OSX 10.6. Remove NSInteger test, use nsfont for Gnustep, macfont for OSX. * etc/NEWS: OSX required is 10.6 or newer. * src/Makefile.in: Replace nsfont.o macfont.o with ns_fontfile in comment. * src/macfont.h (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_FORMAT_BITMAP) (mac_font_copy_non_synthetic_table): Remove versions for OSX < 10.6 * src/nsfns.m: Always include src/macfont.h on COCOA. (ns_filename_from_panel, ns_directory_from_panel) (Fx_create_frame, Fns_popup_font_panel, ns_run_file_dialog) (Fns_read_file_name, Fns_list_services): Remove code for OSX < 10.6 * src/nsterm.m: Always include src/macfont.h on COCOA. (ns_update_auto_hide_menu_bar, ns_draw_fringe_bitmap) (ns_dumpglyphs_image, ns_check_menu_open) (applicationDidFinishLaunching) (antialiasThresholdDidChange:) (keyDown:, toggleFullScreen:, setPosition:portion:whole:): Remove checks for OSX <= 10.5/10.6. (changeFont:): Use macfont on COCOA, nsfont on GNUSTEP. (syms_of_nsterm): Call syms_of_macfont on COCOA, syms_of_nsfont on GNUSTEP. * src/macfont.m: Remove >= 1050 check. (macfont_create_family_with_symbol) (macfont_get_glyph_for_character) (mac_font_get_glyphs_for_variants) (mac_ctfont_create_available_families, syms_of_macfont): Remove code for OSX < 10.6. (mac_font_family_group, mac_font_family_compare): Remove, only used for OSX < 10.6. * src/nsimage.m (allocInitFromFile:): Remove code for OSX < 10.6. * src/nsmenu.m (NSMenuDidBeginTrackingNotification): Remove. (x_activate_menubar, trackingNotification:): Remove check for OSX >= 10.5. (menuNeedsUpdate:): Remove check for OSX < 10.5. * src/nsterm.h (MAC_OS_X_VERSION_10_4, MAC_OS_X_VERSION_10_5): Remove. (NS_HAVE_NSINTEGER): Remove block. Remove >= OSX 10.6 tests. * src/unexmacosx.c: Remove include ppc/reloc.h. (unrelocate, copy_dysymtab): Remove PPC code. (rebase_reloc_address): Remove, only used for PPC: diff: === modified file 'ChangeLog' --- ChangeLog 2014-10-12 06:09:50 +0000 +++ ChangeLog 2014-10-12 08:35:50 +0000 @@ -1,3 +1,8 @@ +2014-10-12 Jan Djärv + + * configure.ac: Require OSX 10.6. Remove NSInteger test, + use nsfont for Gnustep, macfont for OSX. + 2014-10-12 Paul Eggert Fix putenv race conditions that can crash Emacs (Bug#8705). === modified file 'configure.ac' --- configure.ac 2014-10-12 06:09:50 +0000 +++ configure.ac 2014-10-12 08:35:50 +0000 @@ -1717,12 +1717,14 @@ ns_appbindir=${ns_appdir}/Contents/MacOS ns_appresdir=${ns_appdir}/Contents/Resources ns_appsrc=Cocoa/Emacs.base + ns_fontfile=macfont.o elif test -f $GNUSTEP_CONFIG_FILE; then NS_IMPL_GNUSTEP=yes ns_appdir=`pwd`/nextstep/Emacs.app ns_appbindir=${ns_appdir} ns_appresdir=${ns_appdir}/Resources ns_appsrc=GNUstep/Emacs.base + ns_fontfile=nsfont.o dnl FIXME sourcing this several times in subshells seems inefficient. GNUSTEP_SYSTEM_HEADERS="$(. $GNUSTEP_CONFIG_FILE; echo $GNUSTEP_SYSTEM_HEADERS)" GNUSTEP_SYSTEM_LIBRARIES="$(. $GNUSTEP_CONFIG_FILE; echo $GNUSTEP_SYSTEM_LIBRARIES)" @@ -1765,48 +1767,24 @@ macfont_file="" if test "${NS_IMPL_COCOA}" = "yes"; then - AC_MSG_CHECKING([for OSX 10.4 or newer]) + AC_MSG_CHECKING([for OSX 10.6 or newer]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include ], [ #ifdef MAC_OS_X_VERSION_MAX_ALLOWED -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1040 +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 ; /* OK */ #else - error "OSX 10.4 or newer required"; + error "OSX 10.6 or newer required"; #endif #endif ])], - ns_osx_have_104=yes, - ns_osx_have_104=no) - AC_MSG_RESULT([$ns_osx_have_104]) + ns_osx_have_106=yes, + ns_osx_have_106=no) + AC_MSG_RESULT([$ns_osx_have_106]) - if test $ns_osx_have_104 = no; then - AC_MSG_ERROR([`OSX 10.4 or newer is required']); - fi - AC_MSG_CHECKING([for OSX 10.5 or newer]) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include ], - [ -#ifdef MAC_OS_X_VERSION_MAX_ALLOWED -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1050 - ; /* OK */ -#else - error "OSX 10.5 not found"; -#endif -#endif - ])], - ns_osx_have_105=yes, - ns_osx_have_105=no) - AC_MSG_RESULT([$ns_osx_have_105]) - if test $ns_osx_have_105 = yes; then - macfont_file="macfont.o" - fi - fi - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include ], - [NSInteger i;])], - ns_have_nsinteger=yes, - ns_have_nsinteger=no) - if test $ns_have_nsinteger = yes; then - AC_DEFINE(NS_HAVE_NSINTEGER, 1, [Define to 1 if `NSInteger' is defined.]) + if test $ns_osx_have_106 = no; then + AC_MSG_ERROR([`OSX 10.6 or newer is required']); + fi fi fi @@ -1840,7 +1818,7 @@ INSTALL_ARCH_INDEP_EXTRA= fi - NS_OBJC_OBJ="nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o nsfont.o $macfont_file" + NS_OBJC_OBJ="nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o $ns_fontfile" fi CFLAGS="$tmp_CFLAGS" CPPFLAGS="$tmp_CPPFLAGS" === modified file 'etc/ChangeLog' --- etc/ChangeLog 2014-10-09 01:52:47 +0000 +++ etc/ChangeLog 2014-10-12 08:35:50 +0000 @@ -1,3 +1,7 @@ +2014-10-12 Jan Djärv + + * NEWS: OSX required is 10.6 or newer. + 2014-10-09 Leo Liu * NEWS: Mention optional arg to terpri and new cl-lib functions. === modified file 'etc/NEWS' --- etc/NEWS 2014-10-11 02:54:11 +0000 +++ etc/NEWS 2014-10-12 08:35:50 +0000 @@ -36,6 +36,9 @@ undumping code to GCC under IRIX, or by configuring --with-wide-int, or by sticking with Emacs 24.4. +** Building Emacs on OSX now requires 10.6 or newer. +That also means that PowerPC is not supported. + --- ** The configure option `--with-pkg-config-prog' has been removed. Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to. === modified file 'src/ChangeLog' --- src/ChangeLog 2014-10-12 06:09:50 +0000 +++ src/ChangeLog 2014-10-12 08:35:50 +0000 @@ -1,3 +1,51 @@ +2014-10-12 Jan Djärv + + * unexmacosx.c: Remove include ppc/reloc.h. + (unrelocate, copy_dysymtab): Remove PPC code. + (rebase_reloc_address): Remove, only used for PPC: + + * nsterm.m: Always include macfont.h on COCOA. + (ns_update_auto_hide_menu_bar, ns_draw_fringe_bitmap) + (ns_dumpglyphs_image, ns_check_menu_open) + (applicationDidFinishLaunching) + (antialiasThresholdDidChange:) + (keyDown:, toggleFullScreen:, setPosition:portion:whole:): Remove + checks for OSX <= 10.5/10.6. + (changeFont:): Use macfont on COCOA, nsfont on GNUSTEP. + (syms_of_nsterm): Call syms_of_macfont on COCOA, syms_of_nsfont on + GNUSTEP. + + * nsterm.h (MAC_OS_X_VERSION_10_4, MAC_OS_X_VERSION_10_5): Remove. + (NS_HAVE_NSINTEGER): Remove block. + Remove >= OSX 10.6 tests. + + * nsmenu.m (NSMenuDidBeginTrackingNotification): Remove. + (x_activate_menubar, trackingNotification:): Remove check for + OSX >= 10.5. + (menuNeedsUpdate:): Remove check for OSX < 10.5. + + * nsimage.m (allocInitFromFile:): Remove code for OSX < 10.6. + + * nsfns.m: Always include macfont.h on COCOA. + (ns_filename_from_panel, ns_directory_from_panel) + (Fx_create_frame, Fns_popup_font_panel, ns_run_file_dialog) + (Fns_read_file_name, Fns_list_services): Remove code for OSX < 10.6 + + * macfont.m: Remove >= 1050 check. + (macfont_create_family_with_symbol) + (macfont_get_glyph_for_character) + (mac_font_get_glyphs_for_variants) + (mac_ctfont_create_available_families, syms_of_macfont): Remove + code for OSX < 10.6. + (mac_font_family_group, mac_font_family_compare): Remove, only used + for OSX < 10.6. + + * macfont.h (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_FORMAT_BITMAP) + (mac_font_copy_non_synthetic_table): Remove versions for OSX < 10.6 + + * Makefile.in: Replace nsfont.o macfont.o with ns_fontfile in + comment. + 2014-10-12 Paul Eggert Fix putenv race conditions with undefined behavior (Bug#8705). === modified file 'src/Makefile.in' --- src/Makefile.in 2014-10-07 20:17:09 +0000 +++ src/Makefile.in 2014-10-12 08:35:50 +0000 @@ -250,7 +250,7 @@ MSDOS_X_OBJ = NS_OBJ=@NS_OBJ@ -## nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o nsfont.o macfont.o if HAVE_NS. +## nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o ns_fontfile if HAVE_NS. NS_OBJC_OBJ=@NS_OBJC_OBJ@ ## Only set if NS_IMPL_GNUSTEP. GNU_OBJC_CFLAGS=@GNU_OBJC_CFLAGS@ === modified file 'src/macfont.h' --- src/macfont.h 2014-07-20 13:18:47 +0000 +++ src/macfont.h 2014-10-12 08:35:50 +0000 @@ -57,11 +57,7 @@ #define MAC_FONT_CASCADE_LIST_ATTRIBUTE kCTFontCascadeListAttribute #define MAC_FONT_CHARACTER_SET_ATTRIBUTE kCTFontCharacterSetAttribute #define MAC_FONT_LANGUAGES_ATTRIBUTE kCTFontLanguagesAttribute -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 #define MAC_FONT_FORMAT_ATTRIBUTE kCTFontFormatAttribute -#else -#define MAC_FONT_FORMAT_ATTRIBUTE (CFSTR ("NSCTFontFormatAttribute")) -#endif #define MAC_FONT_SYMBOLIC_TRAIT kCTFontSymbolicTrait #define MAC_FONT_WEIGHT_TRAIT kCTFontWeightTrait #define MAC_FONT_WIDTH_TRAIT kCTFontWidthTrait @@ -79,11 +75,7 @@ }; enum { -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 MAC_FONT_FORMAT_BITMAP = kCTFontFormatBitmap -#else - MAC_FONT_FORMAT_BITMAP = 5 -#endif }; enum { @@ -112,13 +104,8 @@ #define mac_font_get_underline_position CTFontGetUnderlinePosition #define mac_font_get_underline_thickness CTFontGetUnderlineThickness #define mac_font_copy_graphics_font(font) CTFontCopyGraphicsFont (font, NULL) -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 #define mac_font_copy_non_synthetic_table(font, table) \ CTFontCopyTable (font, table, kCTFontTableOptionNoOptions) -#else -#define mac_font_copy_non_synthetic_table(font, table) \ - CTFontCopyTable (font, table, kCTFontTableOptionExcludeSynthetic) -#endif #define mac_font_create_preferred_family_for_attributes \ mac_ctfont_create_preferred_family_for_attributes === modified file 'src/macfont.m' --- src/macfont.m 2014-10-05 11:34:59 +0000 +++ src/macfont.m 2014-10-12 08:35:50 +0000 @@ -36,8 +36,6 @@ #include "macfont.h" #include "macuvs.h" -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1050 - #include static struct font_driver macfont_driver; @@ -926,22 +924,9 @@ if (family_name == NULL) return NULL; -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 - if (CTFontManagerCompareFontFamilyNames != NULL) -#endif { family_name_comparator = CTFontManagerCompareFontFamilyNames; } -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 - else /* CTFontManagerCompareFontFamilyNames == NULL */ -#endif -#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 */ -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 - { - family_name_comparator = mac_font_family_compare; - } -#endif if ((*family_name_comparator) (family_name, CFSTR ("LastResort"), NULL) == kCFCompareEqualTo) @@ -1331,12 +1316,8 @@ CGGlyph *glyphs; int i, len; int nrows; -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 dispatch_queue_t queue; dispatch_group_t group = NULL; -#else - int nkeys; -#endif if (row != 0) { @@ -1374,14 +1355,12 @@ return glyph; } -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 queue = dispatch_get_global_queue (DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); group = dispatch_group_create (); dispatch_group_async (group, queue, ^{ int nkeys; uintptr_t key; -#endif nkeys = nkeys_or_perm; for (key = row * (256 / NGLYPHS_IN_VALUE); ; key++) if (CFDictionaryContainsKey (dictionary, @@ -1392,9 +1371,7 @@ if (--nkeys == 0) break; } -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 }); -#endif } len = 0; @@ -1436,13 +1413,11 @@ cache->glyph.matrix[nrows - 1] = glyphs; cache->glyph.nrows = nrows; -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 if (group) { dispatch_group_wait (group, DISPATCH_TIME_FOREVER); dispatch_release (group); } -#endif } return cache->glyph.matrix[nkeys_or_perm - ROW_PERM_OFFSET][c % 256]; @@ -3165,11 +3140,9 @@ struct variation_selector_record *records = uvs->variation_selector_records; CFIndex i; UInt32 ir, nrecords; -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 dispatch_queue_t queue = dispatch_get_global_queue (DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_group_t group = dispatch_group_create (); -#endif nrecords = BUINT32_VALUE (uvs->num_var_selector_records); i = 0; @@ -3193,9 +3166,7 @@ default_uvs_offset = BUINT32_VALUE (records[ir].default_uvs_offset); non_default_uvs_offset = BUINT32_VALUE (records[ir].non_default_uvs_offset); -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 dispatch_group_async (group, queue, ^{ -#endif glyphs[i] = kCGFontIndexInvalid; if (default_uvs_offset) @@ -3247,18 +3218,14 @@ BUINT24_VALUE (mappings[hi - 1].unicode_value) == c) glyphs[i] = BUINT16_VALUE (mappings[hi - 1].glyph_id); } -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 }); -#endif i++; ir++; } while (i < count) glyphs[i++] = kCGFontIndexInvalid; -#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 dispatch_group_wait (group, DISPATCH_TIME_FOREVER); dispatch_release (group); -#endif } static int @@ -3460,10 +3427,6 @@ { CFMutableArrayRef families = NULL; -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 - if (CTFontManagerCopyAvailableFontFamilyNames != NULL) -#endif { CFArrayRef orig_families = CTFontManagerCopyAvailableFontFamilyNames (); @@ -3487,56 +3450,8 @@ CFRelease (orig_families); } } -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 - else /* CTFontManagerCopyAvailableFontFamilyNames == NULL */ -#endif -#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 */ -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 - { - CTFontCollectionRef collection; - CFArrayRef descs = NULL; - - collection = CTFontCollectionCreateFromAvailableFonts (NULL); - if (collection) - { - descs = CTFontCollectionCreateMatchingFontDescriptors (collection); - CFRelease (collection); - } - if (descs) - { - CFIndex i, count = CFArrayGetCount (descs); - - families = CFArrayCreateMutable (NULL, count, &kCFTypeArrayCallBacks); - if (families) - for (i = 0; i < count; i++) - { - FontDescriptorRef desc = CFArrayGetValueAtIndex (descs, i); - CFStringRef name = - mac_font_descriptor_copy_attribute (desc, - MAC_FONT_FAMILY_NAME_ATTRIBUTE); - - if (name) - { - CFIndex p, limit = CFArrayGetCount (families); - - p = CFArrayBSearchValues (families, CFRangeMake (0, limit), - (const void *) name, - mac_font_family_compare, NULL); - if (p >= limit) - CFArrayAppendValue (families, name); - else if (mac_font_family_compare - (CFArrayGetValueAtIndex (families, p), - name, NULL) != kCFCompareEqualTo) - CFArrayInsertValueAtIndex (families, p, name); - CFRelease (name); - } - } - CFRelease (descs); - } - } -#endif - - return families; + + return families; } static Boolean @@ -3855,41 +3770,6 @@ } #endif -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 -static inline int -mac_font_family_group (CFStringRef family) -{ - if (CFStringHasPrefix (family, CFSTR ("#"))) - return 2; - else - { - CFRange range; - - range = CFStringFind (family, CFSTR ("Apple"), - kCFCompareCaseInsensitive | kCFCompareAnchored); - if (range.location != kCFNotFound) - return 1; - - return 0; - } -} - -static CFComparisonResult -mac_font_family_compare (const void *val1, const void *val2, void *context) -{ - CFStringRef family1 = (CFStringRef) val1, family2 = (CFStringRef) val2; - int group1, group2; - - group1 = mac_font_family_group (family1); - group2 = mac_font_family_group (family2); - if (group1 < group2) - return kCFCompareLessThan; - if (group1 > group2) - return kCFCompareGreaterThan; - return CFStringCompare (family1, family2, kCFCompareCaseInsensitive); -} -#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1060 */ - static CFArrayRef mac_font_copy_default_descriptors_for_language (CFStringRef language) { @@ -4040,13 +3920,10 @@ register_font_driver (&macfont_driver, f); } -#endif // MAC_OS_X_VERSION_MAX_ALLOWED >= 1050 - void syms_of_macfont (void) { -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1050 static struct font_driver mac_font_driver; DEFSYM (Qmac_ct, "mac-ct"); @@ -4055,5 +3932,4 @@ DEFSYM (QCdestination, ":destination"); DEFSYM (QCminspace, ":minspace"); -#endif } === modified file 'src/nsfns.m' --- src/nsfns.m 2014-09-03 15:10:29 +0000 +++ src/nsfns.m 2014-10-12 08:35:50 +0000 @@ -46,10 +46,8 @@ #ifdef NS_IMPL_COCOA #include -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 #include "macfont.h" #endif -#endif #if 0 int fns_trace_num = 1; @@ -197,7 +195,7 @@ static NSString * ns_filename_from_panel (NSSavePanel *panel) { -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA NSURL *url = [panel URL]; NSString *str = [url path]; return str; @@ -209,7 +207,7 @@ static NSString * ns_directory_from_panel (NSSavePanel *panel) { -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA NSURL *url = [panel directoryURL]; NSString *str = [url path]; return str; @@ -1197,13 +1195,10 @@ block_input (); #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - if (CTGetCoreTextVersion != NULL - && CTGetCoreTextVersion () >= kCTVersionNumber10_5) mac_register_font_driver (f); -#endif -#endif - register_font_driver (&nsfont_driver, f); +#else + register_font_driver (&nsfont_driver, f); +#endif x_default_parameter (f, parms, Qfont_backend, Qnil, "fontBackend", "FontBackend", RES_TYPE_STRING); @@ -1414,13 +1409,11 @@ id fm = [NSFontManager sharedFontManager]; struct font *font = f->output_data.ns->font; NSFont *nsfont; - if (EQ (font->driver->type, Qns)) - nsfont = ((struct nsfont_info *)font)->nsfont; +#ifdef NS_IMPL_GNUSTEP + nsfont = ((struct nsfont_info *)font)->nsfont; +#endif #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - else - nsfont = (NSFont *) macfont_get_nsctfont (font); -#endif + nsfont = (NSFont *) macfont_get_nsctfont (font); #endif [fm setSelectedFont: nsfont isMultiple: NO]; [fm orderFrontFontPanel: NSApp]; @@ -1442,8 +1435,7 @@ { id panel; BOOL ret; -#if ! defined (NS_IMPL_COCOA) || \ - MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_GNUSTEP NSString *dirS, *initS; BOOL no_types; #endif @@ -1453,8 +1445,7 @@ ns_run_file_dialog (void) { if (ns_fd_data.panel == nil) return; -#if defined (NS_IMPL_COCOA) && \ - MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA ns_fd_data.ret = [ns_fd_data.panel runModal]; #else if (ns_fd_data.no_types) @@ -1534,8 +1525,7 @@ block_input (); ns_fd_data.panel = panel; ns_fd_data.ret = NO; -#if defined (NS_IMPL_COCOA) && \ - MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA if (! NILP (mustmatch) || ! NILP (dir_only_p)) [panel setAllowedFileTypes: nil]; if (dirS) [panel setDirectoryURL: [NSURL fileURLWithPath: dirS]]; @@ -1995,7 +1985,7 @@ doc: /* List available Nextstep services by querying NSApp. */) (void) { -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA /* You can't get services like this in 10.6+. */ return Qnil; #else === modified file 'src/nsimage.m' --- src/nsimage.m 2014-01-01 07:43:34 +0000 +++ src/nsimage.m 2014-10-12 08:35:50 +0000 @@ -188,7 +188,7 @@ image = [[EmacsImage alloc] initByReferencingFile: [NSString stringWithUTF8String: SSDATA (found)]]; -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA imgRep = [NSBitmapImageRep imageRepWithData:[image TIFFRepresentation]]; #else imgRep = [image bestRepresentationForDevice: nil]; === modified file 'src/nsmenu.m' --- src/nsmenu.m 2014-06-30 12:38:09 +0000 +++ src/nsmenu.m 2014-10-12 08:35:50 +0000 @@ -492,11 +492,9 @@ x_activate_menubar (struct frame *f) { #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 ns_update_menubar (f, true, nil); ns_check_pending_open_menu (); #endif -#endif } @@ -542,23 +540,14 @@ } #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5 -extern NSString *NSMenuDidBeginTrackingNotification; -#endif -#endif - -#ifdef NS_IMPL_COCOA -(void)trackingNotification:(NSNotification *)notification { /* Update menu in menuNeedsUpdate only while tracking menus. */ trackingMenu = ([notification name] == NSMenuDidBeginTrackingNotification ? 1 : 0); -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 if (! trackingMenu) ns_check_menu_open (nil); -#endif } -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - (void)menuWillOpen:(NSMenu *)menu { ++trackingMenu; @@ -579,7 +568,6 @@ { --trackingMenu; } -#endif /* OSX >= 10.5 */ #endif /* NS_IMPL_COCOA */ @@ -608,8 +596,7 @@ if (trackingMenu == 0) return; /*fprintf (stderr, "Updating menu '%s'\n", [[self title] UTF8String]); NSLog (@"%@\n", event); */ -#if (! defined (NS_IMPL_COCOA) \ - || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5) +#ifdef NS_IMPL_GNUSTEP /* Don't know how to do this for anything other than OSX >= 10.5 This is wrong, as it might run Lisp code in the event loop. */ ns_update_menubar (frame, true, self); === modified file 'src/nsterm.h' --- src/nsterm.h 2014-09-24 07:17:51 +0000 +++ src/nsterm.h 2014-10-12 08:35:50 +0000 @@ -27,12 +27,6 @@ #ifdef HAVE_NS #ifdef NS_IMPL_COCOA -#ifndef MAC_OS_X_VERSION_10_4 -#define MAC_OS_X_VERSION_10_4 1040 -#endif -#ifndef MAC_OS_X_VERSION_10_5 -#define MAC_OS_X_VERSION_10_5 1050 -#endif #ifndef MAC_OS_X_VERSION_10_6 #define MAC_OS_X_VERSION_10_6 1060 #endif @@ -58,21 +52,7 @@ versions. On Cocoa >= 10.5, functions expect CGFloat*. Make compatible type. */ #ifdef NS_IMPL_COCOA - -#ifndef NS_HAVE_NSINTEGER -#if defined (__LP64__) && __LP64__ -typedef double CGFloat; -typedef long NSInteger; -typedef unsigned long NSUInteger; -#else -typedef float CGFloat; -typedef int NSInteger; -typedef unsigned int NSUInteger; -#endif /* not LP64 */ -#endif /* not NS_HAVE_NSINTEGER */ - typedef CGFloat EmacsCGFloat; - #elif GNUSTEP_GUI_MAJOR_VERSION > 0 || GNUSTEP_GUI_MINOR_VERSION >= 22 typedef CGFloat EmacsCGFloat; #else @@ -139,7 +119,7 @@ @class EmacsToolbar; -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA @interface EmacsView : NSView #else @interface EmacsView : NSView @@ -217,7 +197,7 @@ ========================================================================== */ -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA @interface EmacsMenu : NSMenu #else @interface EmacsMenu : NSMenu @@ -249,7 +229,7 @@ @class EmacsImage; -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA @interface EmacsToolbar : NSToolbar #else @interface EmacsToolbar : NSToolbar @@ -305,7 +285,7 @@ - (void)timeout_handler: (NSTimer *)timedEntry; @end -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA @interface EmacsTooltip : NSObject #else @interface EmacsTooltip : NSObject === modified file 'src/nsterm.m' --- src/nsterm.m 2014-10-05 18:03:42 +0000 +++ src/nsterm.m 2014-10-12 08:35:50 +0000 @@ -65,10 +65,8 @@ #endif #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 #include "macfont.h" #endif -#endif /* call tracing */ #if 0 @@ -706,7 +704,6 @@ ns_update_auto_hide_menu_bar (void) { #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 block_input (); NSTRACE (ns_update_auto_hide_menu_bar); @@ -739,7 +736,6 @@ unblock_input (); #endif -#endif } @@ -2358,7 +2354,7 @@ [img setXBMColor: bm_color]; } -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA [img drawInRect: r fromRect: NSZeroRect operation: NSCompositeSourceOver @@ -3037,7 +3033,7 @@ /* Draw the image.. do we need to draw placeholder if img ==nil? */ if (img != nil) { -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA NSRect dr = NSMakeRect (x, y, s->slice.width, s->slice.height); NSRect ir = NSMakeRect (s->slice.x, s->slice.y, s->slice.width, s->slice.height); @@ -3450,8 +3446,7 @@ #endif /* GNUstep and OSX <= 10.4 does not have cancelTracking. */ -#if defined (NS_IMPL_COCOA) && \ - MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 +#ifdef NS_IMPL_COCOA /* Check if menu open should be canceled or continued as normal. */ void ns_check_menu_open (NSMenu *menu) @@ -3514,7 +3509,7 @@ menu_will_open_state = MENU_OPENING; } } -#endif /* NS_IMPL_COCOA) && >= MAC_OS_X_VERSION_10_5 */ +#endif /* NS_IMPL_COCOA */ static void unwind_apploopnr (Lisp_Object not_used) @@ -4720,14 +4715,12 @@ [self antialiasThresholdDidChange:nil]; #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(antialiasThresholdDidChange:) name:NSAntialiasThresholdChangedNotification object:nil]; #endif -#endif ns_send_appdefined (-2); } @@ -4735,10 +4728,8 @@ - (void)antialiasThresholdDidChange:(NSNotification *)notification { #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 macfont_update_antialias_threshold (); #endif -#endif } @@ -5078,13 +5069,11 @@ if (!emacs_event) return; - if (EQ (font->driver->type, Qns)) - nsfont = ((struct nsfont_info *)font)->nsfont; +#ifdef NS_IMPL_GNUSTEP + nsfont = ((struct nsfont_info *)font)->nsfont; +#endif #ifdef NS_IMPL_COCOA -#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 - else - nsfont = (NSFont *) macfont_get_nsctfont (font); -#endif + nsfont = (NSFont *) macfont_get_nsctfont (font); #endif if ((newFont = [sender convertFont: nsfont])) @@ -5136,7 +5125,7 @@ int code; unsigned fnKeysym = 0; static NSMutableArray *nsEvArray; -#if !defined (NS_IMPL_COCOA) || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_GNUSTEP static BOOL firstTime = YES; #endif int left_is_none; @@ -5367,7 +5356,7 @@ } -#if !defined (NS_IMPL_COCOA) || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_GNUSTEP /* if we get here we should send the key for input manager processing */ /* Disable warning, there is nothing a user can do about it anyway, and it does not seem to matter. */ @@ -6509,8 +6498,7 @@ /* Hide dock and menubar if we are on the primary screen. */ if (onFirstScreen) { -#if defined (NS_IMPL_COCOA) && \ - MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA NSApplicationPresentationOptions options = NSApplicationPresentationAutoHideDock | NSApplicationPresentationAutoHideMenuBar; @@ -6562,8 +6550,7 @@ if (onFirstScreen) { -#if defined (NS_IMPL_COCOA) && \ - MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 +#ifdef NS_IMPL_COCOA [NSApp setPresentationOptions: NSApplicationPresentationDefault]; #else [NSMenu setMenuBarVisible:YES]; @@ -7285,7 +7272,7 @@ if (portion >= whole) { -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_5 +#ifdef NS_IMPL_COCOA [self setKnobProportion: 1.0]; [self setDoubleValue: 1.0]; #else @@ -7299,7 +7286,7 @@ portion = max ((float)whole*min_portion/pixel_height, portion); pos = (float)position / (whole - portion); por = (CGFloat)portion/whole; -#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_5 +#ifdef NS_IMPL_COCOA [self setKnobProportion: por]; [self setDoubleValue: pos]; #else @@ -7829,14 +7816,12 @@ DEFSYM (Qcocoa, "cocoa"); DEFSYM (Qgnustep, "gnustep"); - syms_of_nsfont (); #ifdef NS_IMPL_COCOA Fprovide (Qcocoa, Qnil); -#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1050 syms_of_macfont (); -#endif #else Fprovide (Qgnustep, Qnil); + syms_of_nsfont (); #endif } === modified file 'src/unexmacosx.c' --- src/unexmacosx.c 2014-09-22 19:20:45 +0000 +++ src/unexmacosx.c 2014-10-12 08:35:50 +0000 @@ -107,9 +107,6 @@ #include #include #include -#if defined (__ppc__) -#include -#endif #ifdef HAVE_MALLOC_MALLOC_H #include #else @@ -1033,17 +1030,8 @@ name, i, reloc_info.r_type); } else - switch (sc_reloc_info->r_type) - { -#if defined (__ppc__) - case PPC_RELOC_PB_LA_PTR: - /* nothing to do for prebound lazy pointer */ - break; -#endif - default: - unexec_error ("unrelocate: %s:%d cannot handle scattered type = %d", - name, i, sc_reloc_info->r_type); - } + unexec_error ("unrelocate: %s:%d cannot handle scattered type = %d", + name, i, sc_reloc_info->r_type); } if (nrel > 0) @@ -1051,35 +1039,6 @@ unreloc_count, nrel, name); } -#if __ppc64__ -/* Rebase r_address in the relocation table. */ -static void -rebase_reloc_address (off_t reloff, int nrel, long linkedit_delta, long diff) -{ - int i; - struct relocation_info reloc_info; - struct scattered_relocation_info *sc_reloc_info - = (struct scattered_relocation_info *) &reloc_info; - - for (i = 0; i < nrel; i++, reloff += sizeof (reloc_info)) - { - if (lseek (infd, reloff - linkedit_delta, L_SET) - != reloff - linkedit_delta) - unexec_error ("rebase_reloc_table: cannot seek to reloc_info"); - if (!unexec_read (&reloc_info, sizeof (reloc_info))) - unexec_error ("rebase_reloc_table: cannot read reloc_info"); - - if (sc_reloc_info->r_scattered == 0 - && reloc_info.r_type == GENERIC_RELOC_VANILLA) - { - reloc_info.r_address -= diff; - if (!unexec_write (reloff, &reloc_info, sizeof (reloc_info))) - unexec_error ("rebase_reloc_table: cannot write reloc_info"); - } - } -} -#endif - /* Copy a LC_DYSYMTAB load command from the input file to the output file, adjusting the file offset fields. */ static void @@ -1089,28 +1048,8 @@ vm_address_t base; #ifdef _LP64 -#if __ppc64__ - { - int i; - - base = 0; - for (i = 0; i < nlc; i++) - if (lca[i]->cmd == LC_SEGMENT) - { - struct segment_command *scp = (struct segment_command *) lca[i]; - - if (scp->vmaddr + scp->vmsize > 0x100000000 - && (scp->initprot & VM_PROT_WRITE) != 0) - { - base = data_segment_scp->vmaddr; - break; - } - } - } -#else /* First writable segment address. */ base = data_segment_scp->vmaddr; -#endif #else /* First segment address in the file (unless MH_SPLIT_SEGS set). */ base = 0; @@ -1136,29 +1075,6 @@ unexec_error ("cannot write symtab command to header"); curr_header_offset += lc->cmdsize; - -#if __ppc64__ - /* Check if the relocation base needs to be changed. */ - if (base == 0) - { - vm_address_t newbase = 0; - int i; - - for (i = 0; i < num_unexec_regions; i++) - if (unexec_regions[i].range.address + unexec_regions[i].range.size - > 0x100000000) - { - newbase = data_segment_scp->vmaddr; - break; - } - - if (newbase) - { - rebase_reloc_address (dstp->locreloff, dstp->nlocrel, delta, newbase); - rebase_reloc_address (dstp->extreloff, dstp->nextrel, delta, newbase); - } - } -#endif } /* Copy a LC_TWOLEVEL_HINTS load command from the input file to the output ------------------------------------------------------------ Use --include-merged or -n0 to see merged revisions.