Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 712203 Details for
Bug 792810
media-libs/libjpeg-turbo-2.1.0: fix SIMD
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
fix.patch
0001-media-libs-libjpeg-turbo-fix-SIMD.patch (text/plain), 4.53 KB, created by
David Michael
on 2021-05-29 13:03:59 UTC
(
hide
)
Description:
fix.patch
Filename:
MIME Type:
Creator:
David Michael
Created:
2021-05-29 13:03:59 UTC
Size:
4.53 KB
patch
obsolete
>From f87f55b75da5f2764efcf62961aa8f52934967da Mon Sep 17 00:00:00 2001 >From: David Michael <fedora.dm0@gmail.com> >Date: Sat, 29 May 2021 09:01:23 -0400 >Subject: [PATCH] media-libs/libjpeg-turbo: fix SIMD > >This adds CPU flags for each supported SIMD implementation. > >arm: neon >ppc: altivec >x86: 3dnow avx2 mmx sse2 > >MIPS also has mmi and dspr2 support, but Gentoo doesn't have flags >for those. > >This also drops the obsolete x32 workaround, and it fixes assembler >package detection to use BROOT. > >Closes: https://bugs.gentoo.org/792810 >Package-Manager: Portage-3.0.18, Repoman-3.0.2 >Signed-off-by: David Michael <fedora.dm0@gmail.com> >--- > .../libjpeg-turbo-2.1.0-r2.ebuild | 124 ++++++++++++++++++ > 1 file changed, 124 insertions(+) > create mode 100644 media-libs/libjpeg-turbo/libjpeg-turbo-2.1.0-r2.ebuild > >diff --git a/media-libs/libjpeg-turbo/libjpeg-turbo-2.1.0-r2.ebuild b/media-libs/libjpeg-turbo/libjpeg-turbo-2.1.0-r2.ebuild >new file mode 100644 >index 00000000000..66d5f79e60f >--- /dev/null >+++ b/media-libs/libjpeg-turbo/libjpeg-turbo-2.1.0-r2.ebuild >@@ -0,0 +1,124 @@ >+# Copyright 1999-2021 Gentoo Authors >+# Distributed under the terms of the GNU General Public License v2 >+ >+EAPI=7 >+ >+CMAKE_ECLASS=cmake >+inherit cmake-multilib java-pkg-opt-2 >+ >+DESCRIPTION="MMX, SSE, and SSE2 SIMD accelerated JPEG library" >+HOMEPAGE="https://libjpeg-turbo.org/ https://sourceforge.net/projects/libjpeg-turbo/" >+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz >+ mirror://gentoo/libjpeg8_8d-2.debian.tar.gz" >+ >+LICENSE="BSD IJG ZLIB" >+SLOT="0/0.2" >+if [[ "$(ver_cut 3)" -lt 90 ]] ; then >+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris ~x86-solaris" >+fi >+IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_3dnow cpu_flags_x86_avx2 cpu_flags_x86_mmx cpu_flags_x86_sse2 java static-libs" >+ >+ASM_DEPEND="|| ( dev-lang/nasm dev-lang/yasm )" >+ >+COMMON_DEPEND="!media-libs/jpeg:0 >+ !media-libs/jpeg:62" >+ >+BDEPEND=">=dev-util/cmake-3.16.5 >+ amd64? ( ${ASM_DEPEND} ) >+ x86? ( ${ASM_DEPEND} ) >+ amd64-fbsd? ( ${ASM_DEPEND} ) >+ x86-fbsd? ( ${ASM_DEPEND} ) >+ amd64-linux? ( ${ASM_DEPEND} ) >+ x86-linux? ( ${ASM_DEPEND} ) >+ x64-macos? ( ${ASM_DEPEND} ) >+ x64-cygwin? ( ${ASM_DEPEND} )" >+ >+DEPEND="${COMMON_DEPEND} >+ java? ( >=virtual/jdk-1.8:* )" >+ >+RDEPEND="${COMMON_DEPEND} >+ java? ( >=virtual/jre-1.8:* )" >+ >+MULTILIB_WRAPPED_HEADERS=( /usr/include/jconfig.h ) >+ >+src_prepare() { >+ local FILE >+ ln -snf ../debian/extra/*.c . || die >+ >+ for FILE in ../debian/extra/*.c; do >+ FILE=${FILE##*/} >+ cat >> CMakeLists.txt <<EOF || die >+add_executable(${FILE%.c} ${FILE}) >+install(TARGETS ${FILE%.c}) >+EOF >+ done >+ >+ for FILE in ../debian/extra/exifautotran; do >+ cat >> CMakeLists.txt <<EOF || die >+install(FILES \${CMAKE_CURRENT_SOURCE_DIR}/${FILE} DESTINATION \${CMAKE_INSTALL_BINDIR}) >+EOF >+ done >+ >+ for FILE in ../debian/extra/*.[0-9]*; do >+ cat >> CMakeLists.txt <<EOF || die >+install(FILES \${CMAKE_CURRENT_SOURCE_DIR}/${FILE} DESTINATION \${CMAKE_INSTALL_MANDIR}/man${FILE##*.}) >+EOF >+ done >+ >+ cmake_src_prepare >+ java-pkg-opt-2_src_prepare >+} >+ >+multilib_src_configure() { >+ if multilib_is_native_abi && use java ; then >+ export JAVACFLAGS="$(java-pkg_javac-args)" >+ export JNI_CFLAGS="$(java-pkg_get-jni-cflags)" >+ fi >+ >+ local mycmakeargs=( >+ -DCMAKE_INSTALL_DEFAULT_DOCDIR="${EPREFIX}/usr/share/doc/${PF}" >+ -DENABLE_STATIC="$(usex static-libs)" >+ -DWITH_JAVA="$(multilib_native_usex java)" >+ -DWITH_MEM_SRCDST=ON >+ ) >+ >+ # The different SIMD implementations are enabled collectively. >+ local simd >+ for simd in arm_neon ppc_altivec x86_{3dnow,avx2,mmx,sse2} ; do >+ use "cpu_flags_${simd}" && mycmakeargs+=( -DWITH_SIMD:BOOL=ON ) && break >+ done || mycmakeargs+=( -DWITH_SIMD:BOOL=OFF ) >+ >+ # mostly for Prefix, ensure that we use our yasm if installed and >+ # not pick up host-provided nasm >+ has_version -b dev-lang/yasm && ! has_version -b dev-lang/nasm && \ >+ mycmakeargs+=( -DCMAKE_ASM_NASM_COMPILER=$(type -P yasm) ) >+ >+ cmake_src_configure >+} >+ >+multilib_src_install() { >+ cmake_src_install >+ >+ if multilib_is_native_abi && use java ; then >+ rm -rf "${ED}"/usr/classes || die >+ java-pkg_dojar java/turbojpeg.jar >+ fi >+} >+ >+multilib_src_install_all() { >+ find "${ED}" -type f -name '*.la' -delete || die >+ >+ local -a DOCS=( README.md ChangeLog.md ) >+ einstalldocs >+ >+ newdoc "${WORKDIR}"/debian/changelog changelog.debian >+ >+ docinto html >+ dodoc -r "${S}"/doc/html/. >+ >+ if use java; then >+ docinto html/java >+ dodoc -r "${S}"/java/doc/. >+ newdoc "${S}"/java/README README.java >+ fi >+} >-- >2.31.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 792810
:
712203
|
712779