Skip to content

openal-soft_1.15.1.bb broken wrt multlib #102

@rmi1974

Description

@rmi1974

Hi folks,

encountered this while building an aarch64 multib, based on Yocto 2.6 (thud)

meta-multimedia/recipes-multimedia/openal/openal-soft_1.15.1.bb

...
ERROR: openal-soft-1.15.1-r0 do_package: QA Issue: openal-soft: Files/directories were installed but not shipped in any package:
  /usr/lib/libopenal.so.1
  /usr/lib/libopenal.so.1.15.1
  /usr/lib/libopenal.so
  /usr/lib/pkgconfig
  /usr/lib/pkgconfig/openal.pc
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
openal-soft: 5 installed and not shipped files. [installed-vs-shipped]
ERROR: openal-soft-1.15.1-r0 do_package: Fatal QA errors found, failing task.
ERROR: openal-soft-1.15.1-r0 do_package: Function failed: do_package

The recipe references an rather outdated/old openal version.
Looks like the cmake files are not compatible wrt multilib.

I found some multilib related fixes here: kcat/openal-soft@6387933

So you need at least openal-soft-1.18.0 to have proper multlib support.


Also I found the original tarball provider/server pretty unstable: http://kcat.strangesoft.net/openal-releases/
Lots of times the server didn't respond.
Why not using github mirror for this.

My recipe 'openal-soft_1.18.0.bb' based on old 1.15.1 that worked (no further guarantees tho).

SUMMARY = "OpenAL is a cross-platform 3D audio API"
HOMEPAGE = "http://kcat.strangesoft.net/openal.html"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"

inherit cmake pkgconfig

SRC_URI = "https://github.com/kcat/openal-soft/archive/${BP}.tar.gz"
SRC_URI[md5sum] = "a714a3ee1a5d5e2d963f996bc9af50f2"
SRC_URI[sha256sum] = "ad9095f0b9b62903f3a43e2c7df429a44d563aa0c93f7931338ab8fc4035b5c4"

S = "${WORKDIR}/${BPN}-${BPN}-${PV}"

PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio', d)}"
PACKAGECONFIG[alsa] = "-DALSA=TRUE, -DALSA=FALSE, alsa-lib"
PACKAGECONFIG[pulseaudio] = "-DPULSEAUDIO=TRUE, -DPULSEAUDIO=FALSE, pulseaudio"
# currently doesn't work with libav-9
# PKG_CHECK_MODULES(FFMPEG libavcodec>=53.61.100 libavformat>=53.32.100 libavutil>=51.35.100)
# but alffmpeg.c:418:44: error: 'AV_CH_LAYOUT_MONO' undeclared (first use in this function)
PACKAGECONFIG[examples] = "-DEXAMPLES=TRUE, -DEXAMPLES=FALSE, libav"

FILES_${PN} += "${datadir}/openal" 

EDIT: Also BPN should be used in place of PN otherwise S will be incorrectly expanded in multilib prefix 'bitbake lib32-image-target' MLPREFIX -> PN=lib32-PN

Regards

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions