# HG changeset patch # User Aidan Kehoe # Date 1198758146 -3600 # Node ID c9ab656691c04f41c53df820c0a83e4ee36f5177 # Parent d74913294e8794f2d973faf8af11028702444873# Parent f5693b5f7f2d6198ebb86a8983b786e62b3d4c05 Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs diff -r d74913294e87 -r c9ab656691c0 ChangeLog --- a/ChangeLog Thu Dec 27 13:21:05 2007 +0100 +++ b/ChangeLog Thu Dec 27 13:22:26 2007 +0100 @@ -1,6 +1,11 @@ +2007-12-26 Stephen J. Turnbull + + * Makefile.in.in (mkpkgdir): Ensure only one late package directory. + 2007-12-26 Stephen J. Turnbull * Makefile.in.in (check-available-packages): Say where to install. + (mkpkgdir): 2007-12-23 Stephen J. Turnbull diff -r d74913294e87 -r c9ab656691c0 Makefile.in.in --- a/Makefile.in.in Thu Dec 27 13:21:05 2007 +0100 +++ b/Makefile.in.in Thu Dec 27 13:22:26 2007 +0100 @@ -513,11 +513,18 @@ then echo "To install the full set of packages with mule in"; \ echo "${package_path}/mule-packages, type:"; \ echo " make install-all-packages"; \ - fi; + fi + +# The test for a non-trivial path simply checks for the conventional Unix +# path separator ":". This is reasonable because this is basically just +# a convenience feature, anyway. mkpkgdir: FRC.mkdir ${MAKEPATH} @if test -z ${package_path}; \ - then echo "not configured --with-late-packages; no place to install."; \ + then echo "Not configured --with-late-packages; no place to install."; \ + exit -1; \ + elif echo ${package_path} | grep ":"; \ + then echo "Configured with multiple late package directories; you decide where to install."; \ exit -1; \ elif test -e ${package_path}/xemacs-packages \ -o -e ${package_path}/mule-packages; \ diff -r d74913294e87 -r c9ab656691c0 etc/ChangeLog --- a/etc/ChangeLog Thu Dec 27 13:21:05 2007 +0100 +++ b/etc/ChangeLog Thu Dec 27 13:22:26 2007 +0100 @@ -1,3 +1,7 @@ +2007-12-26 Stephen J. Turnbull + + * bundled-packages/README: Document restriction on --with-late-packages. + 2007-12-23 Stephen J. Turnbull * bundled-packages/README: Documentation for bundled packages. diff -r d74913294e87 -r c9ab656691c0 etc/bundled-packages/README --- a/etc/bundled-packages/README Thu Dec 27 13:21:05 2007 +0100 +++ b/etc/bundled-packages/README Thu Dec 27 13:22:26 2007 +0100 @@ -1,10 +1,13 @@ Package distributions may be placed in this directory. If present and a package-path is configured, packages can be installed -using the top-level makefile. +using the top-level Makefile. To configure the package path, use the --with-late-packages option to -configure, which specifies the path to the directory containing the -xemacs-packages and mule-packages hierarchies to install. +configure, which specifies a single directory in which to install the +xemacs-packages and mule-packages hierarchies provided. If this is null, +or contains a Unix-style search path (i.e., a colon is present in the +argument of the --with-late-packages option), you will have to install +the packages by hand. To find out if a distribution includes bundled packages, type diff -r d74913294e87 -r c9ab656691c0 lisp/ChangeLog --- a/lisp/ChangeLog Thu Dec 27 13:21:05 2007 +0100 +++ b/lisp/ChangeLog Thu Dec 27 13:22:26 2007 +0100 @@ -6,6 +6,14 @@ truncation-glyph, continuation-glyph, octal-escape-glyph, control-arrow-glyph. +2007-12-23 Mike Sperber + + * font.el (xft-font-create-object): Use + `fc-pattern-get-or-compute-size' instead of + `fc-pattern-get-size'. + + * fontconfig.el (fc-pattern-get-or-compute-size): Add. + 2007-12-22 Stephen J. Turnbull Factor out lists of operators specially treated by `make-autoload'. diff -r d74913294e87 -r c9ab656691c0 lisp/font.el --- a/lisp/font.el Thu Dec 27 13:21:05 2007 +0100 +++ b/lisp/font.el Thu Dec 27 13:22:26 2007 +0100 @@ -813,7 +813,7 @@ (pattern (fc-font-match device (fc-name-parse name))) (font-obj (make-font)) (family (fc-pattern-get-family pattern 0)) - (size (fc-pattern-get-size pattern 0)) + (size (fc-pattern-get-or-compute-size pattern 0)) (weight (fc-pattern-get-weight pattern 0))) (set-font-family font-obj (and (not (equal family 'fc-result-no-match)) diff -r d74913294e87 -r c9ab656691c0 lisp/fontconfig.el --- a/lisp/fontconfig.el Thu Dec 27 13:21:05 2007 +0100 +++ b/lisp/fontconfig.el Thu Dec 27 13:22:26 2007 +0100 @@ -350,6 +350,21 @@ (let ((pair (assoc str fc-font-name-weight-mapping-string-reverse))) (if pair (cdr pair)))) +(defun fc-pattern-get-or-compute-size (pattern id) + "Get the size from `pattern' associated with `id' or try to compute it. +Returns 'fc-result-no-match if unsucessful." + ;; Many font patterns don't have a "size" property, but do have a + ;; "dpi" and a "pixelsize" property". + (let ((maybe (fc-pattern-get-size pattern id))) + (if (not (eq maybe 'fc-result-no-match)) + maybe + (let ((dpi (fc-pattern-get-dpi pattern id)) + (pixelsize (fc-pattern-get-pixelsize pattern id))) + (if (and (numberp dpi) + (numberp pixelsize)) + (* pixelsize (/ 72 dpi)) + 'fc-result-no-match))))) + (defun fc-copy-pattern-partial (pattern attribute-list) "Return a copy of PATTERN restricted to ATTRIBUTE-LIST.