[cairo-commit] 5 commits - doc/public RELEASING src/cairo.c src/cairo-font-face.c src/cairo-font-face-twin.c src/cairoint.h src/cairo-scaled-font.c src/cairo-user-font.c src/check-def.sh src/check-doc-syntax.sh src/check-headers.sh src/check-plt.sh src/check-preprocessor-syntax.sh
Behdad Esfahbod
behdad at kemper.freedesktop.org
Fri Sep 26 08:09:06 PDT 2008
RELEASING | 12 ++++++------
doc/public/check-doc-coverage.sh | 6 +++---
src/cairo-font-face-twin.c | 6 +++---
src/cairo-font-face.c | 4 ++++
src/cairo-scaled-font.c | 2 +-
src/cairo-user-font.c | 4 ++++
src/cairo.c | 5 +++++
src/cairoint.h | 13 +++++++++++++
src/check-def.sh | 2 +-
src/check-doc-syntax.sh | 8 ++++----
src/check-headers.sh | 2 +-
src/check-plt.sh | 2 +-
src/check-preprocessor-syntax.sh | 10 +++++-----
13 files changed, 51 insertions(+), 25 deletions(-)
New commits:
commit 86e57671dd21078215505202ef8aa2141d10fb9c
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Fri Sep 26 11:08:22 2008 -0400
[check-*.sh] Redirect error reports to stderr
diff --git a/doc/public/check-doc-coverage.sh b/doc/public/check-doc-coverage.sh
index 5257c7a..2898fc5 100755
--- a/doc/public/check-doc-coverage.sh
+++ b/doc/public/check-doc-coverage.sh
@@ -25,7 +25,7 @@ if test -f "$DOC_MODULE-undeclared.txt"; then
cat "$DOC_MODULE-undeclared.txt" 1>&2
stat=1
fi
-fi
+fi >&2
if test -f "$DOC_MODULE-unused.txt"; then
unused=`cat "$DOC_MODULE-unused.txt"`
if test -n "$unused"; then
@@ -33,7 +33,7 @@ if test -f "$DOC_MODULE-unused.txt"; then
cat "$DOC_MODULE-unused.txt" 1>&2
stat=1
fi
-fi
+fi >&2
if test -f "$DOC_MODULE-undocumented.txt"; then
if grep '^0 symbols incomplete' "$DOC_MODULE-undocumented.txt" >/dev/null &&
grep '^0 not documented' "$DOC_MODULE-undocumented.txt" >/dev/null; then
@@ -43,6 +43,6 @@ if test -f "$DOC_MODULE-undocumented.txt"; then
cat "$DOC_MODULE-undocumented.txt" 1>&2
stat=1
fi
-fi
+fi >&2
exit $stat
diff --git a/src/check-def.sh b/src/check-def.sh
index 9fd2baf..96f343e 100755
--- a/src/check-def.sh
+++ b/src/check-def.sh
@@ -40,7 +40,7 @@ for def in $defs; do
eval $get_cairo_syms | grep -v '^_cairo_test_\|^_fini\|^_init\|^_save[fg]pr\|^_rest[fg]pr' | sort -u
# cheat: copy the last line from the def file!
tail -n1 "$def"
- } | diff "$def" - || stat=1
+ } | diff "$def" - >&2 || stat=1
done
exit $stat
diff --git a/src/check-doc-syntax.sh b/src/check-doc-syntax.sh
index f2d4bf2..9079e4a 100755
--- a/src/check-doc-syntax.sh
+++ b/src/check-doc-syntax.sh
@@ -34,7 +34,7 @@ if echo $FILES | xargs grep . /dev/null | sed -e '/<programlisting>/,/<\/program
echo Error: some macros in the docs are not prefixed by percent sign.
echo Fix this by searching for the following regexp in the above files:
echo " '$enum_regexp'"
-fi
+fi >&2
type_regexp='\( .*[^#]\| \|^\)\<cairo[0-9a-z_]*_t\>\($\|[^:]$\|[^:].\)'
if test "x$SGML_DOCS" = x; then
@@ -49,7 +49,7 @@ if echo $FILES | xargs grep . /dev/null | sed -e '/<programlisting>/,/<\/program
echo neither are the only token in the doc line followed by colon.
echo Fix this by searching for the following regexp in the above files:
echo " '$type_regexp'"
-fi
+fi >&2
func_regexp='\([^#]\|^\)\<\(cairo_[][<>/0-9a-z_]*\>[^][<>(]\)'
if test "x$SGML_DOCS" = x; then
@@ -62,13 +62,13 @@ if echo $FILES | xargs grep . /dev/null | sed -e '/<programlisting>/,/<\/program
echo Error: some function names in the docs are not followed by parentheses.
echo Fix this by searching for the following regexp in the above files:
echo " '$func_regexp'"
-fi
+fi >&2
note_regexp='NOTE'
if echo $FILES | xargs grep "$note_regexp" /dev/null; then
stat=1
echo Error: some source files contain the string 'NOTE'.
echo Be civil and replace it by 'Note' please.
-fi
+fi >&2
exit $stat
diff --git a/src/check-headers.sh b/src/check-headers.sh
index c1a1f52..f01c24e 100755
--- a/src/check-headers.sh
+++ b/src/check-headers.sh
@@ -21,6 +21,6 @@ awk '
{ context=$0; }
' |
sed 's/[.]h-/.h:/' |
-grep . && stat=1
+grep . >&2 && stat=1
exit $stat
diff --git a/src/check-plt.sh b/src/check-plt.sh
index e091499..c7a12d3 100755
--- a/src/check-plt.sh
+++ b/src/check-plt.sh
@@ -21,7 +21,7 @@ fi
for so in .libs/lib*.so; do
echo Checking "$so" for local PLT entries
- readelf -W -r "$so" | grep 'JU\?MP_SLO' | grep 'cairo' && stat=1
+ readelf -W -r "$so" | grep 'JU\?MP_SLO' | grep 'cairo' >&2 && stat=1
done
exit $stat
diff --git a/src/check-preprocessor-syntax.sh b/src/check-preprocessor-syntax.sh
index 188e264..d573549 100755
--- a/src/check-preprocessor-syntax.sh
+++ b/src/check-preprocessor-syntax.sh
@@ -25,7 +25,7 @@ for x in $HEADERS; do
done |
grep -v '"cairo[.]h"' |
grep -v 'cairo[.]h:' |
-grep . && stat=1
+grep . >&2 && stat=1
echo 'Checking that private header files #include "some cairo header" first (or none)'
@@ -35,7 +35,7 @@ for x in $PRIVATE; do
done |
grep -v '"cairo.*[.]h"' |
grep -v 'cairoint[.]h:' |
-grep . && stat=1
+grep . >&2 && stat=1
echo 'Checking that source files #include "cairoint.h" first (or none)'
@@ -44,14 +44,14 @@ for x in $SOURCES; do
grep '#.*\<include\>' "$x" /dev/null | head -n 1
done |
grep -v '"cairoint[.]h"' |
-grep . && stat=1
+grep . >&2 && stat=1
echo 'Checking that there is no #include <cairo.*.h>'
-grep '#.*\<include\>.*<.*cairo' $ALL && stat=1
+grep '#.*\<include\>.*<.*cairo' $ALL >&2 && stat=1
echo 'Checking that feature conditionals are used with #if only (not #ifdef)'
-grep '#if.*CAIRO_HAS_' $ALL | grep def && stat=1
+grep '#if.*CAIRO_HAS_' $ALL | grep def >&2 && stat=1
exit $stat
commit 096f9def0f599e527d97bb979f7cafbc87dcddc6
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Fri Sep 26 10:55:44 2008 -0400
Add slim markers to make check-plt.sh happy
diff --git a/src/cairo-font-face.c b/src/cairo-font-face.c
index 02ad7c3..a260378 100644
--- a/src/cairo-font-face.c
+++ b/src/cairo-font-face.c
@@ -282,6 +282,7 @@ cairo_font_face_get_user_data (cairo_font_face_t *font_face,
return _cairo_user_data_array_get_data (&font_face->user_data,
key);
}
+slim_hidden_def (cairo_font_face_get_user_data);
/**
* cairo_font_face_set_user_data:
@@ -311,6 +312,7 @@ cairo_font_face_set_user_data (cairo_font_face_t *font_face,
return _cairo_user_data_array_set_data (&font_face->user_data,
key, user_data, destroy);
}
+slim_hidden_def (cairo_font_face_set_user_data);
static const cairo_font_face_backend_t _cairo_toy_font_face_backend;
@@ -660,6 +662,7 @@ cairo_toy_font_face_get_slant (cairo_font_face_t *font_face)
}
return toy_font_face->slant;
}
+slim_hidden_def (cairo_toy_font_face_get_slant);
/**
* cairo_toy_font_face_get_weight:
@@ -681,6 +684,7 @@ cairo_toy_font_face_get_weight (cairo_font_face_t *font_face)
}
return toy_font_face->weight;
}
+slim_hidden_def (cairo_toy_font_face_get_weight);
static const cairo_font_face_backend_t _cairo_toy_font_face_backend = {
CAIRO_FONT_TYPE_TOY,
diff --git a/src/cairo-user-font.c b/src/cairo-user-font.c
index 40b2a2f..4feb0ce 100644
--- a/src/cairo-user-font.c
+++ b/src/cairo-user-font.c
@@ -539,6 +539,7 @@ cairo_user_font_face_create (void)
return &font_face->base;
}
+slim_hidden_def(cairo_user_font_face_create);
/* User-font method setters */
@@ -573,6 +574,7 @@ cairo_user_font_face_set_init_func (cairo_font_face_t *font_fac
}
user_font_face->scaled_font_methods.init = init_func;
}
+slim_hidden_def(cairo_user_font_face_set_init_func);
/**
* cairo_user_font_face_set_render_glyph_func:
@@ -608,6 +610,7 @@ cairo_user_font_face_set_render_glyph_func (cairo_font_face_t
}
user_font_face->scaled_font_methods.render_glyph = render_glyph_func;
}
+slim_hidden_def(cairo_user_font_face_set_render_glyph_func);
/**
* cairo_user_font_face_set_text_to_glyphs_func:
@@ -670,6 +673,7 @@ cairo_user_font_face_set_unicode_to_glyph_func (cairo_font_face_t
}
user_font_face->scaled_font_methods.unicode_to_glyph = unicode_to_glyph_func;
}
+slim_hidden_def(cairo_user_font_face_set_unicode_to_glyph_func);
/* User-font method getters */
diff --git a/src/cairo.c b/src/cairo.c
index b7a1b86..12b3968 100644
--- a/src/cairo.c
+++ b/src/cairo.c
@@ -925,6 +925,7 @@ cairo_set_line_width (cairo_t *cr, double width)
if (status)
_cairo_set_error (cr, status);
}
+slim_hidden_def (cairo_set_line_width);
/**
* cairo_set_line_cap:
@@ -954,6 +955,7 @@ cairo_set_line_cap (cairo_t *cr, cairo_line_cap_t line_cap)
if (status)
_cairo_set_error (cr, status);
}
+slim_hidden_def (cairo_set_line_cap);
/**
* cairo_set_line_join:
@@ -983,6 +985,7 @@ cairo_set_line_join (cairo_t *cr, cairo_line_join_t line_join)
if (status)
_cairo_set_error (cr, status);
}
+slim_hidden_def (cairo_set_line_join);
/**
* cairo_set_dash:
@@ -2086,6 +2089,7 @@ cairo_stroke (cairo_t *cr)
cairo_new_path (cr);
}
+slim_hidden_def(cairo_stroke);
/**
* cairo_stroke_preserve:
@@ -3557,6 +3561,7 @@ cairo_get_line_width (cairo_t *cr)
return _cairo_gstate_get_line_width (cr->gstate);
}
+slim_hidden_def (cairo_get_line_width);
/**
* cairo_get_line_cap:
diff --git a/src/cairoint.h b/src/cairoint.h
index 343b6f8..4929db6 100644
--- a/src/cairoint.h
+++ b/src/cairoint.h
@@ -2390,7 +2390,9 @@ slim_hidden_proto (cairo_curve_to);
slim_hidden_proto (cairo_destroy);
slim_hidden_proto (cairo_fill_preserve);
slim_hidden_proto (cairo_font_face_destroy);
+slim_hidden_proto (cairo_font_face_get_user_data);
slim_hidden_proto_no_warn (cairo_font_face_reference);
+slim_hidden_proto (cairo_font_face_set_user_data);
slim_hidden_proto (cairo_font_options_equal);
slim_hidden_proto (cairo_font_options_hash);
slim_hidden_proto (cairo_font_options_merge);
@@ -2400,6 +2402,7 @@ slim_hidden_proto (cairo_font_options_set_hint_style);
slim_hidden_proto (cairo_font_options_set_subpixel_order);
slim_hidden_proto (cairo_font_options_status);
slim_hidden_proto (cairo_get_current_point);
+slim_hidden_proto (cairo_get_line_width);
slim_hidden_proto (cairo_get_matrix);
slim_hidden_proto (cairo_get_target);
slim_hidden_proto (cairo_get_tolerance);
@@ -2459,12 +2462,16 @@ slim_hidden_proto_no_warn (cairo_scaled_font_reference);
slim_hidden_proto (cairo_scaled_font_status);
slim_hidden_proto (cairo_set_font_size);
slim_hidden_proto (cairo_set_font_options);
+slim_hidden_proto (cairo_set_line_cap);
+slim_hidden_proto (cairo_set_line_join);
+slim_hidden_proto (cairo_set_line_width);
slim_hidden_proto (cairo_set_matrix);
slim_hidden_proto (cairo_set_operator);
slim_hidden_proto (cairo_set_source);
slim_hidden_proto (cairo_set_source);
slim_hidden_proto (cairo_set_source_surface);
slim_hidden_proto (cairo_status);
+slim_hidden_proto (cairo_stroke);
slim_hidden_proto (cairo_stroke_preserve);
slim_hidden_proto (cairo_surface_create_similar);
slim_hidden_proto (cairo_surface_destroy);
@@ -2485,6 +2492,12 @@ slim_hidden_proto (cairo_surface_status);
slim_hidden_proto (cairo_text_cluster_allocate);
slim_hidden_proto (cairo_text_cluster_free);
slim_hidden_proto (cairo_toy_font_face_create);
+slim_hidden_proto (cairo_toy_font_face_get_slant);
+slim_hidden_proto (cairo_toy_font_face_get_weight);
+slim_hidden_proto (cairo_user_font_face_create);
+slim_hidden_proto (cairo_user_font_face_set_init_func);
+slim_hidden_proto (cairo_user_font_face_set_render_glyph_func);
+slim_hidden_proto (cairo_user_font_face_set_unicode_to_glyph_func);
slim_hidden_proto (cairo_version_string);
#if CAIRO_HAS_PNG_FUNCTIONS
commit 1de059b33bd2e6121e35ccf1c4a35ba7755c44d8
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Fri Sep 26 09:49:50 2008 -0400
[RELEASING] Add ftp-release at lists.freedesktop.org
That list is monitored by various distros to pick up new releases.
We should CC release announcements there.
diff --git a/RELEASING b/RELEASING
index 5630818..10a025c 100644
--- a/RELEASING
+++ b/RELEASING
@@ -111,12 +111,12 @@ Here are the steps to follow to create a new cairo release:
odd micro version).
10) Send a message to cairo-announce at cairographics.org and CC
- gnome-announce-list at gnome.org, (pr at lwn.net as well for major
- releases) to announce the new release using the text provided from
- "make release-publish", adding the excerpt from NEWS, your
- signature, followed by the standard "What is cairo" and "Where to
- get more information about cairo" blurbs from README, and finally
- the shortlog of all changes since last release, generated by:
+ gnome-announce-list at gnome.org and ftp-release at lists.freedesktop.org
+ (pr at lwn.net as well for major releases) to announce the new release
+ using the text provided from "make release-publish", adding the excerpt
+ from NEWS, your signature, followed by the standard "What is cairo" and
+ "Where to get more information about cairo" blurbs from README, and
+ inally the shortlog of all changes since last release, generated by:
git shortlog X.Y.Z...
commit 9662be8ee77e219908b64b82e828d577dcf120f0
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Fri Sep 26 00:22:00 2008 -0400
[twin-font] Adjust ascent/descent
The font data uses a 64 int high font space with baseline at 50.
diff --git a/src/cairo-font-face-twin.c b/src/cairo-font-face-twin.c
index 75669a5..2e47d02 100644
--- a/src/cairo-font-face-twin.c
+++ b/src/cairo-font-face-twin.c
@@ -68,8 +68,8 @@ twin_scaled_font_init (cairo_scaled_font_t *scaled_font,
cairo_t *cr,
cairo_font_extents_t *metrics)
{
- metrics->ascent = .67;
- metrics->descent = .33;
+ metrics->ascent = FY (50);
+ metrics->descent = FY (14);
return CAIRO_STATUS_SUCCESS;
}
@@ -78,7 +78,7 @@ twin_scaled_font_unicode_to_glyph (cairo_scaled_font_t *scaled_font,
unsigned long unicode,
unsigned long *glyph)
{
- /* We use an indentity charmap. Which means we could live
+ /* We use an identity charmap. Which means we could live
* with no unicode_to_glyph method too. But we define this
* to map all unknown chars to a single unknown glyph to
* reduce pressure on cache. */
commit 3883a371f2ba78b17a1302ba8c5df1a79f3e4075
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Fri Sep 26 00:20:21 2008 -0400
[scaled-font] Use full ctm matrix when comparing scaled-font keys
We use the full matrix in hash computation, but only compare the
non-translation items in equality check. This is no bug though,
as we set the ctm translation components of a scaled font to zero
explicitly. But the change makes the hash and equal functions
consistent, which is good.
diff --git a/src/cairo-scaled-font.c b/src/cairo-scaled-font.c
index a8185af..d8d78f4 100644
--- a/src/cairo-scaled-font.c
+++ b/src/cairo-scaled-font.c
@@ -569,7 +569,7 @@ _cairo_scaled_font_keys_equal (const void *abstract_key_a, const void *abstract_
sizeof(cairo_matrix_t)) == 0 &&
memcmp ((unsigned char *)(&key_a->ctm.xx),
(unsigned char *)(&key_b->ctm.xx),
- sizeof(double) * 4) == 0 &&
+ sizeof(cairo_matrix_t)) == 0 &&
cairo_font_options_equal (&key_a->options, &key_b->options));
}
More information about the cairo-commit
mailing list