summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCosmin Truta <ctruta@gmail.com>2022-08-26 03:27:42 +0300
committerCosmin Truta <ctruta@gmail.com>2022-08-26 03:27:42 +0300
commit103f8346e39779a9b8954e434b28bbdab36e90fb (patch)
treec7d05fb43b5670c4adf32b63461ca09742584c1a
parent723b2d9f2e2bb65c605274ee052f9773e594a5aa (diff)
downloadlibpng-103f8346e39779a9b8954e434b28bbdab36e90fb.tar.gz
cmake: Set PNG_ARM_NEON to "on" by default on ARM64
Avoid build failures on all ARM64-based non-Linux systems. PNG_ARM_NEON can be set to "check" on Linux/ARM32 only.
-rw-r--r--CMakeLists.txt17
1 files changed, 12 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 42ff0f902..79d714b1d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,6 @@
# CMakeLists.txt
-# Copyright (c) 2018-2020 Cosmin Truta
+# Copyright (c) 2018-2022 Cosmin Truta
# Copyright (c) 2007,2009-2018 Glenn Randers-Pehrson
# Written by Christian Ehrlicher, 2007
# Revised by Roger Lowman, 2009-2010
@@ -69,10 +69,17 @@ if(PNG_HARDWARE_OPTIMIZATIONS)
# Set definitions and sources for ARM.
if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" OR
- CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64")
- set(PNG_ARM_NEON_POSSIBLE_VALUES check on off)
- set(PNG_ARM_NEON "check"
- CACHE STRING "Enable ARM NEON optimizations: check|on|off; check is default")
+ CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64")
+ if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm64" OR
+ CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64")
+ set(PNG_ARM_NEON_POSSIBLE_VALUES on off)
+ set(PNG_ARM_NEON "on"
+ CACHE STRING "Enable ARM NEON optimizations: on|off; on is default")
+ else()
+ set(PNG_ARM_NEON_POSSIBLE_VALUES check on off)
+ set(PNG_ARM_NEON "check"
+ CACHE STRING "Enable ARM NEON optimizations: check|on|off; check is default")
+ endif()
set_property(CACHE PNG_ARM_NEON
PROPERTY STRINGS ${PNG_ARM_NEON_POSSIBLE_VALUES})
list(FIND PNG_ARM_NEON_POSSIBLE_VALUES ${PNG_ARM_NEON} index)