From 7e6f9eaf3fa578ac30d5bcf73d80add8a8f26df2a6250b18ad9d310507c1f277 Mon Sep 17 00:00:00 2001 From: OBS User autobuild Date: Wed, 26 Aug 2009 13:09:14 +0000 Subject: [PATCH] Accepting request 18840 from graphics Copy from graphics/gegl based on submit request 18840 from user sbrabec OBS-URL: https://build.opensuse.org/request/show/18840 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gegl?expand=0&rev=7 --- gegl-0.0.22.tar.bz2 | 3 - gegl-0.1.0.tar.bz2 | 3 + gegl-babl_api_change.patch | 352 ------------------------------------- gegl.changes | 36 ++++ gegl.spec | 68 ++----- 5 files changed, 51 insertions(+), 411 deletions(-) delete mode 100644 gegl-0.0.22.tar.bz2 create mode 100644 gegl-0.1.0.tar.bz2 delete mode 100644 gegl-babl_api_change.patch diff --git a/gegl-0.0.22.tar.bz2 b/gegl-0.0.22.tar.bz2 deleted file mode 100644 index 94e4437..0000000 --- a/gegl-0.0.22.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:857233c84fe4a215466582eeeac3e719059f2d467f700a9f6885c35f55caa65b -size 1255087 diff --git a/gegl-0.1.0.tar.bz2 b/gegl-0.1.0.tar.bz2 new file mode 100644 index 0000000..c73a1b4 --- /dev/null +++ b/gegl-0.1.0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:430a79400041209d8bc42576c4d9f0c0a6e7564fdfe95ccd83f33ab7eaf238d5 +size 1342198 diff --git a/gegl-babl_api_change.patch b/gegl-babl_api_change.patch deleted file mode 100644 index 110cd30..0000000 --- a/gegl-babl_api_change.patch +++ /dev/null @@ -1,352 +0,0 @@ ---- gegl/buffer/gegl-buffer-access.c -+++ gegl/buffer/gegl-buffer-access.c -@@ -46,16 +46,6 @@ - GStaticRecMutex mutex = G_STATIC_REC_MUTEX_INIT; - #endif - --#ifdef BABL --#undef BABL --#endif -- --#define BABL(o) ((Babl *) (o)) -- --#ifdef FMTPXS --#undef FMTPXS --#endif --#define FMTPXS(fmt) (BABL (fmt)->format.bytes_per_pixel) - - #if 0 - static inline void -@@ -68,7 +58,7 @@ pset (GeglBuffer *buffer, - gint tile_width = buffer->tile_storage->tile_width; - gint tile_height = buffer->tile_storage->tile_width; - gint px_size = gegl_buffer_px_size (buffer); -- gint bpx_size = FMTPXS (format); -+ gint bpx_size = babl_format_get_bytes_per_pixel (format); - Babl *fish = NULL; - - gint abyss_x_total = buffer->abyss.x + buffer->abyss.width; -@@ -134,7 +124,7 @@ pset (GeglBuffer *buffer, - guchar *buf = data; - gint tile_width = buffer->tile_storage->tile_width; - gint tile_height = buffer->tile_storage->tile_height; -- gint bpx_size = FMTPXS (format); -+ gint bpx_size = babl_format_get_bytes_per_pixel (format); - Babl *fish = NULL; - - gint buffer_shift_x = buffer->shift_x; -@@ -143,7 +133,7 @@ pset (GeglBuffer *buffer, - gint buffer_abyss_y = buffer->abyss.y + buffer_shift_y; - gint abyss_x_total = buffer_abyss_x + buffer->abyss.width; - gint abyss_y_total = buffer_abyss_y + buffer->abyss.height; -- gint px_size = FMTPXS (buffer->format); -+ gint px_size = babl_format_get_bytes_per_pixel (buffer->format); - - if (format != buffer->format) - { -@@ -218,7 +208,7 @@ pget (GeglBuffer *buffer, - guchar *buf = data; - gint tile_width = buffer->tile_storage->tile_width; - gint tile_height = buffer->tile_storage->tile_height; -- gint bpx_size = FMTPXS (format); -+ gint bpx_size = babl_format_get_bytes_per_pixel (format); - Babl *fish = NULL; - - gint buffer_shift_x = buffer->shift_x; -@@ -227,7 +217,7 @@ pget (GeglBuffer *buffer, - gint buffer_abyss_y = buffer->abyss.y + buffer_shift_y; - gint abyss_x_total = buffer_abyss_x + buffer->abyss.width; - gint abyss_y_total = buffer_abyss_y + buffer->abyss.height; -- gint px_size = FMTPXS (buffer->format); -+ gint px_size = babl_format_get_bytes_per_pixel (buffer->format); - - if (format != buffer->format) - { -@@ -330,8 +320,8 @@ gegl_buffer_iterate (GeglBuffer *buffer, - - gint tile_width = buffer->tile_storage->tile_width; - gint tile_height = buffer->tile_storage->tile_height; -- gint px_size = FMTPXS (buffer->format); -- gint bpx_size = FMTPXS (format); -+ gint px_size = babl_format_get_bytes_per_pixel (buffer->format); -+ gint bpx_size = babl_format_get_bytes_per_pixel (format); - gint tile_stride = px_size * tile_width; - gint buf_stride; - gint bufy = 0; -@@ -994,7 +984,7 @@ gegl_buffer_get (GeglBuffer *buffer, - gint level = 0; - gint buf_width = rect->width / scale; - gint buf_height = rect->height / scale; -- gint bpp = BABL (format)->format.bytes_per_pixel; -+ gint bpp = babl_format_get_bytes_per_pixel (format); - GeglRectangle sample_rect = { floor(rect->x/scale), - floor(rect->y/scale), - buf_width, -@@ -1030,7 +1020,7 @@ gegl_buffer_get (GeglBuffer *buffer, - * no time to make a fast implementation - */ - -- if (BABL (format)->format.type[0] == (BablType *) babl_type ("u8") -+ if (babl_format_get_type (format, 0) == babl_type ("u8") - && !(level == 0 && scale > 1.99)) - { /* do box-filter resampling if we're 8bit (which projections are) */ - -@@ -1201,7 +1191,7 @@ gegl_buffer_clear (GeglBuffer *dst, - dst_rect->height == 0) - return; - -- pxsize = dst->format->format.bytes_per_pixel; -+ pxsize = babl_format_get_bytes_per_pixel (dst->format); - - /* FIXME: this can be even further optimized by special casing it so - * that fully voided tiles are dropped. ---- gegl/buffer/gegl-buffer-iterator.c -+++ gegl/buffer/gegl-buffer-iterator.c -@@ -191,7 +191,7 @@ gulp: - i->data = gegl_tile_get_data (i->tile); - - { -- gint bpp = i->buffer->format->format.bytes_per_pixel; -+ gint bpp = babl_format_get_bytes_per_pixel (i->buffer->format); - i->rowstride = bpp * tile_width; - i->sub_data = (guchar*)(i->data) + bpp * (i->subrect.y * tile_width + i->subrect.x); - } -@@ -356,7 +356,7 @@ static void ensure_buf (GeglBufferIterators *i, gint no) - * would probably improve performance - */ - if (i->buf[no]==NULL) -- i->buf[no] = iterator_buf_pool_get (i->format[no]->format.bytes_per_pixel * -+ i->buf[no] = iterator_buf_pool_get (babl_format_get_bytes_per_pixel (i->format[no]) * - i->i[0].max_size); - } - ---- gegl/buffer/gegl-buffer-linear.c -+++ gegl/buffer/gegl-buffer-linear.c -@@ -77,7 +77,7 @@ gegl_buffer_linear_new_from_data (const gpointer data, - */ - rowstride = extent->width; - else -- rowstride = rowstride / format->format.bytes_per_pixel; -+ rowstride = rowstride / babl_format_get_bytes_per_pixel (format); - buffer = gegl_buffer_linear_new2 (extent, format, rowstride); - - { -@@ -90,7 +90,7 @@ gegl_buffer_linear_new_from_data (const gpointer data, - tile->y = 0; - tile->z = 0; - tile->data = (gpointer)data; -- tile->size = format->format.bytes_per_pixel * rowstride * extent->height; -+ tile->size = babl_format_get_bytes_per_pixel (format) * rowstride * extent->height; - tile->next_shared = tile; - tile->prev_shared = tile; - -@@ -155,7 +155,7 @@ gegl_buffer_linear_open (GeglBuffer *buffer, - - g_object_set_data (G_OBJECT (buffer), "linear-tile", tile); - -- if(rowstride)*rowstride = buffer->tile_storage->tile_width * format->format.bytes_per_pixel; -+ if(rowstride)*rowstride = buffer->tile_storage->tile_width * babl_format_get_bytes_per_pixel (format); - return (gpointer)gegl_tile_get_data (tile); - } - /* first check if there is a linear buffer, share the existing buffer if one -@@ -194,7 +194,7 @@ gegl_buffer_linear_open (GeglBuffer *buffer, - info->extent = buffer->extent; - info->format = format; - -- rs = info->extent.width * format->format.bytes_per_pixel; -+ rs = info->extent.width * babl_format_get_bytes_per_pixel (format); - if(rowstride)*rowstride = rs; - - info->buf = gegl_malloc (rs * info->extent.height); ---- gegl/buffer/gegl-buffer-load.c -+++ gegl/buffer/gegl-buffer-load.c -@@ -372,7 +372,7 @@ gegl_buffer_load (const gchar *path) - - /* sanity check, should probably report error condition and return safely instead - */ -- g_assert (info->format->format.bytes_per_pixel == info->header.bytes_per_pixel); -+ g_assert (babl_format_get_bytes_per_pixel (info->format) == info->header.bytes_per_pixel); - - info->tiles = gegl_buffer_read_index (info->i, &info->offset); - ---- gegl/buffer/gegl-buffer-save.c -+++ gegl/buffer/gegl-buffer-save.c -@@ -204,7 +204,7 @@ gegl_buffer_header_init (GeglBufferHeader *header, - { - gchar buf[64]; - g_snprintf (buf, 64, "%s%c\n%i×%i %ibpp\n%ix%i\n\n\n\n\n\n\n\n\n", -- format->instance.name, 0, -+ babl_get_name (format), 0, - header->tile_width, - header->tile_height, - header->bytes_per_pixel, ---- gegl/buffer/gegl-sampler.c -+++ gegl/buffer/gegl-sampler.c -@@ -215,7 +215,7 @@ gegl_sampler_get_ptr (GeglSampler *sampler, - gint bpp; - gint sof; - -- bpp = sampler->interpolate_format->format.bytes_per_pixel; -+ bpp = babl_format_get_bytes_per_pixel (sampler->interpolate_format); - - if (sampler->sampler_buffer == NULL - || -@@ -284,7 +284,7 @@ gegl_sampler_get_from_buffer (GeglSampler *sampler, - gint bpp; - gint sof; - -- bpp = sampler->interpolate_format->format.bytes_per_pixel; -+ bpp = babl_format_get_bytes_per_pixel (sampler->interpolate_format); - - if (sampler->sampler_buffer == NULL - || ---- gegl/buffer/gegl-tile-backend-file.c -+++ gegl/buffer/gegl-tile-backend-file.c -@@ -917,7 +917,7 @@ gegl_tile_backend_file_constructor (GType type, - backend->tile_width = self->header.tile_width; - backend->tile_height = self->header.tile_height; - backend->format = babl_format (self->header.description); -- backend->px_size = backend->format->format.bytes_per_pixel; -+ backend->px_size = babl_format_get_bytes_per_pixel (backend->format); - backend->tile_size = backend->tile_width * backend->tile_height * backend->px_size; - - /* insert each of the entries into the hash table */ ---- gegl/buffer/gegl-tile-backend.c -+++ gegl/buffer/gegl-tile-backend.c -@@ -114,7 +114,7 @@ constructor (GType type, - g_assert (backend->tile_width > 0 && backend->tile_height > 0); - g_assert (backend->format); - -- backend->px_size = backend->format->format.bytes_per_pixel; -+ backend->px_size = babl_format_get_bytes_per_pixel (backend->format); - backend->tile_size = backend->tile_width * backend->tile_height * backend->px_size; - - return object; ---- gegl/buffer/gegl-tile-handler-zoom.c -+++ gegl/buffer/gegl-tile-handler-zoom.c -@@ -50,7 +50,7 @@ static inline void set_blank (GeglTile *dst_tile, - gint j) - { - guchar *dst_data = gegl_tile_get_data (dst_tile); -- gint bpp = format->format.bytes_per_pixel; -+ gint bpp = babl_format_get_bytes_per_pixel (format); - gint rowstride = width * bpp; - gint scanline; - -@@ -76,7 +76,7 @@ static inline void set_half_nearest (GeglTile *dst_tile, - { - guchar *dst_data = gegl_tile_get_data (dst_tile); - guchar *src_data = gegl_tile_get_data (src_tile); -- gint bpp = format->format.bytes_per_pixel; -+ gint bpp = babl_format_get_bytes_per_pixel (format); - gint x, y; - - for (y = 0; y < height / 2; y++) -@@ -177,17 +177,17 @@ static void inline set_half (GeglTile * dst_tile, - { - guchar *dst_data = gegl_tile_get_data (dst_tile); - guchar *src_data = gegl_tile_get_data (src_tile); -- gint components = format->format.components; -- gint bpp = format->format.bytes_per_pixel; -+ gint components = babl_format_get_n_components (format); -+ gint bpp = babl_format_get_bytes_per_pixel (format); - - if (i) dst_data += bpp * width / 2; - if (j) dst_data += bpp * width * height / 2; - -- if (format->format.type[0] == (BablType *) babl_type ("float")) -+ if (babl_format_get_type (format, 0) == babl_type ("float")) - { - downscale_float (components, width, height, width * bpp, src_data, dst_data); - } -- else if (format->format.type[0] == (BablType *) babl_type ("u8")) -+ else if (babl_format_get_type (format, 0) == babl_type ("u8")) - { - downscale_u8 (components, width, height, width * bpp, src_data, dst_data); - } ---- operations/core/convert-format.c -+++ operations/core/convert-format.c -@@ -56,7 +56,7 @@ process (GeglOperation *op, - glong samples, - const GeglRectangle *roi) - { -- int bpp = gegl_operation_get_format(op, "output")->format.bytes_per_pixel; -+ int bpp = babl_format_get_bytes_per_pixel (gegl_operation_get_format (op, "output")); - memcpy(out_buf, in_buf, samples * bpp); - return TRUE; - } ---- operations/external/png-save.c -+++ operations/external/png-save.c -@@ -89,14 +89,11 @@ gegl_buffer_export_png (GeglBuffer *gegl_buffer, - - { - const Babl *babl; /*= gegl_buffer->format;*/ -- BablType **type; - - g_object_get (gegl_buffer, "format", &babl, NULL); -- type = babl->format.type; - -- for (i=0; iformat.components; i++) -- if ((*type)->bits > 8) -- bit_depth = 16; -+ if (babl_format_get_type (babl, 0) != babl_type ("u8")) -+ bit_depth = 16; - - if (bd == 16) - bit_depth = 16; ---- operations/external/save-pixbuf.c -+++ operations/external/save-pixbuf.c -@@ -17,6 +17,9 @@ - */ - - #include "config.h" -+ -+#include -+ - #include - - -@@ -44,21 +47,16 @@ process (GeglOperation *operation, - { - GdkPixbuf **pixbuf = o->pixbuf; - const Babl *babl; -- const BablFormat *format; -+ const Babl *format; - guchar *temp; - GeglRectangle *rect = gegl_operation_source_get_bounding_box (operation, "input"); - gchar *name; - gboolean has_alpha; - gint bps; -- guint i; - -- g_object_get (input, "format", &babl, NULL); -- format = (BablFormat*) babl; -+ g_object_get (input, "format", &format, NULL); - -- has_alpha = FALSE; -- for (i = 0; i < format->components; i++) { -- has_alpha = has_alpha || format->component[i]->alpha != 0; -- } -+ has_alpha = babl_format_has_alpha (format); - - /* pixbuf from data only support 8bit bps */ - bps = 8; ---- bin/export.c 2008-06-14 12:40:05.000000000 -0400 -+++ bin/export.c.new 2009-06-04 15:39:42.898669573 -0400 -@@ -308,12 +308,11 @@ - strcpy (format_string, "R'G'B'A "); - - { -- const Babl *babl = gegl_buffer->format; -- BablType **type = babl->format.type; -+ const Babl *babl; /* = gegl_buffer->format;*/ - -- for (i=0; iformat.components; i++) -- if ((*type)->bits > 8) -- bit_depth = 16; -+ g_object_get (gegl_buffer, "format", &babl, NULL); -+ if (babl_format_get_type (babl, 0) != babl_type ("u8")) -+ bit_depth = 16; - } - - if (bit_depth == 16) diff --git a/gegl.changes b/gegl.changes index a87810c..761cf14 100644 --- a/gegl.changes +++ b/gegl.changes @@ -1,3 +1,39 @@ +------------------------------------------------------------------- +Mon Jul 20 13:24:19 CEST 2009 - vuntz@novell.com + +- Update to version 0.1.0: + + Renamed gegl:load-buffer to gegl:buffer-source and + gegl:save-buffer to gegl:buffer-sink (but the old names still + work) + + Represent colors using doubles instead of floats (this change + is independent from internal processing) + + Removed the GTK+ UI parts of the gegl binary and turned gegl + into a pure command line tool (which can still visualize stuff + with help help the SDL based display operation) + + Consider {x=G_MININT/2, y=G_MININT/2, width=G_MAXINT, + height=G_MAXINT} as the only valid region wichin processing + may occur. Processing outside of this region is undefined + behaviour. + + Added support for storing allocation stack traces for + GeglBuffers so that debuging buffer leaks becomes much easier + + Made small changes and cleanups of the public API, e.g. + - Removed gegl_node_adapt_child() + - Made GeglConfig an explicit object + - Removed most of the ifdeffed stuff to mask away internal + structures + - Added gegl_rectangle_infinite_plane() and + gegl_rectangle_is_infinite_plane() + + Added new sampler GeglSamplerSharp + + Added format property go gegl:buffer-sink + + Cleaned up and made gegl:introspect work again + + Add a bunch of test cases using the automake test sytem (make + check) and also port buffer tests to automake + + General cleanups, bug fixes, increased robustness and improved + documentation +- Drop gegl-babl_api_change.patch: fixed upstream. +- Temporarly remove ruby BuildRequires as the build is broken when + it's there right now. + ------------------------------------------------------------------- Thu Jun 11 04:04:07 CEST 2009 - vuntz@novell.com diff --git a/gegl.spec b/gegl.spec index 4c29fde..57b95fb 100644 --- a/gegl.spec +++ b/gegl.spec @@ -1,5 +1,5 @@ # -# spec file for package gegl (Version 0.0.22) +# spec file for package gegl (Version 0.1.0) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -22,7 +22,9 @@ Name: gegl # Patched code is built by default. # Use rpmbuild -D 'BUILD_ORIG 1' to build original code. # Use rpmbuild -D 'BUILD_ORIG 1' -D 'BUILD_ORIG_ADDON 1' to build patched build plus original as addon. -BuildRequires: ImageMagick OpenEXR-devel SDL-devel asciidoc babl-devel enscript gcc-c++ graphviz gtk2-devel libjpeg-devel libpng-devel librsvg-devel libstdc++-devel lua-devel ruby +BuildRequires: ImageMagick OpenEXR-devel SDL-devel asciidoc babl-devel enscript gcc-c++ graphviz gtk2-devel libjpeg-devel libpng-devel librsvg-devel libstdc++-devel lua-devel +# FIXME: add back with next release after 0.1.0, when gobj2dot.rb will be there +# BuildRequires: ruby BuildRequires: glib2-devel >= 2.16.1 BuildRequires: libopenraw-devel >= 0.0.5 # Only for directory ownership: @@ -39,14 +41,12 @@ Obsoletes: %{name}-orig-addon Provides: patched_subset %endif Url: http://gegl.org/ -Version: 0.0.22 -Release: 2 -License: GPL v3 or later; LGPL v3 or later +Version: 0.1.0 +Release: 1 +License: GPL v3 or later ; LGPL v3 or later Group: System/Libraries Summary: Generic Graphics Library Source: ftp://ftp.gimp.org/pub/gegl/v0.0/%{name}-%{version}.tar.bz2 -# PATCH-FIX-UPSTREAM gegl-babl_api_change.patch vuntz@novell.com -- Taken from Fedora -Patch0: gegl-babl_api_change.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %define debug_package_requires libgegl-0_0-0 = %{version}-%{release} @@ -95,7 +95,7 @@ Authors: Jakub Steiner %package 0_0 -License: GPL v3 or later; LGPL v3 or later +License: GPL v3 or later ; LGPL v3 or later Summary: Generic Graphics Library Group: System/Libraries @@ -147,7 +147,7 @@ Authors: %if 0%{?BUILD_ORIG_ADDON} %package 0_0-orig-addon -License: GPL v3 or later; LGPL v3 or later +License: GPL v3 or later ; LGPL v3 or later Summary: Generic Graphics Library Group: System/Libraries Supplements: packageand(%{name}-0_0:%(cd %{_libdir} ; rpm -qf --queryformat=%%{NAME} `readlink %{_libdir}/libavcodec.so` )) @@ -200,7 +200,7 @@ Authors: %endif %package -n libgegl-0_0-0 -License: GPL v3 or later; LGPL v3 or later +License: GPL v3 or later ; LGPL v3 or later Summary: Generic Graphics Library Group: System/Libraries Recommends: %{name}-0_0 >= %{version} @@ -250,7 +250,7 @@ Authors: Jakub Steiner %package devel -License: GPL v3 or later; LGPL v3 or later +License: GPL v3 or later ; LGPL v3 or later Summary: Generic Graphics Library Group: System/Libraries Requires: libgegl-0_0-0 = %{version} babl-devel glib2-devel glibc-devel pcre-devel @@ -300,7 +300,7 @@ Authors: Jakub Steiner %package doc -License: GPL v3 or later; LGPL v3 or later +License: GPL v3 or later ; LGPL v3 or later Summary: Generic Graphics Library Group: System/Libraries Requires: libgegl-0_0-0 = %{version} @@ -351,7 +351,6 @@ Authors: %prep %setup -q -%patch0 -p0 %build %configure\ @@ -412,46 +411,3 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/gtk-doc/html/gegl %changelog -* Thu Jun 11 2009 vuntz@novell.com -- Add gegl-babl_api_change.patch to make gegl build with babl - 0.1.0. Patch taken from Fedora. -- Remove autoreconf call. -- Do not make gegl0_0 explicitly Requires libbabl-0_0-0. -* Wed Dec 31 2008 hfiguiere@suse.de -- Update to 0.0.22 - * GeglOperation - - operation names are now prefixed, the ops in GEGL use 'gegl:' as prefix. - - gegl:opacity - combine value and aux mask input when both are available. - - gegl:src-in - deal correctly with extens. - - gegl:path - new op covering the stroke/fill needs of SVG. - - deprecated gegl:shift, the affine familiy of operations now - uses the same fast code paths for integer translations. - * GeglBuffer - - Profiling motivated speed ups in data reading/writing. - - Remove left-over swapfiles from dead processes at startup. - * GeglNode - - made gegl_node_add_child and gegl_node_remove_child public API. (bgo#507298) - * GeglPath: Vector path representation infrastructure, -- Remove gegl-64bit-warning.diff -* Mon Oct 06 2008 hfiguiere@suse.de -- Update to 0.0.20 - * libopenraw support - * Linear buffer support, amongst other things enabling GeglBuffer API access - to external linear buffers in memory. - * Reworked samplers using a shared caching neighbourhood infrastructure. - * YAFR - a new resampler contributed by Nicolas Robidoux. - * Marked user visible strings for translation. - * Added a fill operation (might be a bit fragile) that allows rendering - SVG like paths backed by a GeglVector. -- Remove gegl-strict-compile-fix.diff -- Added gegl-64bit-warning.diff - * Address a fatal warning on 64bits -* Wed Oct 01 2008 hfiguiere@suse.de -- Add patch gegl-strict-compile-fix.diff: - *Fix header for stricter compilation -- enable workshop at compile time -* Mon Sep 29 2008 sbrabec@suse.cz -- Fixed dependencies. -- Fixed permissions of documentation. -* Mon Jul 21 2008 sbrabec@suse.cz -- New SuSE package.