pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: [HEADS UP] Package removal -- please check
On Sat, Feb 19, 2011 at 11:23:51AM +0900, OBATA Akio wrote:
> It seems that openSUSE and Debian are using imlib2 patch.
Thanks for the pointer.
Could the magicpoint users please try the attached patch?
Thomas
? magicpoint-imlib2.patch
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/magicpoint/Makefile,v
retrieving revision 1.69
diff -u -r1.69 Makefile
--- Makefile 19 Feb 2011 10:03:18 -0000 1.69
+++ Makefile 19 Feb 2011 10:17:41 -0000
@@ -1,13 +1,14 @@
# $NetBSD: Makefile,v 1.69 2011/02/19 10:03:18 markd Exp $
DISTNAME= magicpoint-1.13a
-PKGREVISION= 5
+PKGREVISION= 6
CATEGORIES= x11 graphics
MASTER_SITES= ftp://sh.wide.ad.jp/WIDE/free-ware/mgp/
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
HOMEPAGE= http://member.wide.ad.jp/wg/mgp/
COMMENT= X11 based presentation tool
+LICENSE= modified-bsd
PKG_DESTDIR_SUPPORT= user-destdir
@@ -79,4 +80,3 @@
.include "../../x11/libXext/buildlink3.mk"
.include "../../x11/libXmu/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
-# DO NOT DELETE
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/magicpoint/distinfo,v
retrieving revision 1.17
diff -u -r1.17 distinfo
--- distinfo 15 Dec 2010 19:08:21 -0000 1.17
+++ distinfo 19 Feb 2011 10:17:41 -0000
@@ -3,11 +3,11 @@
SHA1 (magicpoint-1.13a.tar.gz) = 2bc662ad0a482d42578766258a143b06a4718ae3
RMD160 (magicpoint-1.13a.tar.gz) = 067d7dee3b90ec354975d9ad4ea0c0df48cca191
Size (magicpoint-1.13a.tar.gz) = 890670 bytes
-SHA1 (patch-aa) = 7270255c2002c66d10ab911ed22ce67067183e17
-SHA1 (patch-ab) = eb6558d6981e5d5f41f55dddc1b3debc9ca27d36
+SHA1 (patch-aa) = 59bc5a8bce25ac27a77ae8d03dd42f354d1d1bff
+SHA1 (patch-ab) = 6622ca95dfcf059d9464f8cc959d23c9c787d8b6
SHA1 (patch-ac) = b886607033a89e3ab46c41a2a5a8368b473682f4
SHA1 (patch-ad) = 33c8fa61cb03cb53ad8783d2d79fa457cb21d235
-SHA1 (patch-ae) = ca59b94955f2de6f19ea1e2210ede7eaeba50a95
+SHA1 (patch-ae) = 49aab80a13d7daf99671c69cf62f432c03054dad
SHA1 (patch-af) = 615e845dfbeba9b35c5a138841962631dac3b4bb
SHA1 (patch-ag) = 96d7cac9157b9183dd2ba76b12f0927fc15dd5a6
SHA1 (patch-ai) = 809b2cf509bab0ee1bed1fecb2cf2d8df912ce8b
@@ -29,3 +29,5 @@
SHA1 (patch-az) = 893ec7e21199205c07933d5525a6eb394114fd11
SHA1 (patch-ba) = 938e5714ddfcb8ca64d1cc6f756eeb69e592905d
SHA1 (patch-bb) = 3a6c328adcb49aef0d4792ceff08407fcbc80c16
+SHA1 (patch-image_imlib__loader.c) = 99aa122d4d4f474c448fa2767bee3496ca97110a
+SHA1 (patch-image_xloadimage.h) = 05a1caeedca9c33beecffb8f078270d88fc7184c
Index: options.mk
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/magicpoint/options.mk,v
retrieving revision 1.1
diff -u -r1.1 options.mk
--- options.mk 10 Sep 2008 13:32:47 -0000 1.1
+++ options.mk 19 Feb 2011 10:17:41 -0000
@@ -37,7 +37,7 @@
CONFIGURE_ARGS+= --disable-xft2
.endif
-.include "../../graphics/imlib/buildlink3.mk"
+.include "../../graphics/imlib2/buildlink3.mk"
#
Index: patches/patch-aa
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/magicpoint/patches/patch-aa,v
retrieving revision 1.11
diff -u -r1.11 patch-aa
--- patches/patch-aa 10 Sep 2008 13:32:47 -0000 1.11
+++ patches/patch-aa 19 Feb 2011 10:17:41 -0000
@@ -1,7 +1,16 @@
$NetBSD: patch-aa,v 1.11 2008/09/10 13:32:47 taca Exp $
---- configure.orig 2007-12-29 05:31:26.000000000 +0900
+--- configure.orig 2007-12-28 20:31:26.000000000 +0000
+++ configure
+@@ -1285,7 +1285,7 @@ Optional Features:
+ --enable-freetype-charset16 use freetype for chaset16.
+ --disable-xft2 DON'T use xft2 libraries.
+ --enable-gif compile gif support in (need libungif).
+- --enable-imlib use imlib exclusively to load images.
++ --enable-imlib use imlib2 exclusively to load images.
+
+ Optional Packages:
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -5090,7 +5090,7 @@ if test "$mgp_use_freetype" = "yes"; the
# XXX: freetype2 may use freetype-config
{ echo "$as_me:$LINENO: checking for freetype1 library/header" >&5
@@ -118,9 +127,9 @@
- LIBS="$LIBS `pkg-config --libs imlib`"
- OPTFLAGS="$OPTFLAGS `pkg-config --cflags imlib`"
- cat >>confdefs.h <<\_ACEOF
-+ if type pkg-config > /dev/null 2>&1 && pkg-config imlib; then
-+ LIBS="$LIBS `pkg-config --libs imlib`"
-+ OPTFLAGS="$OPTFLAGS `pkg-config --cflags imlib`"
++ if type pkg-config > /dev/null 2>&1 && pkg-config imlib2; then
++ LIBS="$LIBS `pkg-config --libs imlib2`"
++ OPTFLAGS="$OPTFLAGS `pkg-config --cflags imlib2`"
+ cat >>confdefs.h <<\_ACEOF
#define USE_IMLIB 1
_ACEOF
@@ -130,12 +139,71 @@
else
{ echo "$as_me:$LINENO: checking for Imlib_init in -lImlib" >&5
echo $ECHO_N "checking for Imlib_init in -lImlib... $ECHO_C" >&6; }
-@@ -7232,7 +7216,7 @@ fi
+@@ -7163,7 +7147,7 @@ if test "${ac_cv_lib_Imlib_Imlib_init+se
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+ ac_check_lib_save_LIBS=$LIBS
+-LIBS="-lImlib -L$x_libraries -lX11 -lXext $LIBS"
++LIBS="-lImlib2 -L$x_libraries -lX11 -lXext $LIBS"
+ cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h. */
+ _ACEOF
+@@ -7177,11 +7161,11 @@ cat >>conftest.$ac_ext <<_ACEOF
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+-char Imlib_init ();
++char imlib_load_image ();
+ int
+ main ()
+ {
+-return Imlib_init ();
++return imlib_load_image ();
+ ;
+ return 0;
+ }
+@@ -7220,7 +7204,7 @@ fi
+ echo "${ECHO_T}$ac_cv_lib_Imlib_Imlib_init" >&6; }
+ if test $ac_cv_lib_Imlib_Imlib_init = yes; then
+ imlib_ok=yes
+- LIBS="$LIBS -lImlib"
++ LIBS="$LIBS -lImlib2"
+ cat >>confdefs.h <<\_ACEOF
+ #define USE_IMLIB 1
+ _ACEOF
+@@ -7232,14 +7216,14 @@ fi
echo 'FATAL: You need libImlib to use Imlib loading. pass
proper LIBS to configure.'
exit 1
fi
- for i in /usr/pkg /usr/local; do
+- if test -f $i/include/Imlib.h; then
+ for i in ${BUILDLINK_DIR}; do
- if test -f $i/include/Imlib.h; then
++ if test -f $i/include/Imlib2.h; then
imlib_h_ok=yes
OPTFLAGS="$OPTFLAGS -I$i/include"
+ break
+ fi
+ done
+- if test -f /usr/include/Imlib.h; then
++ if test -f /usr/include/Imlib2.h; then
+ imlib_h_ok=yes
+ fi
+ if test "x$gif_h_ok" != "xyes"; then
+@@ -7262,7 +7246,7 @@ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+ $ac_includes_default
+-#include <Imlib.h>
++#include <Imlib2.h>
+ _ACEOF
+ rm -f conftest.$ac_objext
+ if { (ac_try="$ac_compile"
+@@ -7302,7 +7286,7 @@ _ACEOF
+ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+-#include <Imlib.h>
++#include <Imlib2.h>
+ _ACEOF
+ if { (ac_try="$ac_cpp conftest.$ac_ext"
+ case "(($ac_try" in
Index: patches/patch-ab
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/magicpoint/patches/patch-ab,v
retrieving revision 1.4
diff -u -r1.4 patch-ab
--- patches/patch-ab 10 Sep 2008 13:32:47 -0000 1.4
+++ patches/patch-ab 19 Feb 2011 10:17:41 -0000
@@ -1,6 +1,6 @@
$NetBSD: patch-ab,v 1.4 2008/09/10 13:32:47 taca Exp $
---- mgp.h.orig 2008-01-19 02:43:20.000000000 +0900
+--- mgp.h.orig 2008-01-18 17:43:20.000000000 +0000
+++ mgp.h
@@ -64,7 +64,9 @@
#ifdef USE_XFT2
@@ -26,6 +26,15 @@
u_int ct_page;
struct ctrl *ct_next;
union {
+@@ -507,7 +515,7 @@ struct render_object {
+ float xzoom, yzoom;
+ #ifdef USE_IMLIB
+ int zoomonclk;
+- ImlibImage *imimage;
++ Imlib_Image *imimage;
+ #endif
+ } image;
+ struct {
@@ -745,6 +753,11 @@ extern int get_regid __P((char *));
extern void draw_line_itemsize __P((struct render_state *, int, int, int));
extern void draw_line_start __P((struct render_state *));
Index: patches/patch-ae
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/magicpoint/patches/patch-ae,v
retrieving revision 1.3
diff -u -r1.3 patch-ae
--- patches/patch-ae 10 Sep 2008 13:32:47 -0000 1.3
+++ patches/patch-ae 19 Feb 2011 10:17:41 -0000
@@ -1,7 +1,54 @@
$NetBSD: patch-ae,v 1.3 2008/09/10 13:32:47 taca Exp $
---- draw.c.orig 2008-01-25 00:43:17.000000000 +0900
+--- draw.c.orig 2008-01-24 15:43:17.000000000 +0000
+++ draw.c
+@@ -31,7 +31,7 @@
+
+ #include "mgp.h"
+ #ifdef USE_IMLIB
+-#include <Imlib.h>
++#include <Imlib2.h>
+ #endif
+
+ /* state associated with the window - how should we treat this? */
+@@ -83,8 +83,8 @@ static int obj_new_xfont __P((struct ren
+ u_int, char *));
+ static int obj_new_image __P((struct render_state *, int, int, Image *, int,
int));
+ #ifdef USE_IMLIB
+-ImlibImage *search_imdata __P((char *));
+-static int obj_new_image2 __P((struct render_state *, int, int, Image *, int,
int, ImlibImage *, int));
++Imlib_Image *search_imdata __P((char *));
++static int obj_new_image2 __P((struct render_state *, int, int, Image *, int,
int, Imlib_Image *, int));
+ #endif
+ static int obj_new_icon __P((struct render_state *, int, int, u_int, u_int,
u_long, u_int, XPoint *));
+ static Pixel obj_image_color __P((Image *, Image *, Pixel, int *));
+@@ -168,7 +168,7 @@ static void regist_zimage_position __P((
+ static void clear_zimage __P((int));
+ static void clear_region __P((int, int, int, int));
+ #define ZIMAGENUM 100
+-static ImlibImage *zimage[ZIMAGENUM];
++static Imlib_Image *zimage[ZIMAGENUM];
+ static int zonzoom[ZIMAGENUM];
+ static int zpage[ZIMAGENUM];
+ static int zx[ZIMAGENUM];
+@@ -1819,7 +1819,7 @@ obj_new_image2(state, x, y, image, xzoom
+ int x, y;
+ Image *image;
+ int xzoom, yzoom;
+- ImlibImage *imimage;
++ Imlib_Image *imimage;
+ int zoomonclk;
+ {
+ struct render_object *obj;
+@@ -3212,7 +3212,7 @@ image_load(state, filename, numcolor, xi
+ static char backfile[MAXPATHLEN];
+ static int backzoom, backnumcolor, backx, backy;
+ #ifdef USE_IMLIB
+- ImlibImage *imimage;
++ Imlib_Image *imimage;
+ #endif
+
+ if (!caching){
@@ -5243,7 +5243,7 @@ xft_draw_fragment(state, p, len, registr
static char prefix[3][20] = { "\033$B", "\033$A", "\033$(C"};
char buf16[1024], *p16;
Index: patches/patch-image_imlib__loader.c
===================================================================
RCS file: patches/patch-image_imlib__loader.c
diff -N patches/patch-image_imlib__loader.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-image_imlib__loader.c 19 Feb 2011 10:17:41 -0000
@@ -0,0 +1,182 @@
+$NetBSD$
+
+imlib2 patch from suse.
+
+--- image/imlib_loader.c.orig 2008-01-16 14:52:14.000000000 +0000
++++ image/imlib_loader.c
+@@ -6,13 +6,14 @@
+ #include <X11/Xlib.h>
+ #include <X11/Xutil.h>
+ #include <X11/extensions/shape.h>
+-#include <Imlib.h>
++#include <Imlib2.h>
+
+ #define IMFILENUM 500
+ static char imfile[IMFILENUM][1024];
+-static ImlibImage *imdata[IMFILENUM];
++static Imlib_Image *imdata[IMFILENUM];
++static Image *imagedata[IMFILENUM];
+ static int imnum;
+-static ImlibData *id;
++static Imlib_Context *id;
+
+ int imIdent(char *fullname, char *name)
+ {
+@@ -22,32 +23,71 @@ int imIdent(char *fullname, char *name)
+ Image *imLoad(char *fullname, char *name, unsigned int verbose)
+ {
+ static Display *disp = NULL;
+- Image *image;
+- ImlibImage *im;
+- ImlibColor shape;
+- unsigned int w,h, size;
+- ImlibImage *search_imdata();
++ Image *image = NULL;
++ Imlib_Image *im;
++ unsigned int w,h, size, i;
++ DATA32 * argb_data;
++ byte * rgb_ptr;
++ Imlib_Image *search_imdata();
+ void regist_imdata();
+
+ if (disp == NULL) {
+ disp=XOpenDisplay(NULL);
+ }
+- if (id == NULL) id=Imlib_init(disp);
+- if ((im = search_imdata(fullname)) == NULL) {
+- im = Imlib_load_image(id, fullname);
++ /* if (id == NULL) id=Imlib_init(disp); */
++ /* might needs more work */
++ if (id == NULL) {
++ /* dither for non-truecolor displays */
++ imlib_context_set_dither(1);
++ imlib_context_set_display(disp);
++ imlib_context_set_visual(DefaultVisual(disp,
DefaultScreen(disp)));
++ imlib_context_set_colormap(DefaultColormap(disp,
DefaultScreen(disp)));
++ }
++ if ((im = search_imdata(fullname), image) == NULL) {
++ /* im = Imlib_load_image(id, fullname); */
++ im = imlib_load_image(fullname);
+ }
+ if (im == NULL) {
+ return NULL;
+ }
+- w = im->rgb_width;
+- h = im->rgb_height;
+- size = w * h * 3;
+-
+- image = newTrueImage(w, h);
+- memcpy(image->data, im->rgb_data, size);
+-
+- Imlib_get_image_shape(id, im, &shape);
+-
++ imlib_context_set_image(im);
++ w = imlib_image_get_width();
++ h = imlib_image_get_height();
++ size = w * h;
++
++ if (image == NULL) image = newTrueImage(w, h);
++
++ /* Imlib2 stores images in ARGB format (32 bpp). MagicPoint
++ * wants RGB data (24 bpp). So we need a conversion pass. */
++ argb_data = imlib_image_get_data_for_reading_only();
++ rgb_ptr = image->data;
++ for (i = 0; i < size; ++i)
++ {
++ if ((argb_data[i] >> 24) < 128)
++ {
++ /* If this is a transparent pixel, we store #FE00FE. */
++ *rgb_ptr++ = 0xFE;
++ *rgb_ptr++ = 0x00;
++ *rgb_ptr++ = 0xFE;
++ /* Tell mgp we have transparent pixels. */
++ image->trans = 0xFE00FE;
++ }
++ else if ((argb_data[i] & 0x00FFFFFF) == 0x00FE00FE)
++ {
++ /* If that color is actually used, we substitute something
close. */
++ *rgb_ptr++ = 0xFF;
++ *rgb_ptr++ = 0x00;
++ *rgb_ptr++ = 0xFE;
++ }
++ else
++ {
++ /* Otherwise, we can copy the pixel. */
++ *rgb_ptr++ = (argb_data[i] >> 16) & 0xFF; /* red */
++ *rgb_ptr++ = (argb_data[i] >> 8) & 0xFF; /* green */
++ *rgb_ptr++ = argb_data[i] & 0xFF; /* blue */
++ }
++ }
++#if 0
+ /*
+ * bug fix for transparent gif handling
+ * suggested by Jose Geraldo Alves Brito Neto
<jgabrito%iq.usp.br@localhost>
+@@ -57,44 +97,52 @@ Image *imLoad(char *fullname, char *name
+ ((shape.r & 0xff) << 16) |
+ ((shape.g & 0xff) << 8) |
+ ((shape.b & 0xff) << 0);
++#endif
+
+ image->title = dupString(name);
+ #if 0
+ Imlib_kill_image(id, im);
+ #else
+- regist_imdata(name, im);
++ regist_imdata(name, im, image);
+ #endif
+
+ return image;
+ }
+
+-ImlibImage *search_imdata(char *fullname)
++Imlib_Image *search_imdata(char *fullname, Image *image)
+ {
+ int i;
+ for (i = 0; i < imnum; i ++){
+ if (!strcmp(imfile[i], fullname)) {
++ image = imagedata[i];
+ return imdata[i];
+ }
+ }
+ return NULL;
+ }
+
+-void regist_imdata(fullname, im)
++void regist_imdata(fullname, im, image)
+ char *fullname;
+- ImlibImage *im;
++ Imlib_Image *im;
++ Image *image;
+ {
+ strcpy(imfile[imnum], fullname);
+ imdata[imnum] = im;
++ imagedata[imnum] = image;
+ imnum ++;
+ }
+
+ Pixmap pixmap_fromimimage(imimage, width, height)
+- ImlibImage *imimage;
++ Imlib_Image *imimage;
+ int width, height;
+ {
+ static Pixmap pixmap;
++#if 0
+ Imlib_render(id, imimage, width, height);
+ pixmap = Imlib_move_image(id, imimage);
++#else
++ imlib_render_pixmaps_for_whole_image_at_size(&pixmap, NULL, width,
height);
++#endif
+
+ return pixmap;
+ }
+@@ -125,8 +173,8 @@ manage_pixmap(pixmap, add, page)
+ ppage[i] = page;
+ } else {
+ for (i = 0; i < MAXPMAP; i ++) {
+- if (ppage[i] == page){
+- Imlib_free_pixmap(id, pmap[i]);
++ if (ppage[i] == page && pmap[i] != 0){
++ imlib_free_pixmap_and_mask(pmap[i]);
+ pmap[i] = 0;
+ }
+ }
Index: patches/patch-image_xloadimage.h
===================================================================
RCS file: patches/patch-image_xloadimage.h
diff -N patches/patch-image_xloadimage.h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-image_xloadimage.h 19 Feb 2011 10:17:41 -0000
@@ -0,0 +1,15 @@
+$NetBSD$
+
+imlib2 patch from suse.
+
+--- image/xloadimage.h.orig 2007-12-28 20:31:26.000000000 +0000
++++ image/xloadimage.h
+@@ -16,7 +16,7 @@
+ #include "options.h"
+
+ #ifdef USE_IMLIB
+-#include <Imlib.h>
++#include <Imlib2.h>
+ #endif
+
+ /* image name and option structure used when processing arguments
Home |
Main Index |
Thread Index |
Old Index