changeset:   4365:c9ab656691c04f41c53df820c0a83e4ee36f5177
tag:         tip
parent:      4364:d74913294e8794f2d973faf8af11028702444873
parent:      4362:f5693b5f7f2d6198ebb86a8983b786e62b3d4c05
user:        Aidan Kehoe <kehoea(a)parhasard.net>
date:        Thu Dec 27 13:22:26 2007 +0100
files:       lisp/ChangeLog
description:
Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
diff -r d74913294e8794f2d973faf8af11028702444873 -r
c9ab656691c04f41c53df820c0a83e4ee36f5177 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  <stephe
 2007-12-26  Stephen J. Turnbull  <stephen(a)xemacs.org>
 
+	* Makefile.in.in (mkpkgdir): Ensure only one late package directory.
+
+2007-12-26  Stephen J. Turnbull  <stephen(a)xemacs.org>
+
 	* Makefile.in.in (check-available-packages): Say where to install.
+	(mkpkgdir): 
 
 2007-12-23  Stephen J. Turnbull  <stephen(a)xemacs.org>
 
diff -r d74913294e8794f2d973faf8af11028702444873 -r
c9ab656691c04f41c53df820c0a83e4ee36f5177 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 @@ check-available-packages:
 	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 d74913294e8794f2d973faf8af11028702444873 -r
c9ab656691c04f41c53df820c0a83e4ee36f5177 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-23  Stephen J. Turnbull  <stephe
+2007-12-26  Stephen J. Turnbull  <stephen(a)xemacs.org>
+
+	* bundled-packages/README: Document restriction on --with-late-packages.
+
 2007-12-23  Stephen J. Turnbull  <stephen(a)xemacs.org>
 
 	* bundled-packages/README: Documentation for bundled packages.
diff -r d74913294e8794f2d973faf8af11028702444873 -r
c9ab656691c04f41c53df820c0a83e4ee36f5177 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 t
 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 d74913294e8794f2d973faf8af11028702444873 -r
c9ab656691c04f41c53df820c0a83e4ee36f5177 lisp/ChangeLog
--- a/lisp/ChangeLog	Thu Dec 27 13:21:05 2007 +0100
+++ b/lisp/ChangeLog	Thu Dec 27 13:22:26 2007 +0100
@@ -5,6 +5,14 @@ 2007-12-25  Aidan Kehoe  <kehoea@parhasa
 	#'make-image-specifier with string arguments, and more noticeably
 	truncation-glyph, continuation-glyph, octal-escape-glyph,
 	control-arrow-glyph. 
+
+2007-12-23  Mike Sperber  <mike(a)xemacs.org>
+
+	* 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  <stephen(a)xemacs.org>
 
diff -r d74913294e8794f2d973faf8af11028702444873 -r
c9ab656691c04f41c53df820c0a83e4ee36f5177 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 @@ Optional DEVICE defaults to `default-x-d
 	 (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 d74913294e8794f2d973faf8af11028702444873 -r
c9ab656691c04f41c53df820c0a83e4ee36f5177 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 @@ corresponding Xft font slant constant."
   (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.
 
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches