[Fontconfig] libtoolize fcpackage

Albert Chin fontconfig@fontconfig.org
Thu, 13 Feb 2003 11:21:36 -0600


Don't know if this will be accepted but the following uses libtool to
build Xft, Xrender, and fontconfig. We have to build for Solaris,
HP-UX, IRIX, Tru64 UNIX, AIX, and Redhat Linux so this makes it much
easier.

There is no top-level Makefile to do everything at once. We could do
that if needed.

Note this patch does not include ltmain.sh, mkinstalldirs,
config.guess, config.sub, nor install.sh.

--=20
albert chin (china@thewrittenword.com)

-- snip snip
--- Xft/configure.in.orig	Tue Jan 28 18:07:25 2003
+++ Xft/configure.in	Tue Jan 28 23:10:35 2003
@@ -33,95 +33,67 @@
 AC_ARG_WITH(fontconfig_includes, [  --with-fontconfig-includes=3DDIR  Us=
e Fontconfig includes in DIR], fontconfig_includes=3D$withval, fontconfig=
_includes=3Dyes)
 AC_ARG_WITH(fontconfig_lib,      [  --with-fontconfig-lib=3DDIR       Us=
e Fontconfig library in DIR], fontconfig_lib=3D$withval, fontconfig_lib=3D=
yes)
 AC_ARG_WITH(fontconfig_config,   [  --with-fontconfig-config=3DPROG  Use=
 Fontconfig configuration program PROG], fontconfig_config=3D$withval, fo=
ntconfig_config=3Dyes)
+AC_ARG_WITH(Xrender-includes,
+[  --with-Xrender-includes=3DDIR  Use Xrender includes in DIR],
+xrender_includes=3D$withval,
+xrender_includes=3Dyes)
+AC_ARG_WITH(Xrender-lib,
+[  --with-Xrender-lib=3DDIR       Use Xrender library in DIR],
+xrender_lib=3D$withval,
+xrender_lib=3Dyes)
=20
 # Checks for programs.
 AC_PROG_CC
 AC_PROG_INSTALL
-AC_PROG_LN_S
+AC_PROG_LIBTOOL
 AC_PATH_X
=20
 PACKAGE_VERSION=3D2.0.0
=20
 # Set major version
-PACKAGE_MAJOR=3D`echo $PACKAGE_VERSION | awk -F . '{ print $1 }'`
-PACKAGE_MINOR=3D`echo $PACKAGE_VERSION | awk -F . '{ print $2 }'`
-PACKAGE_REVISION=3D`echo $PACKAGE_VERSION | awk -F . '{ print $3 }'`
+PACKAGE_MAJOR=3D`echo $PACKAGE_VERSION | awk -F. '{ print $1 }'`
+PACKAGE_MINOR=3D`echo $PACKAGE_VERSION | awk -F. '{ print $2 }'`
+PACKAGE_REVISION=3D`echo $PACKAGE_VERSION | awk -F. '{ print $3 }'`
 AC_SUBST(PACKAGE_VERSION)
 AC_SUBST(PACKAGE_MAJOR)
 AC_SUBST(PACKAGE_MINOR)
 AC_SUBST(PACKAGE_REVISION)
=20
-OBJEXT=3D"o"
-AC_SUBST(OBJEXT)
-
 AC_DEFINE_UNQUOTED(PACKAGE_MAJOR,$PACKAGE_MAJOR)
 AC_DEFINE_UNQUOTED(PACKAGE_MINOR,$PACKAGE_MINOR)
 AC_DEFINE_UNQUOTED(PACKAGE_REVISION,$PACKAGE_REVISION)
=20
-if test "$GCC" =3D "yes"; then
-    MKSHLIB=3D'$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
-    DSO_LDOPTS=3D'-shared -Wl,-h,`echo $@ | sed '"'s/\.so\.\([[0-9][0-9]=
]*\).*/.so.\1/'"'`'
-    DSO_CFLAGS=3D''
-    DSO_PIC_CFLAGS=3D'-fPIC -DPIC'
-else
-
-    AC_CANONICAL_HOST
-   =20
-    MKSHLIB=3D'$(LD) $(DSO_LDOPTS) -o $@'
-    DSO_CFLAGS=3D''
-    DSO_PIC_CFLAGS=3D'-KPIC -DPIC'
-   =20
-    case "$host" in
-    *solaris*)
-    	DSO_LDOPTS=3D'-G -z text -z defs -h $@'
-	LIBS=3D"$LIBS -lc"
-	;;
-    *)
-    	DSO_LDOPTS=3D'-shared -h $@'
-    	;;
-    esac
-fi
-
-AC_SUBST(MKSHLIB)
-AC_SUBST(DSO_LDOPTS)
-AC_SUBST(DSO_CFLAGS)
-AC_SUBST(DSO_PIC_CFLAGS)
-
 #
 # Check X configuration
 #
 case "$have_x" in
 yes)
-	XRENDER_CFLAGS=3D"-I$x_includes"
-	XRENDER_LIBS=3D"-L$x_libraries -lXrender"
+	if test "$xrender_includes" =3D yes; then
+		XRENDER_CFLAGS=3D"-I$x_includes"
+        else
+		XRENDER_CFLAGS=3D"-I$xrender_includes"
+	fi
+
+	if test "$xrender_lib" =3D yes; then
+		XRENDER_LIBS=3D"-L$x_libraries -lXrender"
+	else
+		XRENDER_LIBS=3D"-L$xrender_lib -lXrender"
+	fi
=20
 	saved_LIBS=3D"$LIBS"
 	LIBS=3D"$LIBS $XRENDER_LIBS"
 	saved_CPPFLAGS=3D"$CPPFLAGS"
 	CPPFLAGS=3D"$CPPFLAGS $XRENDER_CFLAGS"
-	AC_CHECK_HEADERS(X11/extensions/Xrender.h)
-=09
-	case "$ac_cv_header_X11_extensions_Xrender_h" in
-	no)
-		CPPFLAGS=3D"$saved_CPPFLAGS"
-		LIBS=3D"$saved_LIBS"
-		;;
-	yes)
-		AC_CHECK_FUNCS(XRenderQueryVersion)
-		case "$ac_cv_func_XRenderQueryVersion" in
-		no)
-			CPPFLAGS=3D"$saved_CPPFLAGS"
-			LIBS=3D"$saved_LIBS"
-			;;
-		yes)
-			AC_DEFINE(HAVE_XRENDER)
-			AC_SUBST(XRENDER_CFLAGS)
-			AC_SUBST(XRENDER_LIBS)
-			;;
-		esac
-		;;
-	esac
-
+	AC_CHECK_HEADERS(X11/extensions/Xrender.h,[
+	  AC_CHECK_FUNCS(XRenderQueryVersion,[
+	    AC_DEFINE(HAVE_XRENDER)
+	    AC_SUBST(XRENDER_CFLAGS)
+	    AC_SUBST(XRENDER_LIBS)],[
+	    CPPFLAGS=3D"$saved_CPPFLAGS"
+	    LIBS=3D"$saved_LIBS"])],[
+	  CPPFLAGS=3D"$saved_CPPFLAGS"
+	  LIBS=3D"$saved_LIBS"], [
+#include <X11/Intrinsic.h>])
 	;;
 esac
=20
--- Xft/Makefile.in.orig	Tue Jan 28 18:07:32 2003
+++ Xft/Makefile.in	Wed Jan 29 00:17:55 2003
@@ -32,15 +32,14 @@
 datadir=3D@datadir@
 includedir=3D@includedir@
 sysconfdir=3D@sysconfdir@
+top_builddir=3D.
+
+LIBTOOL=3D@LIBTOOL@
=20
 CDEBUGFLAGS=3D@CFLAGS@
 CPPFLAGS=3D@CPPFLAGS@
 DEFS=3D@DEFS@
=20
-DSO_LDOPTS=3D@DSO_LDOPTS@
-DSO_CFLAGS=3D@DSO_CFLAGS@
-DSO_PIC_CFLAGS=3D@DSO_PIC_CFLAGS@
-
 INCLUDES=3D-I.
=20
 CFLAGS=3D$(CDEBUGFLAGS) $(INCLUDES) $(DEFS) $(CPPFLAGS)
@@ -49,8 +48,7 @@
 INSTALL_PROGRAM=3D@INSTALL_PROGRAM@
 INSTALL_SCRIPT=3D@INSTALL_SCRIPT@
 INSTALL_DATA=3D@INSTALL_DATA@
-MKSHLIB=3D@MKSHLIB@
-LN_S=3D@LN_S@
+mkinstalldirs=3D$(SHELL) $(top_builddir)/config/mkinstalldirs
=20
 X_FONT_DIR=3D@X_FONT_DIR@
 FC_DEFAULT_FONTS=3D@FC_DEFAULT_FONTS@
@@ -62,9 +60,8 @@
 # include files
 INCLUDEDIR=3D$(includedir)/X11/Xft
=20
-LIBBASE=3DlibXft.so
-LIBFILE=3D$(LIBBASE).@PACKAGE_MAJOR@.@PACKAGE_MINOR@
-LIBMAJOR=3D$(LIBBASE).@PACKAGE_MAJOR@
+LIBVER=3D-version-info 0:0:0
+LIBFILE=3DlibXft.la
=20
 LIBS=3D@LIBS@
=20
@@ -85,85 +82,54 @@
      xftswap.c \
      xftxlfd.c
     =20
-OBJS=3Dxftcolor.@OBJEXT@ \
-     xftcore.@OBJEXT@ \
-     xftdbg.@OBJEXT@ \
-     xftdpy.@OBJEXT@ \
-     xftdraw.@OBJEXT@ \
-     xftextent.@OBJEXT@ \
-     xftfont.@OBJEXT@ \
-     xftfreetype.@OBJEXT@ \
-     xftglyphs.@OBJEXT@ \
-     xftinit.@OBJEXT@ \
-     xftlist.@OBJEXT@ \
-     xftname.@OBJEXT@ \
-     xftrender.@OBJEXT@ \
-     xftstr.@OBJEXT@ \
-     xftswap.@OBJEXT@ \
-     xftxlfd.@OBJEXT@
+OBJS=3Dxftcolor.lo \
+     xftcore.lo \
+     xftdbg.lo \
+     xftdpy.lo \
+     xftdraw.lo \
+     xftextent.lo \
+     xftfont.lo \
+     xftfreetype.lo \
+     xftglyphs.lo \
+     xftinit.lo \
+     xftlist.lo \
+     xftname.lo \
+     xftrender.lo \
+     xftstr.lo \
+     xftswap.lo \
+     xftxlfd.lo
     =20
 HEADERS=3DXft.h \
        XftCompat.h \
        xftint.h
=20
-.c.@OBJEXT@:
-	$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) -c $< -o $@
+.SUFFIXES:
+.SUFFIXES: .c .lo .o
+
+.c.o:
+	$(CC) $(CFLAGS) -c $< -o $@
+
+.c.lo:
+	$(LIBTOOL) --mode=3Dcompile $(CC) $(CFLAGS) -c $< -o $@
 =09
-all:: $(LIBFILE) $(LIBMAJOR) $(LIBBASE)
+all:: $(LIBFILE)
=20
 #
 # Build the library
 #
 $(LIBFILE): $(OBJS)
-	rm -f $@
-	$(MKSHLIB) $(OBJS) $(LIBS)
-
-$(LIBMAJOR): $(LIBFILE)
-	rm -f  $@
-	$(LN_S) $(LIBFILE) $(LIBMAJOR)
-
-$(LIBBASE): $(LIBMAJOR)
-	rm -f $@
-	$(LN_S) $(LIBMAJOR) $(LIBBASE)
+	$(LIBTOOL) --mode=3Dlink $(CC) -o $@ -rpath $(libdir) \
+	$(LIBVER) $(OBJS) $(LIBS) -lX11
=20
 $(OBJS): $(HEADERS)
=20
 #
-# install directories
-#
-
-install:: $(DESTDIR)$(LIBDIR) $(DESTDIR)$(LIBDIR)/pkgconfig
-install:: $(DESTDIR)$(INCLUDEDIR) $(DESTDIR)$(BINDIR)
-
-$(DESTDIR)$(LIBDIR):
-	mkdir -p $@
-
-$(DESTDIR)$(LIBDIR)/pkgconfig:
-	mkdir -p $@
-
-$(DESTDIR)$(INCLUDEDIR):
-	mkdir -p $@
-
-$(DESTDIR)$(BINDIR):
-	mkdir -p $@
-
-#
 # install library
 #
=20
-install:: $(DESTDIR)$(LIBDIR)/$(LIB) $(DESTDIR)$(LIBDIR)/$(LIBMAJOR)=20
-install:: $(DESTDIR)$(LIBDIR)/$(LIBBASE)
-
-$(DESTDIR)$(LIBDIR)/$(LIBFILE): $(LIBFILE)
-	$(INSTALL_PROGRAM) $< $(DESTDIR)$(LIBDIR)
-
-$(DESTDIR)$(LIBDIR)/$(LIBMAJOR): $(DESTDIR)$(LIBDIR)/$(LIBFILE)
-	rm -f  $@
-	$(LN_S) $(LIBFILE) $(DESTDIR)$(LIBDIR)/$(LIBMAJOR)
-
-$(DESTDIR)$(LIBDIR)/$(LIBBASE): $(DESTDIR)$(LIBDIR)/$(LIBMAJOR)
-	rm -f  $@
-	$(LN_S) $(LIBMAJOR) $(DESTDIR)$(LIBDIR)/$(LIBBASE)
+install:: $(LIBFILE)
+	$(mkinstalldirs) $(DESTDIR)$(LIBDIR)
+	$(LIBTOOL) --mode=3Dinstall $(INSTALL_PROGRAM) $< $(DESTDIR)$(LIBDIR)
=20
 #
 # install xft-config script
@@ -172,6 +138,7 @@
 install:: $(DESTDIR)$(BINDIR)/xft-config
=20
 $(DESTDIR)$(BINDIR)/xft-config: xft-config
+	$(mkinstalldirs) $(DESTDIR)$(BINDIR)
 	$(INSTALL_SCRIPT) $< $(DESTDIR)$(BINDIR)
=20
 #
@@ -181,6 +148,7 @@
 install:: $(DESTDIR)$(LIBDIR)/pkgconfig/xft.pc
=20
 $(DESTDIR)$(LIBDIR)/pkgconfig/xft.pc: xft.pc
+	$(mkinstalldirs) $(DESTDIR)$(LIBDIR)
 	$(INSTALL_DATA) $< $(DESTDIR)$(LIBDIR)/pkgconfig
=20
=20
@@ -191,9 +159,11 @@
 install::$(DESTDIR)$(INCLUDEDIR)/Xft.h $(DESTDIR)$(INCLUDEDIR)/XftCompat=
.h
=20
 $(DESTDIR)$(INCLUDEDIR)/Xft.h: Xft.h
+	$(mkinstalldirs) $(DESTDIR)$(INCLUDEDIR)
 	$(INSTALL_DATA) $< $(DESTDIR)$(INCLUDEDIR)
=20
 $(DESTDIR)$(INCLUDEDIR)/XftCompat.h: XftCompat.h
+	$(mkinstalldirs) $(DESTDIR)$(INCLUDEDIR)
 	$(INSTALL_DATA) $< $(DESTDIR)$(INCLUDEDIR)
=20
 #
--- /dev/null	Thu Feb 13 10:36:44 2003
+++ Xrender/configure.in	Tue Jan 28 21:22:32 2003
@@ -0,0 +1,24 @@
+dnl Process this file with autoconf to produce a configure script.
+AC_INIT(Xrender.c)
+
+dnl Checks for programs.
+AC_PROG_CC
+AC_ISC_POSIX
+
+AC_PROG_LIBTOOL
+AC_PROG_INSTALL
+
+dnl Check for required header files
+AC_HEADER_STDC
+
+dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+
+AC_PATH_XTRA
+dnl X flags
+if test "$no_x" !=3D 'yes'; then
+  LDFLAGS=3D"$LDFLAGS $X_LIBS"
+  CPPFLAGS=3D"$CPPFLAGS $X_CFLAGS"
+fi
+
+AC_OUTPUT(Makefile)
--- Xrender/render.h	Thu Nov 21 20:30:00 2002
+++ /dev/null	Tue Jan 28 21:33:54 2003
@@ -1,172 +0,0 @@
-/*
- * $XFree86: xc/include/extensions/render.h,v 1.10 2002/11/06 22:47:49 k=
eithp Exp $
- *
- * Copyright =A9 2000 SuSE, Inc.
- *
- * Permission to use, copy, modify, distribute, and sell this software a=
nd its
- * documentation for any purpose is hereby granted without fee, provided=
 that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of SuSE not be used in advertising o=
r
- * publicity pertaining to distribution of the software without specific=
,
- * written prior permission.  SuSE makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- *
- * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING=
 ALL
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL =
SuSE
- * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY D=
AMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN=
 ACTION
- * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR I=
N=20
- * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- *
- * Author:  Keith Packard, SuSE, Inc.
- */
-
-#ifndef _RENDER_H_
-#define _RENDER_H_
-
-typedef unsigned long	Glyph;
-typedef unsigned long	GlyphSet;
-typedef unsigned long	Picture;
-typedef unsigned long	PictFormat;
-
-#define RENDER_NAME	"RENDER"
-#define RENDER_MAJOR	0
-#define RENDER_MINOR	7
-
-#define X_RenderQueryVersion		    0
-#define X_RenderQueryPictFormats	    1
-#define X_RenderQueryPictIndexValues	    2	/* 0.7 */
-#define X_RenderQueryDithers		    3
-#define X_RenderCreatePicture		    4
-#define X_RenderChangePicture		    5
-#define X_RenderSetPictureClipRectangles    6
-#define X_RenderFreePicture		    7
-#define X_RenderComposite		    8
-#define X_RenderScale			    9
-#define X_RenderTrapezoids		    10
-#define X_RenderTriangles		    11
-#define X_RenderTriStrip		    12
-#define X_RenderTriFan			    13
-#define X_RenderColorTrapezoids		    14
-#define X_RenderColorTriangles		    15
-/* #define X_RenderTransform		    16 */
-#define X_RenderCreateGlyphSet		    17
-#define X_RenderReferenceGlyphSet	    18
-#define X_RenderFreeGlyphSet		    19
-#define X_RenderAddGlyphs		    20
-#define X_RenderAddGlyphsFromPicture	    21
-#define X_RenderFreeGlyphs		    22
-#define X_RenderCompositeGlyphs8	    23
-#define X_RenderCompositeGlyphs16	    24
-#define X_RenderCompositeGlyphs32	    25
-#define X_RenderFillRectangles		    26
-/* 0.5 */
-#define X_RenderCreateCursor		    27
-/* 0.6 */
-#define X_RenderSetPictureTransform	    28
-#define X_RenderQueryFilters		    29
-#define X_RenderSetPictureFilter	    30
-#define RenderNumberRequests		    (X_RenderSetPictureFilter+1)
-
-#define BadPictFormat			    0
-#define BadPicture			    1
-#define BadPictOp			    2
-#define BadGlyphSet			    3
-#define BadGlyph			    4
-#define RenderNumberErrors		    (BadGlyph+1)
-
-#define PictTypeIndexed			    0
-#define PictTypeDirect			    1
-
-#define PictOpMinimum			    0
-#define PictOpClear			    0
-#define PictOpSrc			    1
-#define PictOpDst			    2
-#define PictOpOver			    3
-#define PictOpOverReverse		    4
-#define PictOpIn			    5
-#define PictOpInReverse			    6
-#define PictOpOut			    7
-#define PictOpOutReverse		    8
-#define PictOpAtop			    9
-#define PictOpAtopReverse		    10
-#define PictOpXor			    11
-#define PictOpAdd			    12
-#define PictOpSaturate			    13
-#define PictOpMaximum			    13
-
-/*
- * Operators only available in version 0.2
- */
-#define PictOpDisjointMinimum			    0x10
-#define PictOpDisjointClear			    0x10
-#define PictOpDisjointSrc			    0x11
-#define PictOpDisjointDst			    0x12
-#define PictOpDisjointOver			    0x13
-#define PictOpDisjointOverReverse		    0x14
-#define PictOpDisjointIn			    0x15
-#define PictOpDisjointInReverse			    0x16
-#define PictOpDisjointOut			    0x17
-#define PictOpDisjointOutReverse		    0x18
-#define PictOpDisjointAtop			    0x19
-#define PictOpDisjointAtopReverse		    0x1a
-#define PictOpDisjointXor			    0x1b
-#define PictOpDisjointMaximum			    0x1b
-
-#define PictOpConjointMinimum			    0x20
-#define PictOpConjointClear			    0x20
-#define PictOpConjointSrc			    0x21
-#define PictOpConjointDst			    0x22
-#define PictOpConjointOver			    0x23
-#define PictOpConjointOverReverse		    0x24
-#define PictOpConjointIn			    0x25
-#define PictOpConjointInReverse			    0x26
-#define PictOpConjointOut			    0x27
-#define PictOpConjointOutReverse		    0x28
-#define PictOpConjointAtop			    0x29
-#define PictOpConjointAtopReverse		    0x2a
-#define PictOpConjointXor			    0x2b
-#define PictOpConjointMaximum			    0x2b
-
-#define PolyEdgeSharp			    0
-#define PolyEdgeSmooth			    1
-
-#define PolyModePrecise			    0
-#define PolyModeImprecise		    1
-
-#define CPRepeat			    (1 << 0)
-#define CPAlphaMap			    (1 << 1)
-#define CPAlphaXOrigin			    (1 << 2)
-#define CPAlphaYOrigin			    (1 << 3)
-#define CPClipXOrigin			    (1 << 4)
-#define CPClipYOrigin			    (1 << 5)
-#define CPClipMask			    (1 << 6)
-#define CPGraphicsExposure		    (1 << 7)
-#define CPSubwindowMode			    (1 << 8)
-#define CPPolyEdge			    (1 << 9)
-#define CPPolyMode			    (1 << 10)
-#define CPDither			    (1 << 11)
-#define CPComponentAlpha		    (1 << 12)
-#define CPLastBit			    11
-
-/* Filters included in 0.6 */
-#define FilterNearest			    "nearest"
-#define FilterBilinear			    "bilinear"
-
-#define FilterFast			    "fast"
-#define FilterGood			    "good"
-#define FilterBest			    "best"
-
-#define FilterAliasNone			    -1
-
-/* Subpixel orders included in 0.6 */
-#define SubPixelUnknown			    0
-#define SubPixelHorizontalRGB		    1
-#define SubPixelHorizontalBGR		    2
-#define SubPixelVerticalRGB		    3
-#define SubPixelVerticalBGR		    4
-#define SubPixelNone			    5
-
-#endif	/* _RENDER_H_ */
--- /dev/null	Tue Jan 28 21:33:54 2003
+++ Xrender/X11/extensions/render.h	Tue Jan 28 22:38:58 2003
@@ -0,0 +1,172 @@
+/*
+ * $XFree86: xc/include/extensions/render.h,v 1.10 2002/11/06 22:47:49 k=
eithp Exp $
+ *
+ * Copyright =A9 2000 SuSE, Inc.
+ *
+ * Permission to use, copy, modify, distribute, and sell this software a=
nd its
+ * documentation for any purpose is hereby granted without fee, provided=
 that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of SuSE not be used in advertising o=
r
+ * publicity pertaining to distribution of the software without specific=
,
+ * written prior permission.  SuSE makes no representations about the
+ * suitability of this software for any purpose.  It is provided "as is"
+ * without express or implied warranty.
+ *
+ * SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING=
 ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL =
SuSE
+ * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY D=
AMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN=
 ACTION
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR I=
N=20
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ * Author:  Keith Packard, SuSE, Inc.
+ */
+
+#ifndef _RENDER_H_
+#define _RENDER_H_
+
+typedef unsigned long	Glyph;
+typedef unsigned long	GlyphSet;
+typedef unsigned long	Picture;
+typedef unsigned long	PictFormat;
+
+#define RENDER_NAME	"RENDER"
+#define RENDER_MAJOR	0
+#define RENDER_MINOR	7
+
+#define X_RenderQueryVersion		    0
+#define X_RenderQueryPictFormats	    1
+#define X_RenderQueryPictIndexValues	    2	/* 0.7 */
+#define X_RenderQueryDithers		    3
+#define X_RenderCreatePicture		    4
+#define X_RenderChangePicture		    5
+#define X_RenderSetPictureClipRectangles    6
+#define X_RenderFreePicture		    7
+#define X_RenderComposite		    8
+#define X_RenderScale			    9
+#define X_RenderTrapezoids		    10
+#define X_RenderTriangles		    11
+#define X_RenderTriStrip		    12
+#define X_RenderTriFan			    13
+#define X_RenderColorTrapezoids		    14
+#define X_RenderColorTriangles		    15
+/* #define X_RenderTransform		    16 */
+#define X_RenderCreateGlyphSet		    17
+#define X_RenderReferenceGlyphSet	    18
+#define X_RenderFreeGlyphSet		    19
+#define X_RenderAddGlyphs		    20
+#define X_RenderAddGlyphsFromPicture	    21
+#define X_RenderFreeGlyphs		    22
+#define X_RenderCompositeGlyphs8	    23
+#define X_RenderCompositeGlyphs16	    24
+#define X_RenderCompositeGlyphs32	    25
+#define X_RenderFillRectangles		    26
+/* 0.5 */
+#define X_RenderCreateCursor		    27
+/* 0.6 */
+#define X_RenderSetPictureTransform	    28
+#define X_RenderQueryFilters		    29
+#define X_RenderSetPictureFilter	    30
+#define RenderNumberRequests		    (X_RenderSetPictureFilter+1)
+
+#define BadPictFormat			    0
+#define BadPicture			    1
+#define BadPictOp			    2
+#define BadGlyphSet			    3
+#define BadGlyph			    4
+#define RenderNumberErrors		    (BadGlyph+1)
+
+#define PictTypeIndexed			    0
+#define PictTypeDirect			    1
+
+#define PictOpMinimum			    0
+#define PictOpClear			    0
+#define PictOpSrc			    1
+#define PictOpDst			    2
+#define PictOpOver			    3
+#define PictOpOverReverse		    4
+#define PictOpIn			    5
+#define PictOpInReverse			    6
+#define PictOpOut			    7
+#define PictOpOutReverse		    8
+#define PictOpAtop			    9
+#define PictOpAtopReverse		    10
+#define PictOpXor			    11
+#define PictOpAdd			    12
+#define PictOpSaturate			    13
+#define PictOpMaximum			    13
+
+/*
+ * Operators only available in version 0.2
+ */
+#define PictOpDisjointMinimum			    0x10
+#define PictOpDisjointClear			    0x10
+#define PictOpDisjointSrc			    0x11
+#define PictOpDisjointDst			    0x12
+#define PictOpDisjointOver			    0x13
+#define PictOpDisjointOverReverse		    0x14
+#define PictOpDisjointIn			    0x15
+#define PictOpDisjointInReverse			    0x16
+#define PictOpDisjointOut			    0x17
+#define PictOpDisjointOutReverse		    0x18
+#define PictOpDisjointAtop			    0x19
+#define PictOpDisjointAtopReverse		    0x1a
+#define PictOpDisjointXor			    0x1b
+#define PictOpDisjointMaximum			    0x1b
+
+#define PictOpConjointMinimum			    0x20
+#define PictOpConjointClear			    0x20
+#define PictOpConjointSrc			    0x21
+#define PictOpConjointDst			    0x22
+#define PictOpConjointOver			    0x23
+#define PictOpConjointOverReverse		    0x24
+#define PictOpConjointIn			    0x25
+#define PictOpConjointInReverse			    0x26
+#define PictOpConjointOut			    0x27
+#define PictOpConjointOutReverse		    0x28
+#define PictOpConjointAtop			    0x29
+#define PictOpConjointAtopReverse		    0x2a
+#define PictOpConjointXor			    0x2b
+#define PictOpConjointMaximum			    0x2b
+
+#define PolyEdgeSharp			    0
+#define PolyEdgeSmooth			    1
+
+#define PolyModePrecise			    0
+#define PolyModeImprecise		    1
+
+#define CPRepeat			    (1 << 0)
+#define CPAlphaMap			    (1 << 1)
+#define CPAlphaXOrigin			    (1 << 2)
+#define CPAlphaYOrigin			    (1 << 3)
+#define CPClipXOrigin			    (1 << 4)
+#define CPClipYOrigin			    (1 << 5)
+#define CPClipMask			    (1 << 6)
+#define CPGraphicsExposure		    (1 << 7)
+#define CPSubwindowMode			    (1 << 8)
+#define CPPolyEdge			    (1 << 9)
+#define CPPolyMode			    (1 << 10)
+#define CPDither			    (1 << 11)
+#define CPComponentAlpha		    (1 << 12)
+#define CPLastBit			    11
+
+/* Filters included in 0.6 */
+#define FilterNearest			    "nearest"
+#define FilterBilinear			    "bilinear"
+
+#define FilterFast			    "fast"
+#define FilterGood			    "good"
+#define FilterBest			    "best"
+
+#define FilterAliasNone			    -1
+
+/* Subpixel orders included in 0.6 */
+#define SubPixelUnknown			    0
+#define SubPixelHorizontalRGB		    1
+#define SubPixelHorizontalBGR		    2
+#define SubPixelVerticalRGB		    3
+#define SubPixelVerticalBGR		    4
+#define SubPixelNone			    5
+
+#endif	/* _RENDER_H_ */
--- Xrender/Xrenderint.h.orig	Tue Jan 28 21:44:50 2003
+++ Xrender/Xrenderint.h	Tue Jan 28 21:45:05 2003
@@ -30,7 +30,7 @@
 #define NEED_REPLIES
 #include <X11/Xlibint.h>
 #include <X11/Xutil.h>
-#include "Xext.h"			/* in ../include */
+#include <X11/extensions/Xext.h>	/* in ../include */
 #include "extutil.h"			/* in ../include */
 #include "Xrender.h"
 #include "renderproto.h"
--- fontconfig/configure.in.orig	Tue Dec 17 14:53:56 2002
+++ fontconfig/configure.in	Wed Feb 12 17:47:18 2003
@@ -34,7 +34,7 @@
 AC_ARG_WITH(expat,             [  --with-expat=3DDIR              Use Ex=
pat in DIR], expat=3D$withval, expat=3Dyes)
 AC_ARG_WITH(expat_includes,    [  --with-expat-includes=3DDIR     Use Ex=
pat includes in DIR], expat_includes=3D$withval, expat_includes=3Dyes)
 AC_ARG_WITH(expat_lib,         [  --with-expat-lib=3DDIR          Use Ex=
pat library in DIR], expat_lib=3D$withval, expat_lib=3Dyes)
-AC_ARG_WITH(default_fonts,     [  --with-default-fonts=3DDIR      Use fo=
nts from DIR when config is busted], defaultfonts=3D"$withval", default_f=
onts=3Dyes)
+AC_ARG_WITH(default_fonts,     [  --with-default-fonts=3DDIR      Use fo=
nts from DIR when config is busted], default_fonts=3D"$withval", default_=
fonts=3Dyes)
 AC_ARG_WITH(confdir,           [  --with-confdir=3DDIR            Use DI=
R to store configuration files (default /etc/fonts)], confdir=3D"$withval=
", confdir=3Dyes)
=20
 # Checks for programs.
@@ -46,21 +46,20 @@
 PACKAGE_VERSION=3D1.0.1
=20
 # Set major version
-PACKAGE_MAJOR=3D`echo $PACKAGE_VERSION | awk -F . '{ print $1 }'`
-PACKAGE_MINOR=3D`echo $PACKAGE_VERSION | awk -F . '{ print $2 }'`
-PACKAGE_REVISION=3D`echo $PACKAGE_VERSION | awk -F . '{ print $3 }'`
+PACKAGE_MAJOR=3D`echo $PACKAGE_VERSION | awk -F. '{ print $1 }'`
+PACKAGE_MINOR=3D`echo $PACKAGE_VERSION | awk -F. '{ print $2 }'`
+PACKAGE_REVISION=3D`echo $PACKAGE_VERSION | awk -F. '{ print $3 }'`
 AC_SUBST(PACKAGE_VERSION)
 AC_SUBST(PACKAGE_MAJOR)
 AC_SUBST(PACKAGE_MINOR)
 AC_SUBST(PACKAGE_REVISION)
=20
-OBJEXT=3D"o"
-AC_SUBST(OBJEXT)
-
 AC_DEFINE_UNQUOTED(PACKAGE_MAJOR,$PACKAGE_MAJOR)
 AC_DEFINE_UNQUOTED(PACKAGE_MINOR,$PACKAGE_MINOR)
 AC_DEFINE_UNQUOTED(PACKAGE_REVISION,$PACKAGE_REVISION)
-	=20
+
+AC_PROG_LIBTOOL
+
 # Checks for header files.
 AC_HEADER_DIRENT
 AC_HEADER_STDC
@@ -74,41 +73,16 @@
 AC_FUNC_VPRINTF
 AC_CHECK_FUNCS([memmove memset strchr strrchr strtol getopt getopt_long]=
)
=20
-if test "$GCC" =3D "yes"; then
-    MKSHLIB=3D'$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
-    DSO_LDOPTS=3D'-shared -Wl,-h,`echo $@ | sed '"'s/\.so\.\([[0-9][0-9]=
]*\).*/.so.\1/'"'`'
-    DSO_CFLAGS=3D''
-    DSO_PIC_CFLAGS=3D'-fPIC -DPIC'
-else
-    AC_CANONICAL_HOST
-   =20
-    MKSHLIB=3D'$(LD) $(DSO_LDOPTS) -o $@'
-    DSO_CFLAGS=3D''
-    DSO_PIC_CFLAGS=3D'-KPIC -DPIC'
-   =20
-    case "$host" in
-    *solaris*)
-    	DSO_LDOPTS=3D'-G -z text -z defs -h $@'
-	LIBS=3D"$LIBS -lc"
-	;;
-    *)
-    	DSO_LDOPTS=3D'-shared -h $@'
-    	;;
-    esac
-fi
-
-AC_SUBST(MKSHLIB)
-AC_SUBST(DSO_LDOPTS)
-AC_SUBST(DSO_CFLAGS)
-AC_SUBST(DSO_PIC_CFLAGS)
-
 #
 # Using x libraries, set X font directory
 case "$no_x" in
 yes)
 	;;
 *)
-	X_FONT_DIR=3D"$x_libraries/X11/fonts"
+	AC_ARG_WITH([x11-font-dir],
+	AC_HELP_STRING([--with-x11-font-dir=3DDIR],
+	[set default X11 font directory to DIR]),
+	X_FONT_DIR=3D$withval, X_FONT_DIR=3D"$x_libraries/X11/fonts")
 	AC_DEFINE_UNQUOTED(X_FONT_DIR,$X_FONT_DIR)
 	;;
 esac
--- fontconfig/src/Makefile.in.orig	Tue Jan 28 16:27:34 2003
+++ fontconfig/src/Makefile.in	Tue Jan 28 19:59:40 2003
@@ -23,6 +23,7 @@
 #
=20
 TOPDIR=3D..
+top_builddir=3D$(TOPDIR)
=20
 include $(TOPDIR)/config/Makedefs
=20
@@ -48,73 +49,53 @@
      fcstr.c \
      fcxml.c
=20
-OBJS=3Dfcatomic.@OBJEXT@ \
-     fcblanks.@OBJEXT@ \
-     fccache.@OBJEXT@ \
-     fccfg.@OBJEXT@ \
-     fccharset.@OBJEXT@ \
-     fcdbg.@OBJEXT@ \
-     fcdefault.@OBJEXT@ \
-     fcdir.@OBJEXT@ \
-     fcfreetype.@OBJEXT@ \
-     fcfs.@OBJEXT@ \
-     fcinit.@OBJEXT@ \
-     fclang.@OBJEXT@ \
-     fclist.@OBJEXT@ \
-     fcmatch.@OBJEXT@ \
-     fcmatrix.@OBJEXT@ \
-     fcname.@OBJEXT@ \
-     fcpat.@OBJEXT@ \
-     fcstr.@OBJEXT@ \
-     fcxml.@OBJEXT@
+OBJS=3Dfcatomic.lo \
+     fcblanks.lo \
+     fccache.lo \
+     fccfg.lo \
+     fccharset.lo \
+     fcdbg.lo \
+     fcdefault.lo \
+     fcdir.lo \
+     fcfreetype.lo \
+     fcfs.lo \
+     fcinit.lo \
+     fclang.lo \
+     fclist.lo \
+     fcmatch.lo \
+     fcmatrix.lo \
+     fcname.lo \
+     fcpat.lo \
+     fcstr.lo \
+     fcxml.lo
=20
-.c.@OBJEXT@:
-	$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) -c $< -o $@
+.SUFFIXES:
+.SUFFIXES: .c .lo .o
+
+.c.o:
+	$(CC) $(CFLAGS) -c $< -o $@
+
+.c.lo:
+	$(LIBTOOL) --mode=3Dcompile $(CC) $(CFLAGS) -c $< -o $@
 =09
-all:: $(LIBFILE) $(LIBMAJOR) $(LIBBASE)
+all:: $(LIBFILE)
=20
 #=20
 # build the library and the various version links
 #
 $(LIBFILE): $(OBJS)
-	rm -f $@
-	$(MKSHLIB) $(OBJS) $(LIBS)
-
-$(LIBMAJOR): $(LIBFILE)
-	rm -f  $@
-	$(LN_S) $(LIBFILE) $(LIBMAJOR)
-
-$(LIBBASE): $(LIBMAJOR)
-	rm -f $@
-	$(LN_S) $(LIBMAJOR) $(LIBBASE)
+	$(LIBTOOL) --mode=3Dlink $(CC) -o $@ -rpath $(libdir) \
+	$(LIBVER) $(OBJS) $(LIBS)
=20
 $(OBJS): fcint.h $(HEADERS)
=20
-#
-# install directories
-#
-install:: $(DESTDIR)$(LIBDIR)
-
-$(DESTDIR)$(LIBDIR):
-	mkdir -p $@
-
 #=20
 # install library
 #
=20
-install:: $(DESTDIR)$(LIBDIR)/$(LIB) $(DESTDIR)$(LIBDIR)/$(LIBMAJOR)
-install:: $(DESTDIR)$(LIBDIR)/$(LIBBASE)
-
-$(DESTDIR)$(LIBDIR)/$(LIBFILE): $(LIBFILE)
-	$(INSTALL_PROGRAM) $< $(DESTDIR)$(LIBDIR)/$<
-
-$(DESTDIR)$(LIBDIR)/$(LIBMAJOR): $(DESTDIR)$(LIBDIR)/$(LIBFILE)
-	rm -f $(DESTDIR)$(LIBDIR)/$(LIBMAJOR)
-	$(LN_S) $(LIBFILE) $(DESTDIR)$(LIBDIR)/$(LIBMAJOR)
-
-$(DESTDIR)$(LIBDIR)/$(LIBBASE): $(DESTDIR)$(LIBDIR)/$(LIBMAJOR)
-	rm -f $(DESTDIR)$(LIBDIR)/$(LIBBASE)
-	$(LN_S) $(LIBMAJOR) $(DESTDIR)$(LIBDIR)/$(LIBBASE)
+install: $(LIBFILE)
+	$(mkinstalldirs) $(DESTDIR)$(LIBDIR)
+	$(LIBTOOL) --mode=3Dinstall $(INSTALL_PROGRAM) $< $(DESTDIR)$(LIBDIR)
=20
 clean::
 	rm -f $(LIBFILE) $(LIBMAJOR) $(LIBBASE) $(OBJS)
--- fontconfig/config/Makedefs.in.orig	Tue Jan 28 16:18:38 2003
+++ fontconfig/config/Makedefs.in	Tue Jan 28 17:38:12 2003
@@ -34,16 +34,13 @@
 sysconfdir=3D@sysconfdir@
 confdir=3D@confdir@
=20
-DSO_LDOPTS=3D@DSO_LDOPTS@
-DSO_CFLAGS=3D@DSO_CFLAGS@
-DSO_PIC_CFLAGS=3D@DSO_PIC_CFLAGS@
+LIBTOOL=3D@LIBTOOL@
=20
 INSTALL=3D@INSTALL@
 INSTALL_PROGRAM=3D@INSTALL_PROGRAM@
 INSTALL_SCRIPT=3D@INSTALL_SCRIPT@
 INSTALL_DATA=3D@INSTALL_DATA@
-MKSHLIB=3D@MKSHLIB@
-LN_S=3D@LN_S@
+mkinstalldirs =3D $(SHELL) $(TOPDIR)/config/mkinstalldirs
=20
 # shared libraries
 LIBDIR=3D$(libdir)
@@ -64,11 +61,10 @@
=20
 CFLAGS=3D$(CDEBUGFLAGS) @DEFS@ $(FCPATH_DEF) $(INCLUDES)
=20
-LIBBASE=3Dlibfontconfig.so
-LIBFILE=3D$(LIBBASE).@PACKAGE_MAJOR@.@PACKAGE_MINOR@
-LIBMAJOR=3D$(LIBBASE).@PACKAGE_MAJOR@
+LIBVER=3D-version-info 0:0:0
+LIBFILE=3Dlibfontconfig.la
=20
-LIBFONTCONFIG=3D-L$(SRCDIR) -lfontconfig
+LIBFONTCONFIG=3D$(top_builddir)/src/$(LIBFILE)
=20
 SRCDIR=3D$(TOPDIR)/src
=20
--- fontconfig/fc-cache/Makefile.in.orig	Tue Jan 28 17:06:21 2003
+++ fontconfig/fc-cache/Makefile.in	Tue Jan 28 17:37:51 2003
@@ -23,6 +23,7 @@
 #
=20
 TOPDIR=3D..
+top_builddir=3D$(TOPDIR)
=20
 include $(TOPDIR)/config/Makedefs
=20
@@ -35,19 +36,15 @@
 all:: $(PROG)
=20
 $(PROG): $(OBJS)
-	$(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBFONTCONFIG)
+	$(LIBTOOL) --mode=3Dlink $(CC) $(CFLAGS) -o $@ $(OBJS) \
+	$(LIBFONTCONFIG)
=20
 $(OBJS): $(HEADERS)
=20
-install:: $(DESTDIR)$(BINDIR)
-
-$(DESTDIR)$(BINDIR):
-	mkdir -p $@
-
-install:: $(DESTDIR)$(BINDIR)/$(PROG)
-
-$(DESTDIR)$(BINDIR)/$(PROG): $(PROG)
-	$(INSTALL_PROGRAM) $(PROG) $(DESTDIR)$(BINDIR)/$<
+install: $(PROG)
+	$(mkinstalldirs) $(DESTDIR)$(BINDIR)
+	$(LIBTOOL) --mode=3Dinstall $(INSTALL_PROGRAM) $(PROG) \
+	$(DESTDIR)$(BINDIR)/$<
=20
 clean::
 	rm -f $(PROG) $(OBJS)
--- fontconfig/fc-list/Makefile.in.orig	Tue Jan 28 17:10:53 2003
+++ fontconfig/fc-list/Makefile.in	Tue Jan 28 17:28:17 2003
@@ -23,6 +23,7 @@
 #
=20
 TOPDIR=3D..
+top_builddir=3D$(TOPDIR)
=20
 include $(TOPDIR)/config/Makedefs
=20
@@ -35,19 +36,15 @@
 all:: $(PROG)
=20
 $(PROG): $(OBJS)
-	$(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBFONTCONFIG)
+	$(LIBTOOL) --mode=3Dlink $(CC) $(CFLAGS) -o $@ $(OBJS) \
+	$(LIBFONTCONFIG)
=20
 $(OBJS): $(HEADERS)
=20
-install:: $(DESTDIR)$(BINDIR)
-
-$(DESTDIR)$(BINDIR):
-	mkdir -p $@
-
-install:: $(DESTDIR)$(BINDIR)/$(PROG)
-
-$(DESTDIR)$(BINDIR)/$(PROG): $(PROG)
-	$(INSTALL_PROGRAM) $(PROG) $(DESTDIR)$(BINDIR)/$<
+install: $(PROG)
+	$(mkinstalldirs) $(DESTDIR)$(BINDIR)
+	$(LIBTOOL) --mode=3Dinstall $(INSTALL_PROGRAM) $(PROG) \
+	$(DESTDIR)$(BINDIR)/$<
=20
 clean::
 	rm -f $(PROG) $(OBJS)