[arch-commits] Commit in gtkglext/trunk (PKGBUILD kill-pangox.patch)
Jan de Groot
jgc at archlinux.org
Tue Apr 28 14:30:33 UTC 2020
Date: Tuesday, April 28, 2020 @ 14:30:32
Author: jgc
Revision: 381789
upgpkg: gtkglext 1.2.0-12: Drop pangox-compat usage by killing gdkglfont API
Added:
gtkglext/trunk/kill-pangox.patch
Modified:
gtkglext/trunk/PKGBUILD
-------------------+
PKGBUILD | 15
kill-pangox.patch | 811 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 820 insertions(+), 6 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2020-04-28 13:37:37 UTC (rev 381788)
+++ PKGBUILD 2020-04-28 14:30:32 UTC (rev 381789)
@@ -3,22 +3,24 @@
pkgname=gtkglext
pkgver=1.2.0
-pkgrel=11
+pkgrel=12
pkgdesc="opengl extensions for gtk2"
arch=('x86_64')
url="http://gtkglext.sourceforge.net/"
license=('LGPL')
-depends=('gtk2' 'glu' 'libxmu' 'pangox-compat')
+depends=('gtk2' 'glu' 'libxmu')
makedepends=('python')
source=("https://downloads.sourceforge.net/sourceforge/gtkglext/${pkgname}-${pkgver}.tar.bz2"
- 'gtk2.20.patch' gtkglext-gcc8.patch)
-md5sums=('ed7ba24ce06a8630c07f2d0ee5f04ab4'
- 'e5a87ec3f2d0e616c6f32f90c3f7237f'
- '9f116d557167dabf4fcbe765f5c784b2')
+ 'gtk2.20.patch' gtkglext-gcc8.patch kill-pangox.patch)
+sha256sums=('16bd736074f6b14180f206b7e91263fc721b49912ea3258ab5f094cfa5497f51'
+ '864c6963c4a2f4f69f1f028ecee6c821a4f4d5aba142f2e07898aede825ce9ea'
+ '0ec0c22b15054b0684f9a9015ff05920af0c00dae5409e76321f683dcc17cff9'
+ '8ce31aa17ea84aede3b03fa392ec95e0e9c001f348384ba93d850de9f0b7044e')
prepare() {
cd $pkgname-$pkgver
+ patch -Np1 -i "${srcdir}/kill-pangox.patch"
patch -Np1 -i "${srcdir}/gtk2.20.patch"
sed '/AC_PATH_XTRA/d' -i configure.in
patch -p1 -i ../gtkglext-gcc8.patch # Fix build with GCC 8
@@ -31,6 +33,7 @@
./configure --prefix=/usr \
--disable-static
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
Added: kill-pangox.patch
===================================================================
--- kill-pangox.patch (rev 0)
+++ kill-pangox.patch 2020-04-28 14:30:32 UTC (rev 381789)
@@ -0,0 +1,811 @@
+diff -ruN gtkglext-1.2.0.orig/configure.in gtkglext-1.2.0/configure.in
+--- gtkglext-1.2.0.orig/configure.in 2006-02-05 03:17:19.000000000 +0000
++++ gtkglext-1.2.0/configure.in 2020-04-28 12:35:21.905828768 +0000
+@@ -59,10 +59,6 @@
+ m4_define([pango_pkg], [pango])
+ m4_define([pango_required_version], [1.0.0])
+
+-# Pangox
+-m4_define([pangox_pkg], [pangox])
+-m4_define([pangox_required_version], [1.0.0])
+-
+ # PangoFT2
+ m4_define([pangoft2_pkg], [pangoft2])
+ m4_define([pangoft2_required_version], [1.0.0])
+@@ -349,7 +345,6 @@
+ gtk_pkg >= gtk_required_version \
+ gdk_pkg >= gdk_required_version \
+ pango_pkg >= pango_required_version \
+-pangox_pkg >= pangox_required_version \
+ gmodule_pkg >= gmodule_required_version \
+ ])
+
+@@ -794,7 +789,7 @@
+ # CFLAGS and LIBS
+ ##################################################
+
+-GDKGLEXT_PACKAGES="gdk_pkg pango_pkg pangox_pkg gmodule_pkg"
++GDKGLEXT_PACKAGES="gdk_pkg pango_pkg gmodule_pkg"
+ GDKGLEXT_EXTRA_CFLAGS="$GL_CFLAGS $GDKGLEXT_WIN_CFLAGS"
+ GDKGLEXT_EXTRA_LIBS="$GL_LIBS $GDKGLEXT_WIN_LIBS"
+ GDKGLEXT_DEP_CFLAGS="$GDKGLEXT_EXTRA_CFLAGS `$PKG_CONFIG --cflags $GDKGLEXT_PACKAGES`"
+diff -ruN gtkglext-1.2.0.orig/examples/font.c gtkglext-1.2.0/examples/font.c
+--- gtkglext-1.2.0.orig/examples/font.c 2003-11-06 18:04:46.000000000 +0000
++++ gtkglext-1.2.0/examples/font.c 1970-01-01 00:00:00.000000000 +0000
+@@ -1,349 +0,0 @@
+-/*
+- * font.c:
+- * Simple bitmap font rendering example.
+- *
+- * written by Naofumi Yasufuku <naofumi at users.sourceforge.net>
+- */
+-
+-#include <stdlib.h>
+-#include <string.h>
+-
+-#include <gtk/gtk.h>
+-
+-#include <gtk/gtkgl.h>
+-
+-#ifdef G_OS_WIN32
+-#define WIN32_LEAN_AND_MEAN 1
+-#include <windows.h>
+-#endif
+-
+-#include <GL/gl.h>
+-#include <GL/glu.h>
+-
+-static gchar font_string[] = "courier 12";
+-static GLuint font_list_base;
+-static gint font_height;
+-
+-static void
+-realize (GtkWidget *widget,
+- gpointer data)
+-{
+- GdkGLContext *glcontext = gtk_widget_get_gl_context (widget);
+- GdkGLDrawable *gldrawable = gtk_widget_get_gl_drawable (widget);
+-
+- PangoFontDescription *font_desc;
+- PangoFont *font;
+- PangoFontMetrics *font_metrics;
+-
+- /*** OpenGL BEGIN ***/
+- if (!gdk_gl_drawable_gl_begin (gldrawable, glcontext))
+- return;
+-
+- /*
+- * Generate font display lists.
+- */
+- font_list_base = glGenLists (128);
+-
+- font_desc = pango_font_description_from_string (font_string);
+-
+- font = gdk_gl_font_use_pango_font (font_desc, 0, 128, font_list_base);
+- if (font == NULL)
+- {
+- g_print ("*** Can't load font '%s'\n", font_string);
+- exit (1);
+- }
+-
+- font_metrics = pango_font_get_metrics (font, NULL);
+-
+- font_height = pango_font_metrics_get_ascent (font_metrics) +
+- pango_font_metrics_get_descent (font_metrics);
+- font_height = PANGO_PIXELS (font_height);
+-
+- pango_font_description_free (font_desc);
+- pango_font_metrics_unref (font_metrics);
+-
+- glClearColor (1.0, 1.0, 1.0, 1.0);
+- glClearDepth (1.0);
+-
+- glViewport (0, 0,
+- widget->allocation.width, widget->allocation.height);
+-
+- glMatrixMode (GL_PROJECTION);
+- glLoadIdentity ();
+- glOrtho (0.0, widget->allocation.width,
+- 0.0, widget->allocation.height,
+- -1.0, 1.0);
+-
+- glMatrixMode (GL_MODELVIEW);
+- glLoadIdentity ();
+-
+- gdk_gl_drawable_gl_end (gldrawable);
+- /*** OpenGL END ***/
+-}
+-
+-static gboolean
+-configure_event (GtkWidget *widget,
+- GdkEventConfigure *event,
+- gpointer data)
+-{
+- GdkGLContext *glcontext = gtk_widget_get_gl_context (widget);
+- GdkGLDrawable *gldrawable = gtk_widget_get_gl_drawable (widget);
+-
+- /*** OpenGL BEGIN ***/
+- if (!gdk_gl_drawable_gl_begin (gldrawable, glcontext))
+- return FALSE;
+-
+- glViewport (0, 0,
+- widget->allocation.width, widget->allocation.height);
+-
+- glMatrixMode (GL_PROJECTION);
+- glLoadIdentity ();
+- glOrtho (0.0, widget->allocation.width,
+- 0.0, widget->allocation.height,
+- -1.0, 1.0);
+-
+- glMatrixMode (GL_MODELVIEW);
+- glLoadIdentity ();
+-
+- gdk_gl_drawable_gl_end (gldrawable);
+- /*** OpenGL END ***/
+-
+- return TRUE;
+-}
+-
+-static gboolean
+-expose_event (GtkWidget *widget,
+- GdkEventExpose *event,
+- gpointer data)
+-{
+- GdkGLContext *glcontext = gtk_widget_get_gl_context (widget);
+- GdkGLDrawable *gldrawable = gtk_widget_get_gl_drawable (widget);
+- int i, j;
+-
+- /*** OpenGL BEGIN ***/
+- if (!gdk_gl_drawable_gl_begin (gldrawable, glcontext))
+- return FALSE;
+-
+- glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
+-
+- /*
+- * Draw some text.
+- */
+- glColor3f (0.0, 0.0, 0.0);
+- for (i = 2; i >= -2; i--)
+- {
+- glRasterPos2f (10.0, 0.5*widget->allocation.height + i*font_height);
+- for (j = ' '; j <= 'Z'; j++)
+- glCallList (font_list_base+j);
+- }
+-
+- /*
+- * Show font description string.
+- */
+- glColor3f (1.0, 0.0, 0.0);
+- glRasterPos2f (10.0, 10.0);
+- glListBase (font_list_base);
+- glCallLists (strlen (font_string), GL_UNSIGNED_BYTE, font_string);
+-
+- if (gdk_gl_drawable_is_double_buffered (gldrawable))
+- gdk_gl_drawable_swap_buffers (gldrawable);
+- else
+- glFlush ();
+-
+- gdk_gl_drawable_gl_end (gldrawable);
+- /*** OpenGL END ***/
+-
+- return TRUE;
+-}
+-
+-static void
+-print_gl_config_attrib (GdkGLConfig *glconfig,
+- const gchar *attrib_str,
+- int attrib,
+- gboolean is_boolean)
+-{
+- int value;
+-
+- g_print ("%s = ", attrib_str);
+- if (gdk_gl_config_get_attrib (glconfig, attrib, &value))
+- {
+- if (is_boolean)
+- g_print ("%s\n", value == TRUE ? "TRUE" : "FALSE");
+- else
+- g_print ("%d\n", value);
+- }
+- else
+- g_print ("*** Cannot get %s attribute value\n", attrib_str);
+-}
+-
+-static void
+-examine_gl_config_attrib (GdkGLConfig *glconfig)
+-{
+- g_print ("\nOpenGL visual configurations :\n\n");
+-
+- g_print ("gdk_gl_config_is_rgba (glconfig) = %s\n",
+- gdk_gl_config_is_rgba (glconfig) ? "TRUE" : "FALSE");
+- g_print ("gdk_gl_config_is_double_buffered (glconfig) = %s\n",
+- gdk_gl_config_is_double_buffered (glconfig) ? "TRUE" : "FALSE");
+- g_print ("gdk_gl_config_is_stereo (glconfig) = %s\n",
+- gdk_gl_config_is_stereo (glconfig) ? "TRUE" : "FALSE");
+- g_print ("gdk_gl_config_has_alpha (glconfig) = %s\n",
+- gdk_gl_config_has_alpha (glconfig) ? "TRUE" : "FALSE");
+- g_print ("gdk_gl_config_has_depth_buffer (glconfig) = %s\n",
+- gdk_gl_config_has_depth_buffer (glconfig) ? "TRUE" : "FALSE");
+- g_print ("gdk_gl_config_has_stencil_buffer (glconfig) = %s\n",
+- gdk_gl_config_has_stencil_buffer (glconfig) ? "TRUE" : "FALSE");
+- g_print ("gdk_gl_config_has_accum_buffer (glconfig) = %s\n",
+- gdk_gl_config_has_accum_buffer (glconfig) ? "TRUE" : "FALSE");
+-
+- g_print ("\n");
+-
+- print_gl_config_attrib (glconfig, "GDK_GL_USE_GL", GDK_GL_USE_GL, TRUE);
+- print_gl_config_attrib (glconfig, "GDK_GL_BUFFER_SIZE", GDK_GL_BUFFER_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_LEVEL", GDK_GL_LEVEL, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_RGBA", GDK_GL_RGBA, TRUE);
+- print_gl_config_attrib (glconfig, "GDK_GL_DOUBLEBUFFER", GDK_GL_DOUBLEBUFFER, TRUE);
+- print_gl_config_attrib (glconfig, "GDK_GL_STEREO", GDK_GL_STEREO, TRUE);
+- print_gl_config_attrib (glconfig, "GDK_GL_AUX_BUFFERS", GDK_GL_AUX_BUFFERS, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_RED_SIZE", GDK_GL_RED_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_GREEN_SIZE", GDK_GL_GREEN_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_BLUE_SIZE", GDK_GL_BLUE_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_ALPHA_SIZE", GDK_GL_ALPHA_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_DEPTH_SIZE", GDK_GL_DEPTH_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_STENCIL_SIZE", GDK_GL_STENCIL_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_ACCUM_RED_SIZE", GDK_GL_ACCUM_RED_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_ACCUM_GREEN_SIZE", GDK_GL_ACCUM_GREEN_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_ACCUM_BLUE_SIZE", GDK_GL_ACCUM_BLUE_SIZE, FALSE);
+- print_gl_config_attrib (glconfig, "GDK_GL_ACCUM_ALPHA_SIZE", GDK_GL_ACCUM_ALPHA_SIZE, FALSE);
+-
+- g_print ("\n");
+-}
+-
+-int
+-main (int argc,
+- char *argv[])
+-{
+- GdkGLConfig *glconfig;
+- gint major, minor;
+-
+- GtkWidget *window;
+- GtkWidget *vbox;
+- GtkWidget *drawing_area;
+- GtkWidget *button;
+-
+- /*
+- * Init GTK.
+- */
+-
+- gtk_init (&argc, &argv);
+-
+- /*
+- * Init GtkGLExt.
+- */
+-
+- gtk_gl_init (&argc, &argv);
+-
+- /*
+- * Query OpenGL extension version.
+- */
+-
+- gdk_gl_query_version (&major, &minor);
+- g_print ("\nOpenGL extension version - %d.%d\n",
+- major, minor);
+-
+- /*
+- * Configure OpenGL-capable visual.
+- */
+-
+- /* Try double-buffered visual */
+- glconfig = gdk_gl_config_new_by_mode (GDK_GL_MODE_RGB |
+- GDK_GL_MODE_DOUBLE);
+- if (glconfig == NULL)
+- {
+- g_print ("*** Cannot find the double-buffered visual.\n");
+- g_print ("*** Trying single-buffered visual.\n");
+-
+- /* Try single-buffered visual */
+- glconfig = gdk_gl_config_new_by_mode (GDK_GL_MODE_RGB);
+- if (glconfig == NULL)
+- {
+- g_print ("*** No appropriate OpenGL-capable visual found.\n");
+- exit (1);
+- }
+- }
+-
+- examine_gl_config_attrib (glconfig);
+-
+- /*
+- * Top-level window.
+- */
+-
+- window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+- gtk_window_set_title (GTK_WINDOW (window), "font");
+-
+- /* Get automatically redrawn if any of their children changed allocation. */
+- gtk_container_set_reallocate_redraws (GTK_CONTAINER (window), TRUE);
+-
+- g_signal_connect (G_OBJECT (window), "delete_event",
+- G_CALLBACK (gtk_main_quit), NULL);
+-
+- /*
+- * VBox.
+- */
+-
+- vbox = gtk_vbox_new (FALSE, 0);
+- gtk_container_add (GTK_CONTAINER (window), vbox);
+- gtk_widget_show (vbox);
+-
+- /*
+- * Drawing area for drawing OpenGL scene.
+- */
+-
+- drawing_area = gtk_drawing_area_new ();
+- gtk_widget_set_size_request (drawing_area, 640, 240);
+-
+- /* Set OpenGL-capability to the widget. */
+- gtk_widget_set_gl_capability (drawing_area,
+- glconfig,
+- NULL,
+- TRUE,
+- GDK_GL_RGBA_TYPE);
+-
+- g_signal_connect_after (G_OBJECT (drawing_area), "realize",
+- G_CALLBACK (realize), NULL);
+- g_signal_connect (G_OBJECT (drawing_area), "configure_event",
+- G_CALLBACK (configure_event), NULL);
+- g_signal_connect (G_OBJECT (drawing_area), "expose_event",
+- G_CALLBACK (expose_event), NULL);
+-
+- gtk_box_pack_start (GTK_BOX (vbox), drawing_area, TRUE, TRUE, 0);
+-
+- gtk_widget_show (drawing_area);
+-
+- /*
+- * Simple quit button.
+- */
+-
+- button = gtk_button_new_with_label ("Quit");
+-
+- g_signal_connect (G_OBJECT (button), "clicked",
+- G_CALLBACK (gtk_main_quit), NULL);
+-
+- gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
+-
+- gtk_widget_show (button);
+-
+- /*
+- * Show window.
+- */
+-
+- gtk_widget_show (window);
+-
+- /*
+- * Main loop.
+- */
+-
+- gtk_main ();
+-
+- return 0;
+-}
+diff -ruN gtkglext-1.2.0.orig/examples/Makefile.am gtkglext-1.2.0/examples/Makefile.am
+--- gtkglext-1.2.0.orig/examples/Makefile.am 2003-09-09 09:50:04.000000000 +0000
++++ gtkglext-1.2.0/examples/Makefile.am 2020-04-28 12:38:52.422260365 +0000
+@@ -45,7 +45,6 @@
+ pixmap-mixed \
+ share-lists \
+ color \
+- font \
+ button \
+ shapes \
+ logo \
+@@ -101,10 +100,6 @@
+ color_DEPENDENCIES = $(DEPS)
+ color_LDADD = $(LDADDS)
+
+-font_SOURCES = font.c
+-font_DEPENDENCIES = $(DEPS)
+-font_LDADD = $(LDADDS)
+-
+ button_SOURCES = button.c
+ button_DEPENDENCIES = $(DEPS)
+ button_LDADD = $(LDADDS)
+diff -ruN gtkglext-1.2.0.orig/gdk/gdkglfont.h gtkglext-1.2.0/gdk/gdkglfont.h
+--- gtkglext-1.2.0.orig/gdk/gdkglfont.h 2004-02-20 09:38:10.000000000 +0000
++++ gtkglext-1.2.0/gdk/gdkglfont.h 1970-01-01 00:00:00.000000000 +0000
+@@ -1,44 +0,0 @@
+-/* GdkGLExt - OpenGL Extension to GDK
+- * Copyright (C) 2002-2004 Naofumi Yasufuku
+- *
+- * This library is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU Lesser General Public
+- * License as published by the Free Software Foundation; either
+- * version 2.1 of the License, or (at your option) any later version.
+- *
+- * This library is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+- * Lesser General Public License for more details.
+- *
+- * You should have received a copy of the GNU Lesser General Public
+- * License along with this library; if not, write to the Free Software
+- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+- */
+-
+-#ifndef __GDK_GL_FONT_H__
+-#define __GDK_GL_FONT_H__
+-
+-#include <gdk/gdkgldefs.h>
+-#include <gdk/gdkgltypes.h>
+-
+-G_BEGIN_DECLS
+-
+-#ifndef GDK_MULTIHEAD_SAFE
+-PangoFont *gdk_gl_font_use_pango_font (const PangoFontDescription *font_desc,
+- int first,
+- int count,
+- int list_base);
+-#endif /* GDK_MULTIHEAD_SAFE */
+-
+-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
+-PangoFont *gdk_gl_font_use_pango_font_for_display (GdkDisplay *display,
+- const PangoFontDescription *font_desc,
+- int first,
+- int count,
+- int list_base);
+-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
+-
+-G_END_DECLS
+-
+-#endif /* __GDK_GL_FONT_H__ */
+diff -ruN gtkglext-1.2.0.orig/gdk/gdkgl.h gtkglext-1.2.0/gdk/gdkgl.h
+--- gtkglext-1.2.0.orig/gdk/gdkgl.h 2004-02-20 09:38:10.000000000 +0000
++++ gtkglext-1.2.0/gdk/gdkgl.h 2020-04-28 12:36:16.503298432 +0000
+@@ -33,7 +33,6 @@
+ #include <gdk/gdkgldrawable.h>
+ #include <gdk/gdkglpixmap.h>
+ #include <gdk/gdkglwindow.h>
+-#include <gdk/gdkglfont.h>
+ #include <gdk/gdkglshapes.h>
+
+ #endif /* __GDK_GL_H__ */
+diff -ruN gtkglext-1.2.0.orig/gdk/Makefile.am gtkglext-1.2.0/gdk/Makefile.am
+--- gtkglext-1.2.0.orig/gdk/Makefile.am 2003-08-15 09:10:38.000000000 +0000
++++ gtkglext-1.2.0/gdk/Makefile.am 2020-04-28 12:36:09.336526338 +0000
+@@ -76,7 +76,6 @@
+ gdkgldrawable.h \
+ gdkglpixmap.h \
+ gdkglwindow.h \
+- gdkglfont.h \
+ gdkglshapes.h \
+ gdkglglext.h
+
+diff -ruN gtkglext-1.2.0.orig/gdk/win32/gdkglfont-win32.c gtkglext-1.2.0/gdk/win32/gdkglfont-win32.c
+--- gtkglext-1.2.0.orig/gdk/win32/gdkglfont-win32.c 2004-02-20 09:38:13.000000000 +0000
++++ gtkglext-1.2.0/gdk/win32/gdkglfont-win32.c 1970-01-01 00:00:00.000000000 +0000
+@@ -1,109 +0,0 @@
+-/* GdkGLExt - OpenGL Extension to GDK
+- * Copyright (C) 2002-2004 Naofumi Yasufuku
+- *
+- * This library is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU Lesser General Public
+- * License as published by the Free Software Foundation; either
+- * version 2.1 of the License, or (at your option) any later version.
+- *
+- * This library is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+- * Lesser General Public License for more details.
+- *
+- * You should have received a copy of the GNU Lesser General Public
+- * License along with this library; if not, write to the Free Software
+- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+- */
+-
+-#include <pango/pangowin32.h>
+-
+-#include "gdkglwin32.h"
+-#include "gdkglprivate-win32.h"
+-#include "gdkglfont.h"
+-
+-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
+-#include <gdk/gdkdisplay.h>
+-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
+-
+-PangoFont *
+-gdk_gl_font_use_pango_font (const PangoFontDescription *font_desc,
+- int first,
+- int count,
+- int list_base)
+-{
+- PangoFontMap *font_map;
+- PangoFont *font = NULL;
+- LOGFONT *logfont = NULL;
+- PangoWin32FontCache *font_cache;
+- HFONT hfont;
+- HDC hdc;
+-
+- g_return_val_if_fail (font_desc != NULL, NULL);
+-
+- GDK_GL_NOTE_FUNC ();
+-
+- font_map = pango_win32_font_map_for_display ();
+-
+- font = pango_font_map_load_font (font_map, NULL, font_desc);
+- if (font == NULL)
+- {
+- g_warning ("cannot load PangoFont");
+- goto FAIL;
+- }
+-
+- logfont = pango_win32_font_logfont (font);
+- if (logfont == NULL)
+- {
+- g_warning ("cannot get LOGFONT struct");
+- font = NULL;
+- goto FAIL;
+- }
+-
+- font_cache = pango_win32_font_map_get_font_cache (font_map);
+-
+- hfont = pango_win32_font_cache_load (font_cache, logfont);
+-
+- hdc = CreateCompatibleDC (NULL);
+- if (hdc == NULL)
+- {
+- g_warning ("cannot create a memory DC");
+- font = NULL;
+- goto FAIL;
+- }
+-
+- SelectObject (hdc, hfont);
+-
+- if (!wglUseFontBitmaps (hdc, first, count, list_base))
+- {
+- g_warning ("cannot create the font display lists");
+- font = NULL;
+- goto FAIL;
+- }
+-
+- if (!DeleteDC (hdc))
+- g_warning ("cannot delete the memory DC");
+-
+- pango_win32_font_cache_unload (font_cache, hfont);
+-
+- FAIL:
+-
+- if (logfont != NULL)
+- g_free (logfont);
+-
+- return font;
+-}
+-
+-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
+-
+-PangoFont *
+-gdk_gl_font_use_pango_font_for_display (GdkDisplay *display,
+- const PangoFontDescription *font_desc,
+- int first,
+- int count,
+- int list_base)
+-{
+- return gdk_gl_font_use_pango_font (font_desc, first, count, list_base);
+-}
+-
+-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
+diff -ruN gtkglext-1.2.0.orig/gdk/win32/Makefile.am gtkglext-1.2.0/gdk/win32/Makefile.am
+--- gtkglext-1.2.0.orig/gdk/win32/Makefile.am 2003-08-15 01:39:54.000000000 +0000
++++ gtkglext-1.2.0/gdk/win32/Makefile.am 2020-04-28 12:36:35.270241212 +0000
+@@ -36,7 +36,6 @@
+ gdkgldrawable-win32.c \
+ gdkglpixmap-win32.c \
+ gdkglwindow-win32.c \
+- gdkglfont-win32.c \
+ gdkglwglext.c
+
+ gdkglext_win32_headers = \
+diff -ruN gtkglext-1.2.0.orig/gdk/x11/gdkglfont-x11.c gtkglext-1.2.0/gdk/x11/gdkglfont-x11.c
+--- gtkglext-1.2.0.orig/gdk/x11/gdkglfont-x11.c 2004-02-20 09:38:14.000000000 +0000
++++ gtkglext-1.2.0/gdk/x11/gdkglfont-x11.c 1970-01-01 00:00:00.000000000 +0000
+@@ -1,196 +0,0 @@
+-/* GdkGLExt - OpenGL Extension to GDK
+- * Copyright (C) 2002-2004 Naofumi Yasufuku
+- *
+- * This library is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU Lesser General Public
+- * License as published by the Free Software Foundation; either
+- * version 2.1 of the License, or (at your option) any later version.
+- *
+- * This library is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+- * Lesser General Public License for more details.
+- *
+- * You should have received a copy of the GNU Lesser General Public
+- * License along with this library; if not, write to the Free Software
+- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+- */
+-
+-#include <string.h>
+-
+-#include <pango/pangox.h>
+-
+-#include "gdkglx.h"
+-#include "gdkglprivate-x11.h"
+-#include "gdkglfont.h"
+-
+-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
+-#include <gdk/gdkdisplay.h>
+-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
+-
+-/*
+- * This code is ripped from gdk/x11/gdkfont-x11.c in GTK+.
+- */
+-static char *
+-gdk_gl_font_charset_for_locale (void)
+-{
+- static char *charset_map[][2] = {
+- { "ANSI_X3.4-1968", "iso8859-1" },
+- { "US-ASCII", "iso8859-1" },
+- { "ISO-8859-1", "iso8859-1" },
+- { "ISO-8859-2", "iso8859-2" },
+- { "ISO-8859-3", "iso8859-3" },
+- { "ISO-8859-4", "iso8859-4" },
+- { "ISO-8859-5", "iso8859-5" },
+- { "ISO-8859-6", "iso8859-6" },
+- { "ISO-8859-7", "iso8859-7" },
+- { "ISO-8859-8", "iso8859-8" },
+- { "ISO-8859-9", "iso8859-9" },
+- { "UTF-8", "iso8859-1" }
+- };
+-
+- const char *codeset;
+- char *result = NULL;
+- gsize i;
+-
+- g_get_charset (&codeset);
+-
+- for (i = 0; i < G_N_ELEMENTS (charset_map); i++)
+- if (strcmp (charset_map[i][0], codeset) == 0)
+- {
+- result = charset_map[i][1];
+- break;
+- }
+-
+- if (result != NULL)
+- return g_strdup (result);
+- else
+- return g_strdup ("iso8859-1");
+-}
+-
+-static PangoFont *
+-gdk_gl_font_use_pango_font_common (PangoFontMap *font_map,
+- const PangoFontDescription *font_desc,
+- int first,
+- int count,
+- int list_base)
+-{
+- PangoFont *font = NULL;
+- gchar *charset = NULL;
+- PangoXSubfont subfont_id;
+- gchar *xlfd = NULL;
+- PangoXFontCache *font_cache;
+- XFontStruct *fs;
+-
+- GDK_GL_NOTE_FUNC_PRIVATE ();
+-
+- font = pango_font_map_load_font (font_map, NULL, font_desc);
+- if (font == NULL)
+- {
+- g_warning ("cannot load PangoFont");
+- goto FAIL;
+- }
+-
+- charset = gdk_gl_font_charset_for_locale ();
+- if (!pango_x_find_first_subfont (font, &charset, 1, &subfont_id))
+- {
+- g_warning ("cannot find PangoXSubfont");
+- font = NULL;
+- goto FAIL;
+- }
+-
+- xlfd = pango_x_font_subfont_xlfd (font, subfont_id);
+- if (xlfd == NULL)
+- {
+- g_warning ("cannot get XLFD");
+- font = NULL;
+- goto FAIL;
+- }
+-
+- font_cache = pango_x_font_map_get_font_cache (font_map);
+-
+- fs = pango_x_font_cache_load (font_cache, xlfd);
+-
+- glXUseXFont (fs->fid, first, count, list_base);
+-
+- pango_x_font_cache_unload (font_cache, fs);
+-
+- FAIL:
+-
+- if (charset != NULL)
+- g_free (charset);
+-
+- if (xlfd != NULL)
+- g_free (xlfd);
+-
+- return font;
+-}
+-
+-/**
+- * gdk_gl_font_use_pango_font:
+- * @font_desc: a #PangoFontDescription describing the font to use.
+- * @first: the index of the first glyph to be taken.
+- * @count: the number of glyphs to be taken.
+- * @list_base: the index of the first display list to be generated.
+- *
+- * Creates bitmap display lists from a #PangoFont.
+- *
+- * Return value: the #PangoFont used, or NULL if no font matched.
+- **/
+-PangoFont *
+-gdk_gl_font_use_pango_font (const PangoFontDescription *font_desc,
+- int first,
+- int count,
+- int list_base)
+-{
+- PangoFontMap *font_map;
+-
+- g_return_val_if_fail (font_desc != NULL, NULL);
+-
+- GDK_GL_NOTE_FUNC ();
+-
+-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
+- font_map = pango_x_font_map_for_display (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+-#else /* GDKGLEXT_MULTIHEAD_SUPPORT */
+- font_map = pango_x_font_map_for_display (gdk_x11_get_default_xdisplay ());
+-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
+-
+- return gdk_gl_font_use_pango_font_common (font_map, font_desc,
+- first, count, list_base);
+-}
+-
+-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
+-
+-/**
+- * gdk_gl_font_use_pango_font_for_display:
+- * @display: a #GdkDisplay.
+- * @font_desc: a #PangoFontDescription describing the font to use.
+- * @first: the index of the first glyph to be taken.
+- * @count: the number of glyphs to be taken.
+- * @list_base: the index of the first display list to be generated.
+- *
+- * Creates bitmap display lists from a #PangoFont.
+- *
+- * Return value: the #PangoFont used, or NULL if no font matched.
+- **/
+-PangoFont *
+-gdk_gl_font_use_pango_font_for_display (GdkDisplay *display,
+- const PangoFontDescription *font_desc,
+- int first,
+- int count,
+- int list_base)
+-{
+- PangoFontMap *font_map;
+-
+- g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL);
+- g_return_val_if_fail (font_desc != NULL, NULL);
+-
+- GDK_GL_NOTE_FUNC ();
+-
+- font_map = pango_x_font_map_for_display (GDK_DISPLAY_XDISPLAY (display));
+-
+- return gdk_gl_font_use_pango_font_common (font_map, font_desc,
+- first, count, list_base);
+-}
+-
+-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
+diff -ruN gtkglext-1.2.0.orig/gdk/x11/Makefile.am gtkglext-1.2.0/gdk/x11/Makefile.am
+--- gtkglext-1.2.0.orig/gdk/x11/Makefile.am 2003-05-07 18:18:42.000000000 +0000
++++ gtkglext-1.2.0/gdk/x11/Makefile.am 2020-04-28 12:37:19.780896258 +0000
+@@ -38,7 +38,6 @@
+ gdkgldrawable-x11.c \
+ gdkglpixmap-x11.c \
+ gdkglwindow-x11.c \
+- gdkglfont-x11.c \
+ gdkglglxext.c
+
+ gdkglext_x11_headers = \
More information about the arch-commits
mailing list