pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/60301: libjpeg-turbo version 3.1.4.1 doesn't build on amiga
The following reply was made to PR pkg/60301; it has been noted by GNATS.
From: "S.P.Zeidler" <spz%NetBSD.org@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: pkg/60301: libjpeg-turbo version 3.1.4.1 doesn't build on amiga
Date: Sat, 30 May 2026 19:32:38 +0000
Hi Thomas,
Thus wrote Thomas Klausner via gnats (gnats-admin%NetBSD.org@localhost):
> There is a very extensive code in simd/CMakeLists.txt that handles a
> lot of platforms.
3.1.4.1 has:
# grep CPU_TYPE work/libjpeg-turbo-3.1.4.1/simd/CMakeLists.txt
if(CPU_TYPE STREQUAL "x86_64" OR CPU_TYPE STREQUAL "i386")
if(CPU_TYPE STREQUAL "x86_64")
elseif(CPU_TYPE STREQUAL "i386")
if(CPU_TYPE STREQUAL "x86_64")
elseif(CPU_TYPE STREQUAL "i386")
if(CPU_TYPE STREQUAL "x86_64" AND CMAKE_ASM_NASM_OBJECT_FORMAT MATCHES "^elf")
set(CMAKE_ASM_NASM_FLAGS "${CMAKE_ASM_NASM_FLAGS} -I\"${CMAKE_CURRENT_SOURCE_DIR}/nasm/\" -I\"${CMAKE_CURRENT_SOURCE_DIR}/${CPU_TYPE}/\"")
if(CPU_TYPE STREQUAL "x86_64")
string(REGEX REPLACE "${CPU_TYPE}/" "" filename ${file})
add_library(simd OBJECT ${CPU_TYPE}/jsimd.c)
add_library(simd OBJECT ${SIMD_SOURCES} ${CPU_TYPE}/jsimd.c)
elseif(CPU_TYPE STREQUAL "arm64" OR CPU_TYPE STREQUAL "arm")
if(CPU_TYPE STREQUAL "arm")
elseif(CPU_TYPE STREQUAL "mips" OR CPU_TYPE STREQUAL "mipsel")
elseif(CPU_TYPE STREQUAL "loongson" OR CPU_TYPE MATCHES "^mips64")
elseif(CPU_TYPE STREQUAL "powerpc")
endif() # CPU_TYPE
so my guess is that x86_64, i386, arm64, arm, mips, mipsel, loongson,
variants of mips64 and powerpc will work.
I'm trying a build on sparc64 to verify that that will also fail;
it's currently slogging through dependencies and will be a while.
make configure on amiga yields:
CMake Warning at simd/CMakeLists.txt:5 (message):
SIMD extensions not available for this CPU (m68k). Performance will
suffer.
Call Stack (most recent call first):
simd/CMakeLists.txt:567 (simd_fail)
> you can add something like
>
> .if ${MACHINE_ARCH} == m68k
> CMAKE_CONFIGURE_ARGS+= -DWITH_SIMD=FALSE
> .endif
>
> to disable SIMD detection/support.
I used CMAKE_CONFIGURE_ARGS+= -DWITH_SIMD=0 after I found the hint to do
that in README.md, and it builds then.
Comparing to 3.1.3 on amiga:
make configure also yields:
CMake Warning at simd/CMakeLists.txt:5 (message):
SIMD extensions not available for this CPU (m68k). Performance will
suffer.
Call Stack (most recent call first):
simd/CMakeLists.txt:539 (simd_fail)
and simd/CMakeLists.txt isn't a lot different. There is nothing about m68k
or amiga in there. Perhaps you remebered a rather earlier version?
Anyhow, building 3.1.3 works:
work/libjpeg-turbo-3.1.3/cmake-pkgsrc-build/Makefile contains no entries
regarding simd, wheras the 3.1.4.1 version has:
# Build rule for target.
simdcoverage: cmake_check_build_system
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 simdcoverage
.PHONY : simdcoverage
# fast build rule for target.
simdcoverage/fast:
$(MAKE) $(MAKESILENT) -f simd/CMakeFiles/simdcoverage.dir/build.make simd/CMakeFiles/simdcoverage.dir/build
.PHONY : simdcoverage/fast
simdcoverage seems to be new in 3.1.4(.1) and seems to be not sufficiently
exempt from building on non-simd CPU architectures.
regards,
spz
Home |
Main Index |
Thread Index |
Old Index