Opened 3 years ago

Closed 3 years ago

#63347 closed defect (fixed)

imlib2 @1.7.2 does not find libbzip2

Reported by: ballapete (Peter "Pete" Dyballa) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc:
Port: imlib2

Description

The presence of installed package bzip2 cannot be detected by configure because no PC file for pkg-config is installed. It works on PPC Leopard, Mac OS X 10.5.8, to add BZ2_LIBS=-lbz2 BZ2_CFLAGS="-L/opt/local/lib" to the configure arguments:

Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_graphics_imlib2/imlib2/work/imlib2-1.7.2" && ./configure --prefix=/opt/local --disable-amd64 BZ2_LIBS=-lbz2 BZ2_CFLAGS="-L/opt/local/lib" 
.
.
.
checking whether to enable bzip2 support... auto
checking for BZ2... yes
.
.
.
Configuration Options Summary:

Image loaders:
  JPEG....................: yes
  PNG.....................: yes
  TIFF....................: yes
  GIF.....................: yes
  WEBP....................: yes
  ZLIB....................: yes
  BZIP2...................: yes
  ID3.....................: yes
.
.
.
x ./opt/local/lib/imlib2/loaders/bz2.la
x ./opt/local/lib/imlib2/loaders/bz2.so

make check also succeeds without error.

pete 240 /\ otool -L /opt/local/lib/imlib2/loaders/bz2.so
/opt/local/lib/imlib2/loaders/bz2.so:
	/opt/local/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.8)
	/opt/local/lib/libImlib2.1.dylib (compatibility version 9.0.0, current version 9.2.0)
	/opt/local/lib/libMacportsLegacySupport.dylib (compatibility version 1.0.0, current version 1.0.3)
	/opt/local/lib/libfreetype.6.dylib (compatibility version 25.0.0, current version 25.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.7)
	/opt/local/lib/libXext.6.dylib (compatibility version 11.0.0, current version 11.0.0)
	/opt/local/lib/libX11-xcb.1.dylib (compatibility version 2.0.0, current version 2.0.0)
	/opt/local/lib/libX11.6.dylib (compatibility version 11.0.0, current version 11.0.0)
	/opt/local/lib/libxcb.1.dylib (compatibility version 3.0.0, current version 3.0.0)
	/opt/local/lib/libxcb-shm.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 830.0.0)

Change History (9)

comment:1 Changed 3 years ago by ballapete (Peter "Pete" Dyballa)

On macOS High Sierra, Version 10.13.6, the result is the same.

comment:2 Changed 3 years ago by reneeotten (Renee Otten)

bzip2 is listed as a dependency in the port, so one would indeed assume it to be used. If your suggested addition to the configure arguments makes that happen, feel free to open a PR for this nomaintainer port.

comment:3 Changed 3 years ago by ballapete (Peter "Pete" Dyballa)

On Big Sur, still Version 11.5, I could see that the previously installed version, @1.7.1_1, has bzip2 support:

pete 384 /\ port contents imlib2 | grep bz2
  /opt/local/lib/imlib2/loaders/bz2.so
pete 385 /\ otool -L   /opt/local/lib/imlib2/loaders/bz2.so
/opt/local/lib/imlib2/loaders/bz2.so:
	/opt/local/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.8)
	/opt/local/lib/libImlib2.1.dylib (compatibility version 9.0.0, current version 9.1.0)
	/opt/local/lib/libfreetype.6.dylib (compatibility version 24.0.0, current version 24.4.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.0.0)
	/opt/local/lib/libXext.6.dylib (compatibility version 11.0.0, current version 11.0.0)
	/opt/local/lib/libX11-xcb.1.dylib (compatibility version 2.0.0, current version 2.0.0)
	/opt/local/lib/libX11.6.dylib (compatibility version 11.0.0, current version 11.0.0)
	/opt/local/lib/libxcb.1.dylib (compatibility version 3.0.0, current version 3.0.0)
	/opt/local/lib/libxcb-shm.0.dylib (compatibility version 1.0.0, current version 1.0.0)

With new version 1.7.2_0 I can see:

checking whether to enable bzip2 support... auto
checking for BZ2... no
configure: WARNING: *** Native bz2 support will not be built (bzip2 not found) ***
.
.
.

------------------------------------------------------------------------
imlib2 1.7.2
------------------------------------------------------------------------

Configuration Options Summary:

Image loaders:
  JPEG....................: yes
  PNG.....................: yes
  TIFF....................: yes
  GIF.....................: yes
  WEBP....................: yes
  ZLIB....................: yes
  BZIP2...................: no
  ID3.....................: yes

and of course imlib2-1.7.2/src/modules/loaders does not contain a bz2.so loader. So the provider of the binary port package must be applying some tricks… To prove this I built the port with the line

 46 configure.args      --disable-amd64 LDFLAGS="-t -v"

in Portfile which proved that libbzip2 was not introduced by some side-effect. Again, adding BZ2_LIBS=-lbz2 BZ2_CFLAGS="-L/opt/local/lib" the port is built with libbzip2.

comment:4 Changed 3 years ago by ballapete (Peter "Pete" Dyballa)

Type: enhancementrequest

comment:5 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Summary: imlib2 does not find libbzip2imlib2 @1.7.2 does not find libbzip2
Type: requestdefect

This is a bug caused by the developers of imlib2 in version 1.7.2. They fixed it in 1.7.3:

https://git.enlightenment.org/legacy/imlib2.git/commit/?id=d2ff569608eb113597a35021aa8bab677cb0d7a2

We should update the portfile.

comment:6 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Upstream erroneously uploaded duplicate copies of the 1.7.2 source into the 1.7.3 directory. I'll ask the developers to upload the 1.7.3 files.

comment:7 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

The developers of enlightenment, of which imlib2 is a part, have switched their issue tracker from Trac to Phabricator, have not migrated my old Trac account to Phabricator, and now have a manual approval process for new accounts. So I am waiting for approval before I can report the problem. If anyone else already has an enlightenment Phabricator account and would like to report the problem to them, please do and paste the URL here. Or if anyone can find an existing bug report about this there, let us know the URL.

comment:8 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

comment:9 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to ryandesign
Resolution: fixed
Status: newclosed

In 6c7bed31b795be2710a27140f8ef030721c81537/macports-ports (master):

imlib2: Update to 1.7.3

Closes: #63347

Note: See TracTickets for help on using tickets.