From 14faeffcd0e4e1816f479425d1c1e2d99cd0199e Mon Sep 17 00:00:00 2001 From: driver1998 Date: Tue, 13 Sep 2022 01:57:23 +0800 Subject: [PATCH] enable more clangarm64 packages --- mingw-w64-djvulibre/PKGBUILD | 2 +- .../0001-include-xmmintrin-on-x86-only.patch | 15 ++++++++ mingw-w64-flif/0002-use-avx-on-x86-only.patch | 36 +++++++++++++++++++ mingw-w64-flif/PKGBUILD | 19 +++++++--- mingw-w64-gsfonts/PKGBUILD | 2 +- mingw-w64-liblqr/PKGBUILD | 2 +- mingw-w64-ttf-dejavu/PKGBUILD | 2 +- 7 files changed, 70 insertions(+), 8 deletions(-) create mode 100644 mingw-w64-flif/0001-include-xmmintrin-on-x86-only.patch create mode 100644 mingw-w64-flif/0002-use-avx-on-x86-only.patch diff --git a/mingw-w64-djvulibre/PKGBUILD b/mingw-w64-djvulibre/PKGBUILD index 8bba483534..40d2af6c2c 100644 --- a/mingw-w64-djvulibre/PKGBUILD +++ b/mingw-w64-djvulibre/PKGBUILD @@ -7,7 +7,7 @@ pkgver=3.5.28 pkgrel=2 pkgdesc="Suite to create, manipulate and view DjVu (mingw-w64)" arch=('any') -mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') url="https://djvu.sourceforge.io/" license=("GPL") makedepends=("${MINGW_PACKAGE_PREFIX}-cc" diff --git a/mingw-w64-flif/0001-include-xmmintrin-on-x86-only.patch b/mingw-w64-flif/0001-include-xmmintrin-on-x86-only.patch new file mode 100644 index 0000000000..6a19563e6b --- /dev/null +++ b/mingw-w64-flif/0001-include-xmmintrin-on-x86-only.patch @@ -0,0 +1,15 @@ +diff --git a/src/image/crc32k.hpp b/src/image/crc32k.hpp +index 3faf4fa..004d31e 100644 +--- a/src/image/crc32k.hpp ++++ b/src/image/crc32k.hpp +@@ -13,7 +13,9 @@ + #define __ORDER_LITTLE_ENDIAN__ 1234 + #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ + +- #include ++ #if defined(_M_IX86) || defined(_M_AMD64) || defined(__i386__) || defined(__x86_64__) ++ #include ++ #endif + #ifdef __MINGW32__ + #define PREFETCH(location) __builtin_prefetch(location) + #else diff --git a/mingw-w64-flif/0002-use-avx-on-x86-only.patch b/mingw-w64-flif/0002-use-avx-on-x86-only.patch new file mode 100644 index 0000000000..090f5f06dc --- /dev/null +++ b/mingw-w64-flif/0002-use-avx-on-x86-only.patch @@ -0,0 +1,36 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 6d1b8ab..6e06119 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -94,12 +94,14 @@ if(CMAKE_COMPILER_IS_GNUCXX) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wextra") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra") + if(WIN32) ++ if (CMAKE_SYSTEM_PROCESSOR MATCHES "(i.86|x86|x86_64|AMD64)") + #This is neeeded to prevent warnings such as: + #mingw The ABI for passing parameters with 16-byte alignment has changed in GCC 4.6 + #if you compile for i686. + #but the downside is that the compiled binaries might not work with some old CPU's. +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mavx") +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mavx") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx") ++ endif() + endif(WIN32) + set(CMAKE_CXX_FLAGS_DEBUG "-ggdb3") + set(CMAKE_C_FLAGS_DEBUG "-ggdb3") +@@ -112,12 +114,14 @@ else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wextra") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra") + if(WIN32) ++ if (CMAKE_SYSTEM_PROCESSOR MATCHES "(i.86|x86|x86_64|AMD64)") + #This is neeeded to prevent warnings such as: + #mingw The ABI for passing parameters with 16-byte alignment has changed in GCC 4.6 + #if you compile for i686. + #but the downside is that the compiled binaries might not work with some old CPU's. + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mavx") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mavx") ++ endif() + endif(WIN32) + set(CMAKE_CXX_FLAGS_DEBUG "-ggdb3") + set(CMAKE_C_FLAGS_DEBUG "-ggdb3") diff --git a/mingw-w64-flif/PKGBUILD b/mingw-w64-flif/PKGBUILD index c65e8d905b..0eb730725e 100644 --- a/mingw-w64-flif/PKGBUILD +++ b/mingw-w64-flif/PKGBUILD @@ -5,10 +5,10 @@ pkgbase=mingw-w64-${_realname} pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" _pkgname=FLIF pkgver=0.4 -pkgrel=1 +pkgrel=2 pkgdesc="Free Lossless Image Format (mingw-w64)" arch=(any) -mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') url="https://github.com/FLIF-hub/FLIF" license=('GPL3') conflicts=("${MINGW_PACKAGE_PREFIX}-flif-git") @@ -18,8 +18,12 @@ depends=("${MINGW_PACKAGE_PREFIX}-zlib" makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-cmake" "${MINGW_PACKAGE_PREFIX}-ninja") -source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/FLIF-hub/FLIF/archive/v${pkgver//_/-}.tar.gz") -sha256sums=('cc98313ef0dbfef65d72bc21f730edf2a97a414f14bd73ad424368ce032fdb7f') +source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/FLIF-hub/FLIF/archive/v${pkgver//_/-}.tar.gz" + "0001-include-xmmintrin-on-x86-only.patch" + "0002-use-avx-on-x86-only.patch") +sha256sums=('cc98313ef0dbfef65d72bc21f730edf2a97a414f14bd73ad424368ce032fdb7f' + 'e1e97dca22fce34cce8676589a686d37cea5759b71b9c1860292eccf6c5c9514' + 'f28767b7e8c843dbf6b7654baf4093b7e9ff3af7d1908f25d2ba957bcaac37e9') # Helper macros to help make tasks easier # apply_patch_with_msg() { @@ -40,6 +44,13 @@ del_file_exists() { } # =========================================== # +prepare() { + cd "${srcdir}"/${_realname}-${pkgver} + apply_patch_with_msg \ + 0001-include-xmmintrin-on-x86-only.patch \ + 0002-use-avx-on-x86-only.patch +} + build() { [[ -d "${srcdir}"/build-${MSYSTEM} ]] && rm -rf "${srcdir}"/build-${MSYSTEM} mkdir -p "${srcdir}"/build-${MSYSTEM} && cd "${srcdir}"/build-${MSYSTEM} diff --git a/mingw-w64-gsfonts/PKGBUILD b/mingw-w64-gsfonts/PKGBUILD index 004a0ec0f2..ec13140190 100644 --- a/mingw-w64-gsfonts/PKGBUILD +++ b/mingw-w64-gsfonts/PKGBUILD @@ -8,7 +8,7 @@ pkgrel=2 pkgdesc='(URW)++ Core Font Set [Level 2] (mingw-w64)' url='https://github.com/ArtifexSoftware/urw-base35-fonts' arch=('any') -mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') license=('AGPL3') makedepends=('git') source=("git+https://github.com/ArtifexSoftware/urw-base35-fonts#tag=${pkgver}") diff --git a/mingw-w64-liblqr/PKGBUILD b/mingw-w64-liblqr/PKGBUILD index 032654d90d..8891f6e9e3 100644 --- a/mingw-w64-liblqr/PKGBUILD +++ b/mingw-w64-liblqr/PKGBUILD @@ -7,7 +7,7 @@ pkgver=0.4.2 pkgrel=4 pkgdesc="A seam-carving C/C++ library called Liquid Rescale (mingw-w64)" arch=('any') -mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') url="https://liblqr.wikidot.com/" license=("GPL") makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-autotools") diff --git a/mingw-w64-ttf-dejavu/PKGBUILD b/mingw-w64-ttf-dejavu/PKGBUILD index 82a7c8d9b9..235b70520b 100644 --- a/mingw-w64-ttf-dejavu/PKGBUILD +++ b/mingw-w64-ttf-dejavu/PKGBUILD @@ -8,7 +8,7 @@ pkgver=2.37 pkgrel=3 pkgdesc="Font family based on the Bitstream Vera Fonts with a wider range of characters (mingw-w64)" arch=('any') -mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') url="https://dejavu-fonts.github.io/" license=('custom') depends=("${MINGW_PACKAGE_PREFIX}-fontconfig")