summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-lang/rust/files/1.53.0-miri-vergen.patch53
-rw-r--r--dev-lang/rust/rust-1.53.0.ebuild8
-rw-r--r--media-libs/openimageio/Manifest1
-rw-r--r--media-libs/openimageio/openimageio-2.2.14.0.ebuild3
-rw-r--r--media-libs/openimageio/openimageio-2.2.15.0.ebuild3
-rw-r--r--media-libs/openimageio/openimageio-2.2.15.1.ebuild159
6 files changed, 225 insertions, 2 deletions
diff --git a/dev-lang/rust/files/1.53.0-miri-vergen.patch b/dev-lang/rust/files/1.53.0-miri-vergen.patch
new file mode 100644
index 000000000000..347f147c9942
--- /dev/null
+++ b/dev-lang/rust/files/1.53.0-miri-vergen.patch
@@ -0,0 +1,53 @@
+From 64f128c45687d18d64fc6856a30fde585b007e00 Mon Sep 17 00:00:00 2001
+From: Ralf Jung <post@ralfj.de>
+Date: Sat, 15 May 2021 14:17:30 +0200
+Subject: [PATCH] support building Miri outside a git repo
+
+---
+ cargo-miri/bin.rs | 14 ++++++++------
+ cargo-miri/build.rs | 2 +-
+ 2 files changed, 9 insertions(+), 7 deletions(-)
+
+diff --git a/cargo-miri/bin.rs b/cargo-miri/bin.rs
+index e29bdc771..84447b3a1 100644
+--- a/src/tools/miri/cargo-miri/bin.rs
++++ b/src/tools/miri/cargo-miri/bin.rs
+@@ -6,6 +6,7 @@ use std::io::{self, BufRead, BufReader, BufWriter, Read, Write};
+ use std::ops::Not;
+ use std::path::{Path, PathBuf};
+ use std::process::Command;
++use std::fmt::{Write as _};
+
+ use serde::{Deserialize, Serialize};
+
+@@ -90,12 +91,13 @@ fn show_help() {
+ }
+
+ fn show_version() {
+- println!(
+- "miri {} ({} {})",
+- env!("CARGO_PKG_VERSION"),
+- env!("VERGEN_GIT_SHA_SHORT"),
+- env!("VERGEN_GIT_COMMIT_DATE")
+- );
++ let mut version = format!("miri {}", env!("CARGO_PKG_VERSION"));
++ // Only use `option_env` on vergen variables to ensure the build succeeds
++ // when vergen failed to find the git info.
++ if let Some(sha) = option_env!("VERGEN_GIT_SHA_SHORT") {
++ write!(&mut version, " ({} {})", sha, option_env!("VERGEN_GIT_COMMIT_DATE").unwrap()).unwrap();
++ }
++ println!("{}", version);
+ }
+
+ fn show_error(msg: String) -> ! {
+diff --git a/cargo-miri/build.rs b/cargo-miri/build.rs
+index cff135fe4..ebd8e7003 100644
+--- a/src/tools/miri/cargo-miri/build.rs
++++ b/src/tools/miri/cargo-miri/build.rs
+@@ -7,5 +7,5 @@ fn main() {
+ let mut gen_config = vergen::Config::default();
+ *gen_config.git_mut().sha_kind_mut() = vergen::ShaKind::Short;
+ *gen_config.git_mut().commit_timestamp_kind_mut() = vergen::TimestampKind::DateOnly;
+- vergen(gen_config).expect("Unable to generate vergen keys!");
++ vergen(gen_config).ok(); // Ignore failure (in case we are built outside a git repo)
+ }
diff --git a/dev-lang/rust/rust-1.53.0.ebuild b/dev-lang/rust/rust-1.53.0.ebuild
index e8b0c98a8c1e..cb50814975f0 100644
--- a/dev-lang/rust/rust-1.53.0.ebuild
+++ b/dev-lang/rust/rust-1.53.0.ebuild
@@ -149,6 +149,7 @@ PATCHES=(
"${FILESDIR}"/1.47.0-ignore-broken-and-non-applicable-tests.patch
"${FILESDIR}"/1.49.0-gentoo-musl-target-specs.patch
"${FILESDIR}"/1.53.0-rustversion-1.0.5.patch # https://github.com/rust-lang/rust/pull/86425
+ "${FILESDIR}"/1.53.0-miri-vergen.patch # https://github.com/rust-lang/rust/issues/84182
)
S="${WORKDIR}/${MY_P}-src"
@@ -293,6 +294,7 @@ src_configure() {
rust_target="$(rust_abi)"
cat <<- _EOF_ > "${S}"/config.toml
+ changelog-seen = 2
[llvm]
download-ci-llvm = false
optimize = $(toml_usex !debug)
@@ -498,7 +500,8 @@ src_compile() {
(
IFS=$'\n'
env $(cat "${S}"/config.env) RUST_BACKTRACE=1\
- "${EPYTHON}" ./x.py dist -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
+ "${EPYTHON}" ./x.py build --stage 2 \
+ -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
)
}
@@ -562,7 +565,8 @@ src_install() {
(
IFS=$'\n'
env $(cat "${S}"/config.env) DESTDIR="${D}" \
- "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
+ "${EPYTHON}" ./x.py install --keep-stage 2 \
+ -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
)
# bug #689562, #689160
diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest
index c428fbfdca03..57cc77b1a528 100644
--- a/media-libs/openimageio/Manifest
+++ b/media-libs/openimageio/Manifest
@@ -2,3 +2,4 @@ DIST openimageio-2.2.12.0.tar.gz 29251419 BLAKE2B 7ab1b611f9354d4a8d3fc33bc30acf
DIST openimageio-2.2.13.1.tar.gz 29265740 BLAKE2B 98403db440410d391ff150a988ac5cb970e0f8d30758c73200d54f07594b458d1f6a8bee58dc92bd254338da678fc4494555df94d8f865b09bd9c13bac7f8f6c SHA512 911e3671557df3c8bdbada00b83b7631750f5bf4dfc0568a4978c91d28a6e408c69dbe0e4e113b13702eab27176d3c84043d73778a0213eac0b2ac94d2e942d6
DIST openimageio-2.2.14.0.tar.gz 29226972 BLAKE2B 29daaf4fb987b77dffdd8cb29c5f67a80c20c49cd5dc369e68a5588a61fae7119aeb22814886e68eb055f2a66e02e75afba25991f8edc14752ccacf6599d889f SHA512 063291c0bd742b79a7b6065a41856b84732af2e2e404265262aa9ba91d07209fb308ecf0403a139d7021b8062f9c3e1b92a725a7cad091af1bcf45499ae47a82
DIST openimageio-2.2.15.0.tar.gz 29238071 BLAKE2B f74f779635b7ff068f87ab6231756cb22acb80185c717c556750d964025aa343f8b3a30b9e73acf6237328b8bdd3fcb6588321d37a3752a6f1d0dd1e3a976363 SHA512 7ade071ae8a78427fb51d75f81e6fcc2d9a3632f0854aea70b985794a53a386072fb171dc8179fa762de19067d402c7ab9f2ea1a44bd3196d3a201ea2cb9ec22
+DIST openimageio-2.2.15.1.tar.gz 29237852 BLAKE2B 0f5050e888e82721aa7012cc5c5eb229b5ac314b067406ef003369431241228d91904fbe455da8423ff978411052b2c960b0688a6b943a0e2bfdb47c489d26a5 SHA512 c06df310f91938b25f1f66cd98d995dcaba51c6a0041b47882c52f5ad4a098a9016fc99f41de250dd1b1b7af3ad22f6ed63d5e76f95f1f1cf0f45c80eee9c8e0
diff --git a/media-libs/openimageio/openimageio-2.2.14.0.ebuild b/media-libs/openimageio/openimageio-2.2.14.0.ebuild
index a5b480aec5c5..36c2ee69a52d 100644
--- a/media-libs/openimageio/openimageio-2.2.14.0.ebuild
+++ b/media-libs/openimageio/openimageio-2.2.14.0.ebuild
@@ -136,6 +136,9 @@ src_configure() {
-DUSE_FREETYPE=$(usex truetype)
-DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}")
)
+ if use python; then
+ mycmakeargs+=( -DPYTHON_SITE_DIR=$(python_get_sitedir) )
+ fi
cmake_src_configure
}
diff --git a/media-libs/openimageio/openimageio-2.2.15.0.ebuild b/media-libs/openimageio/openimageio-2.2.15.0.ebuild
index a5b480aec5c5..36c2ee69a52d 100644
--- a/media-libs/openimageio/openimageio-2.2.15.0.ebuild
+++ b/media-libs/openimageio/openimageio-2.2.15.0.ebuild
@@ -136,6 +136,9 @@ src_configure() {
-DUSE_FREETYPE=$(usex truetype)
-DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}")
)
+ if use python; then
+ mycmakeargs+=( -DPYTHON_SITE_DIR=$(python_get_sitedir) )
+ fi
cmake_src_configure
}
diff --git a/media-libs/openimageio/openimageio-2.2.15.1.ebuild b/media-libs/openimageio/openimageio-2.2.15.1.ebuild
new file mode 100644
index 000000000000..36c2ee69a52d
--- /dev/null
+++ b/media-libs/openimageio/openimageio-2.2.15.1.ebuild
@@ -0,0 +1,159 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+FONT_PN=OpenImageIO
+PYTHON_COMPAT=( python3_{7..9} )
+inherit cmake font python-single-r1
+
+DESCRIPTION="A library for reading and writing images"
+HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO"
+SRC_URI="https://github.com/OpenImageIO/oiio/archive/Release-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/oiio-Release-${PV}"
+
+LICENSE="BSD"
+SLOT="0/2.2"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+X86_CPU_FEATURES=(
+ aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2
+ avx:avx avx2:avx2 avx512f:avx512f f16c:f16c
+)
+CPU_FEATURES=( ${X86_CPU_FEATURES[@]/#/cpu_flags_x86_} )
+
+IUSE="dicom doc ffmpeg field3d gif jpeg2k opencv opengl openvdb ptex python qt5 raw +truetype ${CPU_FEATURES[@]%:*}"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# test data in separate repo
+# second repo has no structure whatsoever
+RESTRICT="test"
+
+BDEPEND="
+ doc? (
+ app-doc/doxygen
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ )
+"
+RDEPEND="
+ >=dev-libs/boost-1.62:=
+ dev-cpp/robin-map
+ dev-libs/libfmt:=
+ dev-libs/pugixml:=
+ >=media-libs/ilmbase-2.2.0-r1:=
+ >=media-libs/libheif-1.7.0:=
+ media-libs/libpng:0=
+ >=media-libs/libwebp-0.2.1:=
+ media-libs/opencolorio:=
+ >=media-libs/openexr-2.2.0-r2:=
+ media-libs/tiff:0=
+ sys-libs/zlib:=
+ virtual/jpeg:0
+ dicom? ( sci-libs/dcmtk )
+ ffmpeg? ( media-video/ffmpeg:= )
+ field3d? ( media-libs/Field3D:= )
+ gif? ( media-libs/giflib:0= )
+ jpeg2k? ( >=media-libs/openjpeg-2.0:2= )
+ opencv? ( media-libs/opencv:= )
+ opengl? (
+ media-libs/glew:=
+ virtual/glu
+ virtual/opengl
+ )
+ openvdb? (
+ dev-cpp/tbb:=
+ media-gfx/openvdb:=
+ )
+ ptex? ( media-libs/ptex:= )
+ python? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-libs/boost:=[python,${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pybind11[${PYTHON_USEDEP}]
+ ')
+ )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ opengl? ( dev-qt/qtopengl:5 )
+ )
+ raw? ( media-libs/libraw:= )
+ truetype? ( media-libs/freetype:2= )
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( CHANGES.md CREDITS.md README.md )
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+ cmake_comment_add_subdirectory src/fonts
+}
+
+src_configure() {
+ # Build with SIMD support
+ local cpufeature
+ local mysimd=()
+ for cpufeature in "${CPU_FEATURES[@]}"; do
+ use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}")
+ done
+
+ # If no CPU SIMDs were used, completely disable them
+ [[ -z ${mysimd} ]] && mysimd=("0")
+
+ local mycmakeargs=(
+ -DVERBOSE=ON
+ -DOIIO_BUILD_TESTS=OFF
+ -DINSTALL_FONTS=OFF
+ -DBUILD_DOCS=$(usex doc)
+ -DINSTALL_DOCS=$(usex doc)
+ -DSTOP_ON_WARNING=OFF
+ -DUSE_CCACHE=OFF
+ -DUSE_DCMTK=$(usex dicom)
+ -DUSE_EXTERNAL_PUGIXML=ON
+ -DUSE_JPEGTURBO=ON
+ -DUSE_NUKE=OFF # not in Gentoo
+ -DUSE_FFMPEG=$(usex ffmpeg)
+ -DUSE_FIELD3D=$(usex field3d)
+ -DUSE_GIF=$(usex gif)
+ -DUSE_OPENJPEG=$(usex jpeg2k)
+ -DUSE_OPENCV=$(usex opencv)
+ -DUSE_OPENGL=$(usex opengl)
+ -DUSE_OPENVDB=$(usex openvdb)
+ -DUSE_PTEX=$(usex ptex)
+ -DUSE_PYTHON=$(usex python)
+ -DUSE_QT=$(usex qt5)
+ -DUSE_LIBRAW=$(usex raw)
+ -DUSE_FREETYPE=$(usex truetype)
+ -DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}")
+ )
+ if use python; then
+ mycmakeargs+=( -DPYTHON_SITE_DIR=$(python_get_sitedir) )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # can't use font_src_install
+ # it does directory hierarchy recreation
+ FONT_S=(
+ "${S}/src/fonts/Droid_Sans"
+ "${S}/src/fonts/Droid_Sans_Mono"
+ "${S}/src/fonts/Droid_Serif"
+ )
+ insinto ${FONTDIR}
+ for dir in "${FONT_S[@]}"; do
+ doins "${dir}"/*.ttf
+ done
+}