Update to fontforge 20060715. This obsoletes most of our local patches and also fixes some problems for the (not-to-be-released) ec-fonts-mftraced port.
I've tested it on i386 and macppc, but only in scripted mode (for lilypond and above-mentioned ec-fonts-mftraced). Test reports and comments are welcome, especially for other platforms. Ciao, Kili diff -x CVS -rNu ../fontforge.orig/Makefile ./Makefile --- ../fontforge.orig/Makefile Sat Jul 1 16:46:15 2006 +++ ./Makefile Sun Jul 16 16:40:23 2006 @@ -4,8 +4,8 @@ COMMENT= "vector font editor/converter" -DISTNAME= fontforge_full-20060413 -PKGNAME= ${DISTNAME:S,_full,,}p1 +DISTNAME= fontforge_full-20060715 +PKGNAME= ${DISTNAME:S,_full,,} EXTRACT_SUFX= .tar.bz2 SHARED_LIBS= gdraw 1.9 \ gunicode 2.2 @@ -47,6 +47,6 @@ NO_REGRESS= Yes post-extract: - find ${WRKSRC} -name \*.orig | xargs rm + find ${WRKSRC} -name \*.orig -o -name \*.rej | xargs rm .include <bsd.port.mk> diff -x CVS -rNu ../fontforge.orig/distinfo ./distinfo --- ../fontforge.orig/distinfo Sat Jul 1 16:46:15 2006 +++ ./distinfo Sun Jul 16 16:37:54 2006 @@ -1,4 +1,4 @@ -MD5 (fontforge_full-20060413.tar.bz2) = 5058e33dbbd5c0ca344dc73c6ff7a428 -RMD160 (fontforge_full-20060413.tar.bz2) = f9d098e9135f0074beac2ea919177f1dbb985d0e -SHA1 (fontforge_full-20060413.tar.bz2) = b99341f2f1f02dbfd9182bd38afb805125e36ea2 -SIZE (fontforge_full-20060413.tar.bz2) = 3226436 +MD5 (fontforge_full-20060715.tar.bz2) = 47bed2600fd7066179363c6e7b01cd78 +RMD160 (fontforge_full-20060715.tar.bz2) = ffb5a6c204527e77a96268b7de55ec5446bce400 +SHA1 (fontforge_full-20060715.tar.bz2) = a95bbb949ce8efb63c48d5b6356007bcf0132bbd +SIZE (fontforge_full-20060715.tar.bz2) = 3361637 diff -x CVS -rNu ../fontforge.orig/patches/patch-Makefile_dynamic_in ./patches/patch-Makefile_dynamic_in --- ../fontforge.orig/patches/patch-Makefile_dynamic_in Sun Jun 18 15:33:25 2006 +++ ./patches/patch-Makefile_dynamic_in Sun Jul 16 16:46:31 2006 @@ -1,11 +1,11 @@ $OpenBSD: patch-Makefile_dynamic_in,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- Makefile.dynamic.in.orig Sat Apr 8 21:24:14 2006 -+++ Makefile.dynamic.in Sun Jun 11 13:21:21 2006 +--- Makefile.dynamic.in.orig Fri Jul 14 22:20:20 2006 ++++ Makefile.dynamic.in Sun Jul 16 16:40:43 2006 @@ -53,7 +53,6 @@ install_libs: libs $(LIBTOOL) --mode=install $(INSTALL) -c libgdraw.la $(libdir)/libgdraw.la $(LIBTOOL) --mode=install $(INSTALL) -c libgunicode.la $(libdir)/libgunicode.la #cp .libs/*.so.*.* $(libdir) - $(LIBTOOL) --mode=finish $(libdir) mkdir -p $(libdir)/pkgconfig - $(LIBTOOL) --mode=install $(INSTALL) -c fontforge.pc $(libdir)/pkgconfig + $(INSTALL_DATA) fontforge.pc $(libdir)/pkgconfig diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_charinfo_c ./patches/patch-fontforge_charinfo_c --- ../fontforge.orig/patches/patch-fontforge_charinfo_c Sun Jun 18 15:33:25 2006 +++ ./patches/patch-fontforge_charinfo_c Thu Jan 1 01:00:00 1970 @@ -1,18 +0,0 @@ -$OpenBSD: patch-fontforge_charinfo_c,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- fontforge/charinfo.c.orig Mon Jun 12 16:14:30 2006 -+++ fontforge/charinfo.c Mon Jun 12 16:14:53 2006 -@@ -4288,13 +4288,13 @@ return( true ); - - static int CI_NameCheck(const unichar_t *name) { - int bad, questionable; -+ extern int allow_utf8_glyphnames; - #if defined(FONTFORGE_CONFIG_GDRAW) - char *buts[3]; - buts[0] = _("_Yes"); buts[1]=_("_No"); buts[2] = NULL; - #elif defined(FONTFORGE_CONFIG_GTK) - static char *buts[] = { GTK_STOCK_YES, GTK_STOCK_CANCEL, NULL }; - #endif -- extern int allow_utf8_glyphnames; - - if ( uc_strcmp(name,".notdef")==0 ) /* This name is a special case and doesn't follow conventions */ - return( true ); diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_fontinfo_c ./patches/patch-fontforge_fontinfo_c --- ../fontforge.orig/patches/patch-fontforge_fontinfo_c Sun Jun 18 15:33:25 2006 +++ ./patches/patch-fontforge_fontinfo_c Thu Jan 1 01:00:00 1970 @@ -1,20 +0,0 @@ -$OpenBSD: patch-fontforge_fontinfo_c,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- fontforge/fontinfo.c.orig Mon Jun 12 12:49:10 2006 -+++ fontforge/fontinfo.c Mon Jun 12 12:49:42 2006 -@@ -5361,6 +5361,7 @@ return(true); - (sf->xuid!=NULL && uc_strcmp(txt,sf->xuid)==0) || - ttfuniqueidmatch(sf,d)) ) { - char *buts[4]; -+ int ans; - buts[0] = _("Change"); - buts[1] = _("Retain"); - #if defined(FONTFORGE_CONFIG_GDRAW) -@@ -5369,7 +5370,7 @@ return(true); - buts[2] = GTK_STOCK_CANCEL; - #endif - buts[3] = NULL; -- int ans = gwwv_ask(_("Change UniqueID?"),(const char **) buts,0,2,_("You have changed this font's name without changing the UniqueID (or XUID).\nThis is probably not a good idea, would you like me to\ngenerate a random new value?")); -+ ans = gwwv_ask(_("Change UniqueID?"),(const char **) buts,0,2,_("You have changed this font's name without changing the UniqueID (or XUID).\nThis is probably not a good idea, would you like me to\ngenerate a random new value?")); - if ( ans==2 ) { - GDrawSetCursor(gw,ct_pointer); - return(true); diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_openfontdlg_c ./patches/patch-fontforge_openfontdlg_c --- ../fontforge.orig/patches/patch-fontforge_openfontdlg_c Sun Jun 18 15:33:25 2006 +++ ./patches/patch-fontforge_openfontdlg_c Thu Jan 1 01:00:00 1970 @@ -1,12 +0,0 @@ -$OpenBSD: patch-fontforge_openfontdlg_c,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- fontforge/openfontdlg.c.orig Mon Jun 12 15:48:06 2006 -+++ fontforge/openfontdlg.c Mon Jun 12 15:49:26 2006 -@@ -158,7 +158,7 @@ return( false ); - struct gfc_data *d = GDrawGetUserData(gw); - return( GGadgetDispatchEvent((GGadget *) (d->gfc),event)); - } else if ( event->type == et_resize ) { -- GRect r, size;; -+ GRect r, size; - struct gfc_data *d = GDrawGetUserData(gw); - GDrawGetSize(gw,&size); - GGadgetGetSize(d->gfc,&r); diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_parsettf_c ./patches/patch-fontforge_parsettf_c --- ../fontforge.orig/patches/patch-fontforge_parsettf_c Sun Jun 18 15:33:25 2006 +++ ./patches/patch-fontforge_parsettf_c Thu Jan 1 01:00:00 1970 @@ -1,18 +0,0 @@ -$OpenBSD: patch-fontforge_parsettf_c,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- fontforge/parsettf.c.orig Mon Jun 12 13:48:01 2006 -+++ fontforge/parsettf.c Mon Jun 12 13:48:16 2006 -@@ -4277,12 +4277,13 @@ return( 0 ); - info->glyphlocations_start!=0 && info->glyph_start!=0 && - info->cff_start!=0 ) { - char *buts[4]; -+ int choice; - buts[0] = _("TTF 'glyf'"); - buts[1] = _("OTF 'CFF '"); - buts[3] = NULL; - #if defined(FONTFORGE_CONFIG_GDRAW) - buts[2] = _("_Cancel"); -- int choice = gwwv_ask(_("Pick a font, any font..."),(const char **) buts,0,2,_("This font contains both a TrueType 'glyf' table and an OpenType 'CFF ' table. FontForge can only deal with one at a time, please pick which one you want to use")); -+ choice = gwwv_ask(_("Pick a font, any font..."),(const char **) buts,0,2,_("This font contains both a TrueType 'glyf' table and an OpenType 'CFF ' table. FontForge can only deal with one at a time, please pick which one you want to use")); - #elif defined(FONTFORGE_CONFIG_GTK) - buts[2] = GTK_STOCK_CANCEL; - int choice = gwwv_ask(_("Pick a font, any font..."),(const char **) buts,0,2,_("This font contains both a TrueType 'glyf' table and an OpenType 'CFF ' table. FontForge can only deal with one at a time, please pick which one you want to use")); diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_savefontdlg_c ./patches/patch-fontforge_savefontdlg_c --- ../fontforge.orig/patches/patch-fontforge_savefontdlg_c Sun Jun 18 15:33:25 2006 +++ ./patches/patch-fontforge_savefontdlg_c Thu Jan 1 01:00:00 1970 @@ -1,31 +0,0 @@ -$OpenBSD: patch-fontforge_savefontdlg_c,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- fontforge/savefontdlg.c.orig Mon Jun 12 14:34:42 2006 -+++ fontforge/savefontdlg.c Mon Jun 12 14:40:59 2006 -@@ -2218,6 +2218,13 @@ static void DoSave(struct gfc_data *d,un - struct sflist *sfs=NULL, *cur, *last=NULL; - static int psscalewarned=0, ttfscalewarned=0, psfnlenwarned=0; - int flags; -+ struct sflist *sfl; -+ char **former; -+ NameList *rename_to; -+ GTextInfo *ti = GGadgetGetListItemSelected(d->rename); -+ char *nlname = u2utf8_copy(ti->text); -+ extern NameList *force_names_when_saving; -+ int notdef_pos = SFFindNotdef(d->sf,-1); - #if defined(FONTFORGE_CONFIG_GDRAW) - char *buts[3]; - buts[0] = _("_Yes"); -@@ -2226,13 +2233,6 @@ static void DoSave(struct gfc_data *d,un - #elif defined(FONTFORGE_CONFIG_GTK) - static char *buts[] = { GTK_STOCK_YES, GTK_STOCK_NO, NULL }; - #endif -- struct sflist *sfl; -- char **former; -- NameList *rename_to; -- GTextInfo *ti = GGadgetGetListItemSelected(d->rename); -- char *nlname = u2utf8_copy(ti->text); -- extern NameList *force_names_when_saving; -- int notdef_pos = SFFindNotdef(d->sf,-1); - - rename_to = NameListByName(nlname); - free(nlname); diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_splinesaveafm_c ./patches/patch-fontforge_splinesaveafm_c --- ../fontforge.orig/patches/patch-fontforge_splinesaveafm_c Sun Jun 18 15:33:25 2006 +++ ./patches/patch-fontforge_splinesaveafm_c Thu Jan 1 01:00:00 1970 @@ -1,12 +0,0 @@ -$OpenBSD: patch-fontforge_splinesaveafm_c,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- fontforge/splinesaveafm.c.orig Mon Jun 12 18:44:10 2006 -+++ fontforge/splinesaveafm.c Mon Jun 12 18:44:46 2006 -@@ -190,7 +190,7 @@ static void CheckMMAfmFile(SplineFont *s - - int LoadKerningDataFromAmfm(SplineFont *sf, char *filename,EncMap *map) { - FILE *file=NULL; -- char buffer[280], *pt, lastname[256]; -+ char buffer[280], *pt, lastname[257]; - int index, i; - MMSet *mm = sf->mm; - diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_stemdb_c ./patches/patch-fontforge_stemdb_c --- ../fontforge.orig/patches/patch-fontforge_stemdb_c Sun Jul 2 15:08:33 2006 +++ ./patches/patch-fontforge_stemdb_c Thu Jan 1 01:00:00 1970 @@ -1,11 +0,0 @@ -$OpenBSD: patch-fontforge_stemdb_c,v 1.1 2006/06/25 09:44:04 steven Exp $ ---- fontforge/stemdb.c.orig Sun Mar 19 22:44:05 2006 -+++ fontforge/stemdb.c Sat Jun 24 22:23:01 2006 -@@ -1262,6 +1262,7 @@ static void AttachSplineBitsToStems(stru - } else if ( test->tend>ta[i+1].t+.002 ) { - IError("FigureStemLinearLengths unexpected condition" ); - test->tend = ta[i+1].t; -+ continue; - } - if ( test->tstart==ta[i].t && test->tend>=ta[i+1].t ) { - ta[i].stem = test->stem; diff -x CVS -rNu ../fontforge.orig/patches/patch-fontforge_stemdb_c.orig ./patches/patch-fontforge_stemdb_c.orig --- ../fontforge.orig/patches/patch-fontforge_stemdb_c.orig Sun Jun 25 11:44:04 2006 +++ ./patches/patch-fontforge_stemdb_c.orig Thu Jan 1 01:00:00 1970 @@ -1,11 +0,0 @@ -$OpenBSD: patch-fontforge_stemdb_c,v 1.1 2006/06/25 09:44:04 steven Exp $ ---- fontforge/stemdb.c.orig Sun Mar 19 22:44:05 2006 -+++ fontforge/stemdb.c Sat Jun 24 22:23:01 2006 -@@ -1262,6 +1262,7 @@ static void AttachSplineBitsToStems(stru - } else if ( test->tend>ta[i+1].t+.002 ) { - IError("FigureStemLinearLengths unexpected condition" ); - test->tend = ta[i+1].t; -+ continue; - } - if ( test->tstart==ta[i].t && test->tend>=ta[i+1].t ) { - ta[i].stem = test->stem; diff -x CVS -rNu ../fontforge.orig/patches/patch-gdraw_gpstxtinit_c ./patches/patch-gdraw_gpstxtinit_c --- ../fontforge.orig/patches/patch-gdraw_gpstxtinit_c Sun Jun 18 15:33:25 2006 +++ ./patches/patch-gdraw_gpstxtinit_c Thu Jan 1 01:00:00 1970 @@ -1,12 +0,0 @@ -$OpenBSD: patch-gdraw_gpstxtinit_c,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- gdraw/gpstxtinit.c.orig Mon Jun 12 18:37:39 2006 -+++ gdraw/gpstxtinit.c Mon Jun 12 18:37:47 2006 -@@ -132,7 +132,7 @@ return( ch ); - - static void parse_CharMetric_line(struct temp_font *tf, char *line) { - int ch, ch2, wid; float a1, a2, a3, a4; -- char name[200], *pt; -+ char name[201], *pt; - - while ( isspace(*line)) ++line; - if ( *line=='\0' ) diff -x CVS -rNu ../fontforge.orig/patches/patch-inc_basics_h ./patches/patch-inc_basics_h --- ../fontforge.orig/patches/patch-inc_basics_h Sun Jun 18 15:33:25 2006 +++ ./patches/patch-inc_basics_h Thu Jan 1 01:00:00 1970 @@ -1,44 +0,0 @@ -$OpenBSD: patch-inc_basics_h,v 1.1.1.1 2006/06/18 13:33:25 steven Exp $ ---- inc/basics.h.orig Mon Jun 12 19:02:02 2006 -+++ inc/basics.h Mon Jun 12 19:09:28 2006 -@@ -32,6 +32,7 @@ - #endif - - #include <stdio.h> /* for NULL */ -+#include <stdint.h> - #include <stdlib.h> /* for free */ - #include <limits.h> - -@@ -40,25 +41,15 @@ - - #define forever for (;;) - --#if INT_MAX==2147483647 --typedef int int32; --typedef unsigned int uint32; --#else --typedef long int32; --typedef unsigned long uint32; --#endif -- /* I don't know of any systems where the following are not true */ --typedef short int16; --typedef unsigned short uint16; --typedef signed char int8; --typedef unsigned char uint8; -+typedef int32_t int32; -+typedef uint32_t uint32; -+typedef int16_t int16; -+typedef uint16_t uint16; -+typedef int8_t int8; -+typedef uint8_t uint8; - - /* An integral type which can hold a pointer */ --#if defined(__WORDSIZE) && __WORDSIZE==64 --typedef long intpt; --#else --typedef int intpt; --#endif -+typedef intptr_t intpt; - - typedef uint16 unichar_t; -