diff options
author | Michael Herzberg | 2019-01-17 15:43:18 +0000 |
---|---|---|
committer | Michael Herzberg | 2019-01-17 15:43:18 +0000 |
commit | 530f1491cf218b636c2b2d07923ee5d643f93576 (patch) | |
tree | 1290b35c14193f2fe04a28f80dde4757125a78d2 | |
parent | 5d0c184224b1a70130eaf2033a41611847fd9495 (diff) | |
download | aur-530f1491cf218b636c2b2d07923ee5d643f93576.tar.gz |
Fix cmake error when building on non-english systems.
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 12 | ||||
-rw-r--r-- | fix_cmake_compiler_flag_tests.patch | 82 |
3 files changed, 94 insertions, 4 deletions
@@ -1,6 +1,6 @@ pkgbase = mariadb-10.3 pkgver = 10.3.12 - pkgrel = 2 + pkgrel = 3 url = http://mariadb.org/ arch = x86_64 license = GPL @@ -18,10 +18,12 @@ pkgbase = mariadb-10.3 source = https://mirrors.ukfast.co.uk/sites/mariadb/mariadb-10.3.12/source/mariadb-10.3.12.tar.gz source = https://mirrors.ukfast.co.uk/sites/mariadb/mariadb-10.3.12/source/mariadb-10.3.12.tar.gz.asc source = fix_libmariadb_ignored_host.patch + source = fix_cmake_compiler_flag_tests.patch validpgpkeys = 199369E5404BD5FC7D2FE43BCBCB082A1BB943DB sha256sums = f7449a34c25e0455928d7983dae83fd2069fe1f16c4c5f4aeed9ed9d3f081ff6 sha256sums = SKIP sha256sums = fd186c795c393b6898f28d731390bb14ea8444230c8340a5f4cfbccb16ea10e9 + sha256sums = 80594a8427106aa99186d0e2af3d8d37c49a4d4cf811d049d1ebb0e4a75fcdb0 pkgname = libmariadb-10.3 pkgdesc = MariaDB client libraries @@ -6,7 +6,7 @@ pkgbase=mariadb-10.3 pkgname=('libmariadb-10.3' 'mariadb-clients-10.3' 'mytop-10.3' 'mariadb-10.3') pkgver=10.3.12 -pkgrel=2 +pkgrel=3 arch=('x86_64') license=('GPL') url='http://mariadb.org/' @@ -15,10 +15,12 @@ makedepends=('boost' 'bzip2' 'cmake' 'jemalloc' 'libaio' 'libxml2' 'lz4' 'lzo' validpgpkeys=('199369E5404BD5FC7D2FE43BCBCB082A1BB943DB') # MariaDB Package Signing Key <package-signing-key@mariadb.org> source=("https://mirrors.ukfast.co.uk/sites/mariadb/mariadb-$pkgver/source/mariadb-$pkgver.tar.gz"{,.asc} - fix_libmariadb_ignored_host.patch) + fix_libmariadb_ignored_host.patch + fix_cmake_compiler_flag_tests.patch) sha256sums=('f7449a34c25e0455928d7983dae83fd2069fe1f16c4c5f4aeed9ed9d3f081ff6' 'SKIP' - 'fd186c795c393b6898f28d731390bb14ea8444230c8340a5f4cfbccb16ea10e9') + 'fd186c795c393b6898f28d731390bb14ea8444230c8340a5f4cfbccb16ea10e9' + '80594a8427106aa99186d0e2af3d8d37c49a4d4cf811d049d1ebb0e4a75fcdb0') prepare() { cd ${pkgbase%-10.3}-$pkgver/ @@ -40,6 +42,10 @@ prepare() { # More info: https://jira.mariadb.org/browse/CONC-359 patch -p0 < ../fix_libmariadb_ignored_host.patch + # Fix a cmake error on non-english systems + # More info: https://jira.mariadb.org/browse/MDEV-18273 + patch -p1 < ../fix_cmake_compiler_flag_tests.patch + # fix path to our config sed -i 's|my.cnf.d|mysql/my.cnf.d|' support-files/rpm/{my.cnf,enable_encryption.preset} } diff --git a/fix_cmake_compiler_flag_tests.patch b/fix_cmake_compiler_flag_tests.patch new file mode 100644 index 000000000000..119be1cbf719 --- /dev/null +++ b/fix_cmake_compiler_flag_tests.patch @@ -0,0 +1,82 @@ +diff -U 3 -dHrN -- mariadb-10.3.12_old/cmake/check_compiler_flag.cmake mariadb-10.3.12/cmake/check_compiler_flag.cmake +--- mariadb-10.3.12_old/cmake/check_compiler_flag.cmake 2019-01-04 16:28:48.000000000 +0100 ++++ mariadb-10.3.12/cmake/check_compiler_flag.cmake 2019-01-16 09:59:23.143273756 +0100 +@@ -1,36 +1,5 @@ +-include(CheckCSourceCompiles) +-include(CheckCXXSourceCompiles) +-# We need some extra FAIL_REGEX patterns +-# Note that CHECK_C_SOURCE_COMPILES is a misnomer, it will also link. +-SET(fail_patterns +- FAIL_REGEX "argument unused during compilation" +- FAIL_REGEX "unsupported .*option" +- FAIL_REGEX "unknown .*option" +- FAIL_REGEX "unrecognized .*option" +- FAIL_REGEX "ignoring unknown option" +- FAIL_REGEX "warning:.*ignored" +- FAIL_REGEX "warning:.*is valid for.*but not for" +- FAIL_REGEX "warning:.*redefined" +- FAIL_REGEX "[Ww]arning: [Oo]ption" +- ) +- +-MACRO (MY_CHECK_C_COMPILER_FLAG flag) +- STRING(REGEX REPLACE "[-,= +]" "_" result "have_C_${flag}") +- SET(SAVE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}") +- SET(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${flag}") +- CHECK_C_SOURCE_COMPILES("int main(void) { return 0; }" ${result} +- ${fail_patterns}) +- SET(CMAKE_REQUIRED_FLAGS "${SAVE_CMAKE_REQUIRED_FLAGS}") +-ENDMACRO() +- +-MACRO (MY_CHECK_CXX_COMPILER_FLAG flag) +- STRING(REGEX REPLACE "[-,= +]" "_" result "have_CXX_${flag}") +- SET(SAVE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}") +- SET(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${flag}") +- CHECK_CXX_SOURCE_COMPILES("int main(void) { return 0; }" ${result} +- ${fail_patterns}) +- SET(CMAKE_REQUIRED_FLAGS "${SAVE_CMAKE_REQUIRED_FLAGS}") +-ENDMACRO() ++include(CheckCCompilerFlag) ++include(CheckCXXCompilerFlag) + + FUNCTION(MY_CHECK_AND_SET_COMPILER_FLAG flag_to_set) + # At the moment this is gcc-only. +@@ -39,11 +8,11 @@ + RETURN() + ENDIF() + STRING(REGEX REPLACE "^-Wno-" "-W" flag_to_check ${flag_to_set}) +- MY_CHECK_C_COMPILER_FLAG(${flag_to_check}) +- MY_CHECK_CXX_COMPILER_FLAG(${flag_to_check}) ++ check_c_compiler_flag(${flag_to_check} have_C_${flag_to_check}) ++ check_cxx_compiler_flag(${flag_to_check} have_CXX_${flag_to_check}) + STRING(REGEX REPLACE "[-,= +]" "_" result "${flag_to_check}") + FOREACH(lang C CXX) +- IF (have_${lang}_${result}) ++ IF (have_${lang}_${flag_to_check}) + IF(ARGN) + FOREACH(type ${ARGN}) + SET(CMAKE_${lang}_FLAGS_${type} "${CMAKE_${lang}_FLAGS_${type}} ${flag_to_set}" PARENT_SCOPE) +diff -U 3 -dHrN -- mariadb-10.3.12_old/CMakeLists.txt mariadb-10.3.12/CMakeLists.txt +--- mariadb-10.3.12_old/CMakeLists.txt 2019-01-04 16:28:48.000000000 +0100 ++++ mariadb-10.3.12/CMakeLists.txt 2019-01-16 10:00:46.533805602 +0100 +@@ -14,7 +14,8 @@ + # along with this program; if not, write to the Free Software + # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.7) ++# Not sure, if we could push this further up, 3.0.2 is the oldest documented 3.X version with check_c(xx)_compiler_flag ++CMAKE_MINIMUM_REQUIRED(VERSION 3.0.2 FATAL_ERROR) + + IF(POLICY CMP0022) + CMAKE_POLICY(SET CMP0022 NEW) +diff -U 3 -dHrN -- mariadb-10.3.12_old/configure.cmake mariadb-10.3.12/configure.cmake +--- mariadb-10.3.12_old/configure.cmake 2019-01-04 16:28:48.000000000 +0100 ++++ mariadb-10.3.12/configure.cmake 2019-01-16 09:59:06.603167181 +0100 +@@ -277,7 +277,7 @@ + FIND_PACKAGE (Threads) + + FUNCTION(MY_CHECK_PTHREAD_ONCE_INIT) +- MY_CHECK_C_COMPILER_FLAG("-Werror") ++ check_c_compiler_flag("-Werror" have_C__Werror) + IF(NOT have_C__Werror) + RETURN() + ENDIF() |