[Fwd: [PATCH] Get rid of the type1 font module]

Bernardo Innocenti bernie at codewiz.org
Wed Aug 22 13:54:58 PDT 2007


This patch seems still uncommitted.  Could we get it in for 1.4?


-------- Original Message --------
Subject: [PATCH] Get rid of the type1 font module
Date: Tue, 21 Aug 2007 03:14:58 +0200
From: Julien Cristau <jcristau at debian.org>
To: xorg at lists.freedesktop.org
CC: Juliusz Chroboczek <Juliusz.Chroboczek at pps.jussieu.fr>
References: <20070706181538.GA25855 at patate.is-a-geek.org>	<7iejhxy9vt.fsf at lanthane.pps.jussieu.fr>

On Tue, Aug 21, 2007 at 03:05:58 +0200, Juliusz Chroboczek wrote:

> > This patch adds a configure option to disable the type1 module.
> > It might make sense to change the default value to no, or to remove that
> > module completely (it doesn't add anything that freetype doesn't have,
> > as I understand it, since cid support was removed).
> 
>   $ cd libXfont/src/Type1
>   $ grep Abort *.h
>   objects.h:#define   Abort(line)       FatalError(line)
>   $ grep Abort *.c | wc -l
>   54
>   $ grep 'Abort.*Beziers' *.c
>   curves.c:               Abort("Beziers this big not yet supported");
>   $ grep 'Abort.*invalid orient' *.c
>   hints.c:    Abort("ComputeHint: invalid orientation");
>   hints.c:    Abort("ComputeHint: invalid orientation");
>   spaces.c:           Abort("QueryDeviceState returned invalid orientation");
>   $ grep 'Abort.*uneven' *.c
>   regions.c:                       Abort("Unwind:  uneven edges");
>   $
> 
> I strongly support removing this code from the X.Org sources.
> 
The following patch removes support for that module from xserver.

Cheers,
Julien


>From 71663fb6fb91043f5eddce20a9d120d6aaa5cd45 Mon Sep 17 00:00:00 2001
From: Julien Cristau <jcristau at debian.org>
Date: Tue, 31 Jul 2007 20:18:29 +0200
Subject: [PATCH] Get rid of the type1 font module.

type1 is completely replaced by freetype these days; its only additional
feature was CID font support, which is gone in recent versions of
libXfont.
---

 hw/xfree86/common/xf86AutoConfig.c   |    1 -
 hw/xfree86/common/xf86Config.h       |    1 -
 hw/xfree86/dixmods/Makefile.am       |    6 +--
 hw/xfree86/dixmods/type1mod.c        |   75 ----------------------------------
 hw/xfree86/doc/man/xorg.conf.man.pre |    4 +-
 5 files changed, 3 insertions(+), 84 deletions(-)
 delete mode 100644 hw/xfree86/dixmods/type1mod.c

diff --git a/hw/xfree86/common/xf86AutoConfig.c b/hw/xfree86/common/xf86AutoConfig.c
index 4f6a98a..3b04f57 100644
--- a/hw/xfree86/common/xf86AutoConfig.c
+++ b/hw/xfree86/common/xf86AutoConfig.c
@@ -48,7 +48,6 @@
 	"\tLoad\t\"dbe\"\n" \
 	"\tLoad\t\"glx\"\n" \
 	"\tLoad\t\"freetype\"\n" \
-	"\tLoad\t\"type1\"\n" \
 	"\tLoad\t\"record\"\n" \
 	"\tLoad\t\"dri\"\n" \
 	"EndSection\n\n"
diff --git a/hw/xfree86/common/xf86Config.h b/hw/xfree86/common/xf86Config.h
index 7fc161d..0ba82f3 100644
--- a/hw/xfree86/common/xf86Config.h
+++ b/hw/xfree86/common/xf86Config.h
@@ -59,7 +59,6 @@ static ModuleDefault ModuleDefaults[] = {
     {.name = "dbe",      .toLoad = TRUE,    .load_opt=NULL},
     {.name = "glx",      .toLoad = TRUE,    .load_opt=NULL},
     {.name = "freetype", .toLoad = TRUE,    .load_opt=NULL},
-    {.name = "type1",    .toLoad = TRUE,    .load_opt=NULL},
     {.name = "record",   .toLoad = TRUE,    .load_opt=NULL},
     {.name = "dri",      .toLoad = TRUE,    .load_opt=NULL},
     {.name = NULL,       .toLoad = FALSE,   .load_opt=NULL}
diff --git a/hw/xfree86/dixmods/Makefile.am b/hw/xfree86/dixmods/Makefile.am
index 06e6d40..efc5f4a 100644
--- a/hw/xfree86/dixmods/Makefile.am
+++ b/hw/xfree86/dixmods/Makefile.am
@@ -40,8 +40,7 @@ extsmodule_LTLIBRARIES = librecord.la \
                          $(XTRAPMOD)
 
 fontsmoduledir = $(moduledir)/fonts
-fontsmodule_LTLIBRARIES = libfreetype.la \
-                          libtype1.la
+fontsmodule_LTLIBRARIES = libfreetype.la
 
 AM_CFLAGS = @XORG_CFLAGS@ @DIX_CFLAGS@
 INCLUDES = @XORG_INCS@ \
@@ -104,9 +103,6 @@ libshadow_la_SOURCES = shmodule.c
 libfreetype_la_LDFLAGS = -avoid-version
 libfreetype_la_SOURCES = ftmodule.c
 
-libtype1_la_LDFLAGS = -avoid-version
-libtype1_la_SOURCES = type1mod.c
-
 libdixmods_la_SOURCES = $(top_srcdir)/mi/miinitext.c
 libdixmods_la_CFLAGS = -DXFree86LOADER $(AM_CFLAGS)
 
diff --git a/hw/xfree86/dixmods/type1mod.c b/hw/xfree86/dixmods/type1mod.c
deleted file mode 100644
index 3da53ea..0000000
--- a/hw/xfree86/dixmods/type1mod.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 1998 The XFree86 Project, Inc.  All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
- * XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
- * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- * Except as contained in this notice, the name of the XFree86 Project shall
- * not be used in advertising or otherwise to promote the sale, use or other
- * dealings in this Software without prior written authorization from the
- * XFree86 Project.
- */
-
-#ifdef HAVE_XORG_CONFIG_H
-#include <xorg-config.h>
-#endif
-
-#include "misc.h"
-
-#include <X11/fonts/fontmod.h>
-#include "xf86Module.h"
-
-static MODULESETUPPROTO(type1Setup);
-
-    /*
-     * This is the module data function that is accessed when loading 
-     * libtype1 as a module.
-     */
-
-static XF86ModuleVersionInfo VersRec =
-{
-	"type1",
-	MODULEVENDORSTRING,
-	MODINFOSTRING1,
-	MODINFOSTRING2,
-	XORG_VERSION_CURRENT,
-	1, 0, 2,
-	ABI_CLASS_FONT,			/* Font module */
-	ABI_FONT_VERSION,
-	MOD_CLASS_FONT,
-	{0,0,0,0}       /* signature, to be patched into the file by a tool */
-};
-
-_X_EXPORT XF86ModuleData type1ModuleData = { &VersRec, type1Setup, NULL };
-
-extern void Type1RegisterFontFileFunctions(void);
-
-FontModule type1Module = {
-    Type1RegisterFontFileFunctions,
-    "Type1",
-    NULL
-};
-
-static pointer
-type1Setup(pointer module, pointer opts, int *errmaj, int *errmin)
-{
-    type1Module.module = module;
-    LoadFont(&type1Module);
-
-    /* Need a non-NULL return */
-    return (pointer)1;
-}
diff --git a/hw/xfree86/doc/man/xorg.conf.man.pre b/hw/xfree86/doc/man/xorg.conf.man.pre
index 3ff5776..ce54ea9 100644
--- a/hw/xfree86/doc/man/xorg.conf.man.pre
+++ b/hw/xfree86/doc/man/xorg.conf.man.pre
@@ -700,10 +700,10 @@ The standard name is case\-sensitive, and does not include the \(lqlib\(rq
 prefix, or the \(lq.a\(rq, \(lq.o\(rq, or \(lq.so\(rq suffixes.
 .PP
 .RS 7
-Example: the Type 1 font rasteriser can be loaded with the following entry:
+Example: the FreeType font rasteriser can be loaded with the following entry:
 .PP
 .RS 4
-.B "Load \*qtype1\*q"
+.B "Load \*qfreetype\*q"
 .RE
 .RE
 .TP 7
-- 
1.5.2.4

_______________________________________________
xorg mailing list
xorg at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/xorg

-- 
   // Bernardo Innocenti
 \X/  http://www.codewiz.org/



More information about the xorg mailing list