AgentD / squashfs-tools-ng

A new set of tools and libraries for working with SquashFS images
Other
194 stars 30 forks source link

Configure on Debian-based Distros Won't Find BZIP2 - No pkg-config support #76

Closed danieldjewell closed 3 years ago

danieldjewell commented 3 years ago

Hiya,

In compiling from master (pulled as of 2020-12-17), I noticed that BZIP2 support wasn't getting enabled - I knew it was there but I double checked that the headers and library were there.

It looks like the issue is that on at least Debian and Ubuntu, there isn't a pkg-config .pc file installed for libbz2-dev:

https://packages.ubuntu.com/groovy/amd64/libbz2-dev/filelist https://packages.debian.org/sid/amd64/libbz2-dev/filelist

In looking in the source of squashfs-tools-ng, the issue seems to be that configure relies entirely on pkg-config to detect bzip2 support:

https://github.com/AgentD/squashfs-tools-ng/blob/2d92372ea6a64ce898a872f496e62524c19d4b21/configure.ac#L146-L148

The "modern"/"redone" (?) fork of bzip2 (https://gitlab.com/federicomenaquintero/bzip2) does have the pkg-config file. But I'm not even seeing it as part of the install on FreeBSD (nor on Debian-esque distros)... so this would likely affect more than just Debian...

AgentD commented 3 years ago

Hi @danieldjewell,

thanks for reporting this! I'm on Fedora myself where the package maintainer apparently provides a pkg-config file for bzip2. It's good to know, that this is the exception rather than the norm.

The same problem already exists for lzo2. I simply duplicated the lzo2 workaround and modified it for bzip2, so it should work now with a recent master (commit 06a8c73c53a78c84d736ee7176522ed21a501ab4).