mirror of
https://anongit.gentoo.org/git/repo/gentoo.git
synced 2025-06-10 15:19:09 +02:00
Needed to e.g. pass LTO warning flags through to the linker. Also needed to pass through --as-needed correctly to the linker, which has the practical effect of pruning a link to some unused lcms plugins. lcms provides its plugins in the main .pc file by design to "simplify usage", if configuring to build the plugin at all, and expects --as-needed to strip those out if you don't call `cmsPlugin`. But that relies on libtool doing its job... (We unconditionally package the plugins, so this is just an optimization.) Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>
68 lines
1.6 KiB
Bash
68 lines
1.6 KiB
Bash
# Copyright 1999-2025 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit flag-o-matic libtool multilib-minimal toolchain-funcs
|
|
|
|
MY_PN=LibRaw
|
|
MY_PV="${PV/_b/-B}"
|
|
MY_P="${MY_PN}-${MY_PV}"
|
|
|
|
DESCRIPTION="LibRaw is a library for reading RAW files obtained from digital photo cameras"
|
|
HOMEPAGE="https://www.libraw.org/ https://github.com/LibRaw/LibRaw"
|
|
SRC_URI="https://www.libraw.org/data/${MY_P}.tar.gz"
|
|
S="${WORKDIR}/${MY_P}"
|
|
|
|
LICENSE="LGPL-2.1 CDDL"
|
|
# SONAME isn't exactly the same as PV but it does correspond and
|
|
# libraw has unstable ABI across releases.
|
|
SLOT="0/$(ver_cut 1-2)"
|
|
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
|
|
IUSE="examples jpeg +lcms openmp zlib"
|
|
|
|
RDEPEND="
|
|
jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
|
|
lcms? ( >=media-libs/lcms-2.5:2[${MULTILIB_USEDEP}] )
|
|
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
|
|
"
|
|
DEPEND="${RDEPEND}"
|
|
BDEPEND="virtual/pkgconfig"
|
|
|
|
DOCS=( Changelog.txt README.md )
|
|
|
|
pkg_pretend() {
|
|
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
|
}
|
|
|
|
pkg_setup() {
|
|
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
|
}
|
|
|
|
src_prepare() {
|
|
default
|
|
elibtoolize
|
|
|
|
if tc-is-clang && use openmp ; then
|
|
append-libs omp
|
|
fi
|
|
}
|
|
|
|
multilib_src_configure() {
|
|
local myeconfargs=(
|
|
--disable-jasper
|
|
$(multilib_native_use_enable examples)
|
|
$(use_enable jpeg)
|
|
$(use_enable lcms)
|
|
$(use_enable openmp)
|
|
$(use_enable zlib)
|
|
)
|
|
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
|
}
|
|
|
|
multilib_src_install_all() {
|
|
einstalldocs
|
|
|
|
# package installs .pc files
|
|
find "${D}" -name '*.la' -delete || die
|
|
}
|