[Bug 279371] graphics/jpeg-turbo: update to 3.0.3 breaks graphics/rawtherapee, escaped -exp run

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 28 May 2024 20:47:04 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279371

            Bug ID: 279371
           Summary: graphics/jpeg-turbo: update to 3.0.3 breaks
                    graphics/rawtherapee, escaped -exp run
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
               URL: https://pkg-status.freebsd.org/beefy22/data/140amd64-d
                    efault/b6f9255af153/logs/rawtherapee-5.10_1.log
                OS: Any
            Status: New
          Keywords: regression
          Severity: Affects Many People
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: mandree@FreeBSD.org
                CC: antoine@FreeBSD.org, desktop@FreeBSD.org,
                    portmgr@FreeBSD.org
        Depends on: 279166
                CC: desktop@FreeBSD.org

Created attachment 251045
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=251045&action=edit
pkg-fallout report on our tier-1 FreeBSD 14

graphics/jpeg-turbo 3.0.3 made the jpeg_std_messasge_table a private data item,
in spite of the comments in jerror.c near it,
see
https://github.com/libjpeg-turbo/libjpeg-turbo/commit/34c055851ecb66a2d9bee1a3318c55cd9acd6586#diff-27e91831d86c024de8f419d49afbce0181f5b7832952b9826585c1f229c99f10R39

Filed upstream as https://github.com/libjpeg-turbo/libjpeg-turbo/issues/767

I wonder how this could escape the -exp run because this immediately resulted
in pkg-fallout reports such as
https://pkg-status.freebsd.org/beefy22/data/140amd64-default/b6f9255af153/logs/rawtherapee-5.10_1.log
https://pkg-status.freebsd.org/beefy22/build.html?mastername=140amd64-default&build=b6f9255af153

Essence:

FAILED: rtgui/rawtherapee 
: && /usr/local/bin/g++12 -O2 -pipe  -I/usr/local/include -fPIC -O3
-funroll-loops -flto=3 -fstack-protector-strong -Wl,-rpath=/usr/local/lib/gcc12
 -stdlib=libc++ -Wl,-rpath=/usr/local/lib/gcc12 -isystem /usr/local/include
-std=c++11 -ffp-contract=off -mtune=generic -Werror=unused-label
-Werror=delete-incomplete -fno-math-errno -Wno-attributes -Wall -Wuninitialized
-Wcast-qual -Wno-deprecated-declarations -Wno-unused-result -Wunused-macros
-fopenmp -Werror=unknown-pragmas -O2 -pipe  -I/usr/local/include -fPIC -O3
-funroll-loops -flto=3 -fstack-protector-strong -Wl,-rpath=/usr/local/lib/gcc12
 -stdlib=libc++ -Wl,-rpath=/usr/local/lib/gcc12 -isystem /usr/local/include 
-DNDEBUG -Wl,--as-needed -lpthread -O3 -funroll-loops -flto=1 -lm -lomp
-fstack-protector-strong -Wl,-rpath=/usr/local/lib/gcc12 -L/usr/local/lib/gcc12
-L/usr/local/lib -mtune=generic [...long list of .cc.o files omitted...] -o
rtgui/rawtherapee  rtengine/librtengine.a  -lcanberra-gtk3  -lX11  -lcanberra 
-lgtk-3  -lgdk-3  -lz  -lpango
cairo-1.0  -lpango-1.0  -lharfbuzz  -latk-1.0  -lcairo-gobject  -lcairo 
-lgdk_pixbuf-2.0  -lgio-2.0  -lgobject-2.0  -lglib-2.0  -lintl  -lexpat 
-lfftw3f  /usr/local/lib/libfftw3f_omp.so  -lgiomm-2.4  -lgio-2.0  -lglibmm-2.4
 -lgobject-2.0  -lglib-2.0  -lintl  -lsigc-2.0  -lgio-2.0  -lgobject-2.0 
-lglib-2.0  -lintl  -lglib-2.0  -lintl  -lglibmm-2.4  -lgobject-2.0  -lglib-2.0
 -lintl  -lsigc-2.0  -lgobject-2.0  -lglib-2.0  -lintl  -lgthread-2.0 
-lglib-2.0  -lintl  -lgtkmm-3.0  -latkmm-1.6  -lgdkmm-3.0  -lgiomm-2.4 
-lpangomm-1.4  -lglibmm-2.4  -lgtk-3  -lgdk-3  -lz  -lpangocairo-1.0 
-lpango-1.0  -lharfbuzz  -latk-1.0  -lcairo-gobject  -lgio-2.0  -lcairomm-1.0 
-lcairo  -lsigc-2.0  -lgdk_pixbuf-2.0  -lgobject-2.0  -lglib-2.0  -lintl 
-lgtk-3  -lgdk-3  -lz  -lpangocairo-1.0  -lpango-1.0  -lharfbuzz  -latk-1.0 
-lcairo-gobject  -lcairo  -lgdk_pixbuf-2.0  -lgio-2.0  -lgobject-2.0 
-lglib-2.0  -lintl  -liptcdata  /usr/local/lib/libjpeg.so  -llcms2 
-llcms2_fast_float  -llcms2_
threaded  /usr/local/lib/libpng.so  /usr/lib/libz.so  /usr/local/lib/libtiff.so
 /usr/lib/libz.so  -llensfun  -lrsvg-2  -lm  -lgio-2.0  -lgdk_pixbuf-2.0 
-lgobject-2.0  -lglib-2.0  -lintl  -lcairo  /usr/local/lib/libexiv2.so 
/usr/local/lib/gcc12/libgomp.so  -lgiomm-2.4  -lgtkmm-3.0  -latkmm-1.6 
-lgdkmm-3.0  -lpangomm-1.4  -lcairomm-1.0  -lexpat  -lfftw3f 
/usr/local/lib/libfftw3f_omp.so  -lgdk_pixbuf-2.0  -lgio-2.0  -lgobject-2.0 
-lglib-2.0  -lintl  -lglibmm-2.4  -lsigc-2.0  -lgthread-2.0  -liptcdata 
/usr/local/lib/libjpeg.so  -llcms2  -llcms2_fast_float  -llcms2_threaded 
/usr/local/lib/libpng.so  /usr/lib/libz.so  /usr/local/lib/libtiff.so 
-llensfun  -lrsvg-2  -lm  -lgdk_pixbuf-2.0  -lgio-2.0  -lgobject-2.0 
-lglib-2.0  -lintl  -lglibmm-2.4  -lsigc-2.0  -lgthread-2.0  -liptcdata 
/usr/local/lib/libjpeg.so  -llcms2  -llcms2_fast_float  -llcms2_threaded 
/usr/local/lib/libpng.so  /usr/lib/libz.so  /usr/local/lib/libtiff.so 
-llensfun  -lrsvg-2  -lm  -lcairo && :
/usr/local/bin/ld: /tmp/ccnktZpp.ltrans82.ltrans.o: in function
`rtengine::ImageIO::loadJPEG(Glib::ustring const&)':
<artificial>:(.text+0x141e1): undefined reference to `jpeg_std_message_table'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
*** Error code 1

I am about to commit a workaround, but we should find out how this could sneak
past the -exp run.


Referenced Bugs:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279166
[Bug 279166] graphics/jpeg-turbo: Update to 3.0.3
-- 
You are receiving this mail because:
You are the assignee for the bug.