Re: [Gegl-developer] fixes to gegl-0.4.38 to get it compileable



Your fixes would break the GEGL build when using the most recent babl
library, I have pushed changes to GEGL that should make it possible to
build GEGL with very old babl again. The best course of action for you
will be updating your babl and trying again (since you already have a
recent meson, the extra #ifdefs to keep GEGL working with old babl
will go away when we can rely on all targeted distros having
sufficiently new meson.).

/pippin

On Fri, Aug 19, 2022 at 10:25 PM American Citizen via
gegl-developer-list <gegl-developer-list gnome org> wrote:

Hello Developers:

I had to fix 5 code units in the gegl folder in order to get gegl-0.4.38
to compile successfully, in order to build gimp-0.10.32 to try to fix
the unrecognized "heic" file type which should have been recognized by
gimp, but is not.

My system:

Linux localhost.localdomain 5.14.21-150400.24.11-default #1 SMP
PREEMPT_DYNAMIC Sun Jul 17 20:46:33 UTC 2022 (be260ca) x86_64 x86_64
x86_64 GNU/Linux
-------------------------------------------------------------------------------
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper
OFFLOAD_TARGET_NAMES=hsa:nvptx-none
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
--mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
--enable-languages=c,c++,objc,fortran,obj-c++,ada,go
--enable-offload-targets=hsa,nvptx-none, --without-cuda-driver
--enable-checking=release --disable-werror
--with-gxx-include-dir=/usr/include/c++/7 --enable-ssp
--disable-libssp --disable-libvtv --disable-libcc1 --disable-plugin
--with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE
Linux' --with-slibdir=/lib64 --with-system-zlib
--enable-libstdcxx-allocator=new --disable-libstdcxx-pch
--enable-version-specific-runtime-libs --with-gcc-major-version-only
--enable-linker-build-id --enable-linux-futex
--enable-gnu-indirect-function --program-suffix=-7
--without-system-libunwind --enable-multilib --with-arch-32=x86-64
--with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
gcc version 7.5.0 (SUSE Linux)
I found out that I had to grab the latest pip and meson build
executables too, as the openSuse ones were broken as far as being able
to build gegl-0.4

%pip3 install meson

%pip3 install ninja

(which assumes pip3 has been successfully installed)

The differences file from the downloaded gegl-0.4.38 folder and the
fixed folder are as follows:

diff -r gegl-good/gegl/buffer/gegl-sampler-cubic.c
./gegl-0.4.38/gegl/buffer/gegl-sampler-cubic.c
235c235
<     (self->fish, (void*)result, (void*)output, 1);
---
    (self->fish, (void*)result, (void*)output, 1, NULL);
diff -r gegl-good/gegl/buffer/gegl-sampler-linear.c
./gegl-0.4.38/gegl/buffer/gegl-sampler-linear.c
202c202
<      (self->fish, (void*)result, (void*)output, 1);
---
     (self->fish, (void*)result, (void*)output, 1, NULL);
diff -r gegl-good/gegl/buffer/gegl-sampler-lohalo.c
./gegl-0.4.38/gegl/buffer/gegl-sampler-lohalo.c
1006c1006
<       (self->fish, (void*)newval, (void*)output, 1);
---
      (self->fish, (void*)newval, (void*)output, 1, NULL);
diff -r gegl-good/gegl/buffer/gegl-sampler-nearest.c
./gegl-0.4.38/gegl/buffer/gegl-sampler-nearest.c
201c201
<         babl_process
---
        babl_proces
203c203
<           (sampler->fish, (void*)tp, (void*)buf, 1);
---
          (sampler->fish, (void*)tp, (void*)buf, 1, NULL);
diff -r gegl-good/gegl/buffer/gegl-sampler-nohalo.c
./gegl-0.4.38/gegl/buffer/gegl-sampler-nohalo.c
1928c1928
<          (self->fish, (void*)newval, (void*)output, 1);
---
         (self->fish, (void*)newval, (void*)output, 1, NULL);
the 5 files are

gegl-good/gegl/buffer/gegl-sampler-cubic.c
gegl-good/gegl/buffer/gegl-sampler-linear.c
gegl-good/gegl/buffer/gegl-sampler-lohalo.c
gegl-good/gegl/buffer/gegl-sampler-nearest.c
gegl-good/gegl/buffer/gegl-sampler-nohalo.c
They are attached with this email (the compileable code)

I also got many warnings about deprecated code and warnings about
uninitialized variables in the gegl-path.c code

[226/1260] Compiling C object
gegl/libgegl-0.4.so.0.437.1.p/property-types_gegl-path.c.o
../gegl/property-types/gegl-path.c: In function ‘gegl_path_parse_string’:
../gegl/property-types/gegl-path.c:850:30: warning: ‘y2’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
                 priv->path = gegl_path_list_append (priv->path, type,
x0, y0, x1, y1, x2, y2);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../gegl/property-types/gegl-path.c:850:30: warning: ‘x2’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
../gegl/property-types/gegl-path.c:844:30: warning: ‘y1’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
                 priv->path = gegl_path_list_append (priv->path, type,
x0, y0, x1, y1);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../gegl/property-types/gegl-path.c:844:30: warning: ‘x1’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
../gegl/property-types/gegl-path.c:839:30: warning: ‘y0’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
                 priv->path = gegl_path_list_append (priv->path, type,
x0, y0);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../gegl/property-types/gegl-path.c:839:30: warning: ‘x0’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
-------------------------------------------------
but I really don't have time to fix all these warnings, since I already
spent several hours fixing problems in order to get both gegl-0.4.38 and
gimp-2.10.32 to compile.

Sorry if this email seems obtuse, but I really needed to call this to
attention of the appropriate people, so that the 5 code units get
updated (from the https://download.gimp.org/pub/gegl/0.4/ site today
Monday August 8th, 2022) and gegl-0.4.38 is compileable by the openSuse
community.

- Randall



_______________________________________________
gegl-developer-list mailing list
List address:    gegl-developer-list gnome org
List membership: https://mail.gnome.org/mailman/listinfo/gegl-developer-list



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]