[MacPorts] #60232: gdk-pixbuf2 @2.40.0_1 +universal doesn't compile with jpeg and jasper
MacPorts
noreply at macports.org
Tue Mar 24 15:48:15 UTC 2020
#60232: gdk-pixbuf2 @2.40.0_1 +universal doesn't compile with jpeg and jasper
--------------------------+----------------------
Reporter: someuser12 | Owner: dbevans
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: gdk-pixbuf2 |
--------------------------+----------------------
Description changed by mf2k:
Old description:
> Under Mac OS 10.13 and 10.11, while configuring `gdk-pixbuf2` @2.40.0_1
> with `+universal` variant set, the build tool `meson` tries to detect the
> libraries JPEG and jasper by launching clang on a minimal C program
> involving only proprocessor directives:
>
> `Command line: /usr/bin/clang -I/opt/local/include
> /opt/local/var/macports/build
> /_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_po
> rts_graphics_gdk-pixbuf2/gdk-pixbuf2/work/build/meson-
> private/tmp9kj3a3pw/testfi
> le.c -pipe -E -P -Os -arch x86_64 -arch i386 -P -O0 -std=c99`
>
> Since clang is launched with the flags `-E -arch x86_64 -arch i386`, it
> fails with message `clang: error: cannot use 'cpp-output' output with
> multiple -arch options` and meson concludes erroneously that the jpeg
> library is absent.
>
> The same happens with jasper later on.
>
> As a consequence, all software built again the resulting gdk-pixbuf2
> (e.g. qiv) will be unable to load or display any JPEG file.
>
> Ugly workaround:
> - `sudo port extract gdk-pixbuf2 +x11+universal`
>
> - Manually edit {{{`port work gdk-pixbuf2`/gdk-
> pixbuf-2.40.0/meson.build}}} to replace, on line 312,
> `cc.has_header('jpeglib.h')` with `1==1` and, on line 363,
> `cc.has_header('jasper/jasper.h')` with `true`
>
> - `sudo port install gdk-pixbuf2` .
New description:
Under Mac OS 10.13 and 10.11, while configuring `gdk-pixbuf2` @2.40.0_1
with `+universal` variant set, the build tool `meson` tries to detect the
libraries JPEG and jasper by launching clang on a minimal C program
involving only proprocessor directives:
{{{
Command line: /usr/bin/clang -I/opt/local/include
/opt/local/var/macports/build
/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_po
rts_graphics_gdk-pixbuf2/gdk-pixbuf2/work/build/meson-
private/tmp9kj3a3pw/testfi
le.c -pipe -E -P -Os -arch x86_64 -arch i386 -P -O0 -std=c99
}}}
Since clang is launched with the flags `-E -arch x86_64 -arch i386`, it
fails with message `clang: error: cannot use 'cpp-output' output with
multiple -arch options` and meson concludes erroneously that the jpeg
library is absent.
The same happens with jasper later on.
As a consequence, all software built again the resulting gdk-pixbuf2 (e.g.
qiv) will be unable to load or display any JPEG file.
Ugly workaround:
- `sudo port extract gdk-pixbuf2 +x11+universal`
- Manually edit {{{`port work gdk-pixbuf2`/gdk-
pixbuf-2.40.0/meson.build}}} to replace, on line 312,
`cc.has_header('jpeglib.h')` with `1==1` and, on line 363,
`cc.has_header('jasper/jasper.h')` with `true`
- `sudo port install gdk-pixbuf2` .
--
--
Ticket URL: <https://trac.macports.org/ticket/60232#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list