-
-
Notifications
You must be signed in to change notification settings - Fork 6.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[depends] bump libjpeg-turbo to 2.0.4 #17385
Conversation
@@ -1,4 +1,9 @@ | |||
set(OS "@platform_os@") | |||
set(CMAKE_SYSTEM_PROCESSOR @host_cpu@) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This in case of Raspberry not correct enough, there it is only "arm" without something else, also on Android 32bit it is only "arm".
EDIT: On libjpeg-turbo it checks only about "arm*"
and it works, but not sure if on all possible depends (specially by addons) correct.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See about Android here the standardized values of them https://github.com/Kitware/CMake/blob/master/Modules/Platform/Android-Determine.cmake#L243-L252 (on ..._PROC
)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm torn, which would be better 😄, if you go here it is fully OK https://cmake.org/cmake/help/latest/manual/cmake-toolchains.7.html.
Now looked over hundreds of CMakeLists.txt on the web, with the set(CMAKE_SYSTEM_PROCESSOR ...)
many use it completely (e.g. armv7l
), but in the comparison I saw everywhere only for "arm" alone.
- The most make a
if (CMAKE_SYSTEM_PROCESSOR MATCHES "^arm")
- Some are stupid and make a
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm"
- Some half stupid and make a
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7l")
Then this path is actually OK, just a shame because of my work 😢 😆 😎.
1bd54d3
to
f8efd2e
Compare
- enables clang-check, cppcheck and valgrind features for depends builds targeting the same system and processor as the host system - libjpeg-turbo 2.0.0 switched to cmake and requires this variable
f8efd2e
to
3b2870a
Compare
@@ -24,14 +19,14 @@ $(TARBALLS_LOCATION)/$(ARCHIVE): | |||
$(PLATFORM): $(TARBALLS_LOCATION)/$(ARCHIVE) $(DEPS) | |||
rm -rf $(PLATFORM)/*; mkdir -p $(PLATFORM) | |||
cd $(PLATFORM); $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS) $(TARBALLS_LOCATION)/$(ARCHIVE) | |||
cd $(PLATFORM); $(CONFIGURE) | |||
cd $(PLATFORM); patch -p1 -i ../01-disable-executables.patch | |||
cd $(PLATFORM); $(CMAKE) -B build -DCMAKE_TOOLCHAIN_FILE= -DCMAKE_ASM_NASM_COMPILER:FILEPATH=$(NATIVEPREFIX)/bin/yasm -DENABLE_SHARED:BOOL=OFF -DWITH_JPEG8:BOOL=ON |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for the DCMAKE_ASM_NASM_COMPILER is it worth using the existing NASM var?
NASM=@prefix@/@tool_dir@/bin/yasm |
also, purely for reference if anyone looks in the future, libjpeg-turbo build docs say it can use either yasm or nasm, with some caveats around macos nasm min version apparently
If using NASM, 2.10 or later is required.
If using NASM, 2.10 or later (except 2.11.08) is required for an x86-64 Mac build (2.11.08 does not work properly with libjpeg-turbo's x86-64 SIMD code when building macho64 objects.)
If using YASM, 1.2.0 or later is required.
If building on macOS, NASM or YASM can be obtained from MacPorts or Homebrew.
NOTE: Currently, if it is desirable to hide the SIMD function symbols in Mac executables or shared libraries that statically link with libjpeg-turbo, then NASM 2.14 or later or YASM must be used when building libjpeg-turbo.
https://github.com/libjpeg-turbo/libjpeg-turbo/blob/master/BUILDING.md
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
[depends] bump libjpeg-turbo to 2.0.4
How Has This Been Tested?
compiled libjpeg-turbo and it's dependencies for Android (aarch64, arm, i686), iOS (aarch64, arm), macOS and tvOS
Types of change
Checklist: