Skip to content

Commit e81030c

Browse files
committed
Bug#17633291: SET PROPER COMPILE OPTIONS FOR CLANG
Bug#17959689: MAKE GCC AND CLANG GIVE CONSISTENT COMPILATION WARNINGS Bug#18313717: ENABLE -WERROR IN MAINTANER MODE WHEN COMPILING WITH CLANG Bug#18510941: REMOVE CMAKE WORKAROUNDS FOR OLDER VERSIONS OF OS X/XCODE Backport from mysql-trunk to mysql-5.6 (revno: 6744, 7217, 7634, 7635, 7823)
1 parent 76a4fb4 commit e81030c

9 files changed

Lines changed: 112 additions & 185 deletions

File tree

CMakeLists.txt

Lines changed: 49 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,12 @@ ENDIF()
2727

2828
# We use the LOCATION target property (CMP0026)
2929
# and get_target_property() for non-existent targets (CMP0045)
30+
# and INSTALL_NAME_DIR (CMP0042)
3031
IF(CMAKE_VERSION VERSION_EQUAL "3.0.0" OR
3132
CMAKE_VERSION VERSION_GREATER "3.0.0")
3233
CMAKE_POLICY(SET CMP0026 OLD)
3334
CMAKE_POLICY(SET CMP0045 OLD)
35+
CMAKE_POLICY(SET CMP0042 OLD)
3436
ENDIF()
3537

3638
MESSAGE(STATUS "Running cmake version ${CMAKE_VERSION}")
@@ -74,15 +76,8 @@ SET(BUILDTYPE_DOCSTRING
7476
"Choose the type of build, options are: None(CMAKE_CXX_FLAGS or
7577
CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel")
7678

77-
# Possibly temporary fix: Clang on 32 bit causes non-debug server to crash
78-
IF(CMAKE_OSX_ARCHITECTURES MATCHES "i386")
79-
SET(CMAKE_CXX_COMPILER g++)
80-
ENDIF()
81-
8279
IF(WITH_DEBUG)
8380
SET(CMAKE_BUILD_TYPE "Debug" CACHE STRING ${BUILDTYPE_DOCSTRING} FORCE)
84-
SET(MYSQL_MAINTAINER_MODE ON CACHE BOOL
85-
"MySQL maintainer-specific development environment")
8681
IF(UNIX AND NOT APPLE)
8782
# Compiling with PIC speeds up embedded build, on PIC sensitive systems
8883
# Predefine it to ON, in case user chooses to build embedded.
@@ -112,6 +107,15 @@ ELSE()
112107
ENDIF()
113108
PROJECT(${MYSQL_PROJECT_NAME})
114109

110+
# Maintainer mode is default on only for Linux debug builds using GCC/G++
111+
IF(CMAKE_BUILD_TYPE MATCHES "Debug" OR WITH_DEBUG)
112+
IF(CMAKE_SYSTEM_NAME MATCHES "Linux" AND
113+
CMAKE_COMPILER_IS_GNUCC AND CMAKE_COMPILER_IS_GNUCXX)
114+
SET(MYSQL_MAINTAINER_MODE ON CACHE BOOL
115+
"MySQL maintainer-specific development environment")
116+
ENDIF()
117+
ENDIF()
118+
115119
OPTION(WITH_DEFAULT_COMPILER_OPTIONS
116120
"Use flags from cmake/build_configurations/compiler_options.cmake"
117121
ON)
@@ -168,31 +172,6 @@ IF(WITH_DEFAULT_FEATURE_SET)
168172
INCLUDE(${CMAKE_SOURCE_DIR}/cmake/build_configurations/feature_set.cmake)
169173
ENDIF()
170174

171-
#
172-
# Control aspects of the development environment which are
173-
# specific to MySQL maintainers and developers.
174-
#
175-
INCLUDE(maintainer)
176-
177-
OPTION(MYSQL_MAINTAINER_MODE
178-
"MySQL maintainer-specific development environment" OFF)
179-
180-
# Whether the maintainer mode compiler options should be enabled.
181-
IF(MYSQL_MAINTAINER_MODE)
182-
IF(CMAKE_C_COMPILER_ID MATCHES "GNU")
183-
SET_MYSQL_MAINTAINER_GNU_C_OPTIONS()
184-
ENDIF()
185-
IF(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
186-
SET_MYSQL_MAINTAINER_GNU_CXX_OPTIONS()
187-
ENDIF()
188-
IF(CMAKE_C_COMPILER_ID MATCHES "Intel")
189-
SET_MYSQL_MAINTAINER_INTEL_C_OPTIONS()
190-
ENDIF()
191-
IF(CMAKE_CXX_COMPILER_ID MATCHES "Intel")
192-
SET_MYSQL_MAINTAINER_INTEL_CXX_OPTIONS()
193-
ENDIF()
194-
ENDIF()
195-
196175
# Add macros
197176
INCLUDE(character_sets)
198177
INCLUDE(cpu_info)
@@ -436,21 +415,10 @@ MYSQL_CHECK_LIBEVENT()
436415
# Why doesn't these flags affect the entire build?
437416
# Because things may already have been included with ADD_SUBDIRECTORY
438417
#
439-
IF(MYSQL_MAINTAINER_MODE)
440-
# Set compiler flags required under maintainer mode.
441-
MESSAGE(STATUS "C warning options: ${MY_MAINTAINER_C_WARNINGS}")
442-
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MY_MAINTAINER_C_WARNINGS}")
443-
MESSAGE(STATUS "C++ warning options: ${MY_MAINTAINER_CXX_WARNINGS}")
444-
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MY_MAINTAINER_CXX_WARNINGS}")
445-
ENDIF()
446-
447-
IF(CMAKE_COMPILER_IS_GNUCXX)
448-
STRING(REGEX MATCH "-Werror"
449-
BUILD_WITH_WERROR ${CMAKE_CXX_FLAGS})
450-
IF(BUILD_WITH_WERROR)
451-
SET("COMPILE_FLAG_WERROR" 1)
452-
ENDIF()
453-
ENDIF()
418+
OPTION(MYSQL_MAINTAINER_MODE
419+
"MySQL maintainer-specific development environment" OFF)
420+
421+
INCLUDE(maintainer)
454422

455423
IF(WITH_UNIT_TESTS)
456424
ENABLE_TESTING()
@@ -599,3 +567,37 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
599567
ENDIF()
600568

601569
INCLUDE(CPack)
570+
571+
# C compiler flags consist of:
572+
# CPPFLAGS Taken from environment, see above.
573+
# ADD_DEFINITIONS In each individual CMakeLists.txt
574+
# CMAKE_C_FLAGS From command line.
575+
# We extend these in maintainer.cmake
576+
# ENV{CFLAGS} From environment, but environment is ignored if
577+
# CMAKE_C_FLAGS is also given on command line
578+
# CMAKE_C_FLAGS_${CMAKE_BUILD_TYPE}
579+
# We extend these in compiler_options.cmake
580+
#
581+
# Note that CMakeCache.txt contains cmake builtins for these variables,
582+
# *not* the values that will actually be used:
583+
584+
IF(CMAKE_GENERATOR MATCHES "Makefiles")
585+
MESSAGE(STATUS "CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
586+
ENDIF()
587+
GET_PROPERTY(cwd_definitions DIRECTORY PROPERTY COMPILE_DEFINITIONS)
588+
MESSAGE(STATUS "COMPILE_DEFINITIONS: ${cwd_definitions}")
589+
MESSAGE(STATUS "CMAKE_C_FLAGS: ${CMAKE_C_FLAGS}")
590+
MESSAGE(STATUS "CMAKE_CXX_FLAGS: ${CMAKE_CXX_FLAGS}")
591+
IF(CMAKE_BUILD_TYPE AND CMAKE_GENERATOR MATCHES "Makefiles")
592+
STRING(TOUPPER "${CMAKE_BUILD_TYPE}" CMAKEBT)
593+
MESSAGE(STATUS "CMAKE_C_FLAGS_${CMAKEBT}: ${CMAKE_C_FLAGS_${CMAKEBT}}")
594+
MESSAGE(STATUS "CMAKE_CXX_FLAGS_${CMAKEBT}: ${CMAKE_CXX_FLAGS_${CMAKEBT}}")
595+
ENDIF()
596+
IF(NOT CMAKE_GENERATOR MATCHES "Makefiles")
597+
MESSAGE(STATUS "CMAKE_C_FLAGS_DEBUG: ${CMAKE_C_FLAGS_DEBUG}")
598+
MESSAGE(STATUS "CMAKE_CXX_FLAGS_DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}")
599+
MESSAGE(STATUS
600+
"CMAKE_C_FLAGS_RELWITHDEBINFO: ${CMAKE_C_FLAGS_RELWITHDEBINFO}")
601+
MESSAGE(STATUS
602+
"CMAKE_CXX_FLAGS_RELWITHDEBINFO: ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
603+
ENDIF()

cmake/build_configurations/compiler_options.cmake

Lines changed: 8 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -43,47 +43,16 @@ IF(UNIX)
4343
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 ${COMMON_CXX_FLAGS}")
4444
ENDIF()
4545

46-
# HPUX flags
47-
IF(CMAKE_SYSTEM_NAME MATCHES "HP-UX")
48-
IF(CMAKE_C_COMPILER_ID MATCHES "HP")
49-
IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ia64")
50-
SET(COMMON_C_FLAGS "+DSitanium2 -mt -AC99")
51-
SET(COMMON_CXX_FLAGS "+DSitanium2 -mt -Aa")
52-
SET(CMAKE_C_FLAGS_DEBUG "+O0 -g ${COMMON_C_FLAGS}")
53-
SET(CMAKE_CXX_FLAGS_DEBUG "+O0 -g ${COMMON_CXX_FLAGS}")
54-
# We have seen compiler bugs with optimisation and -g, so disabled for now
55-
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "+O2 ${COMMON_C_FLAGS}")
56-
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "+O2 ${COMMON_CXX_FLAGS}")
57-
ENDIF()
58-
ENDIF()
59-
SET(WITH_SSL no)
60-
ENDIF()
61-
62-
# Linux flags
63-
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
64-
IF(CMAKE_C_COMPILER_ID MATCHES "Intel")
65-
SET(COMMON_C_FLAGS "-static-intel -static-libgcc -g -mp -restrict")
66-
SET(COMMON_CXX_FLAGS "-static-intel -static-libgcc -g -mp -restrict")
67-
IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ia64")
68-
SET(COMMON_C_FLAGS "${COMMON_C_FLAGS} -no-ftz -no-prefetch")
69-
SET(COMMON_CXX_FLAGS "${COMMON_CXX_FLAGS} -no-ftz -no-prefetch")
70-
ENDIF()
71-
SET(CMAKE_C_FLAGS_DEBUG "${COMMON_C_FLAGS}")
72-
SET(CMAKE_CXX_FLAGS_DEBUG "${COMMON_CXX_FLAGS}")
73-
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-O3 -unroll2 -ip ${COMMON_C_FLAGS}")
74-
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -unroll2 -ip ${COMMON_CXX_FLAGS}")
75-
SET(WITH_SSL no)
76-
ENDIF()
46+
# Default Clang flags
47+
IF(CMAKE_C_COMPILER_ID MATCHES "Clang")
48+
SET(COMMON_C_FLAGS "-g -fno-omit-frame-pointer -fno-strict-aliasing")
49+
SET(CMAKE_C_FLAGS_DEBUG "${COMMON_C_FLAGS}")
50+
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-O3 ${COMMON_C_FLAGS}")
7751
ENDIF()
78-
79-
# OSX flags
80-
IF(APPLE)
81-
SET(COMMON_C_FLAGS "-g -fno-strict-aliasing")
82-
SET(COMMON_CXX_FLAGS "-g -fno-strict-aliasing")
83-
SET(CMAKE_C_FLAGS_DEBUG "${COMMON_C_FLAGS}")
52+
IF(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
53+
SET(COMMON_CXX_FLAGS "-g -fno-omit-frame-pointer -fno-strict-aliasing")
8454
SET(CMAKE_CXX_FLAGS_DEBUG "${COMMON_CXX_FLAGS}")
85-
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-Os ${COMMON_C_FLAGS}")
86-
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-Os ${COMMON_CXX_FLAGS}")
55+
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 ${COMMON_CXX_FLAGS}")
8756
ENDIF()
8857

8958
# Solaris flags

cmake/maintainer.cmake

Lines changed: 36 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
1+
# Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
22
#
33
# This program is free software; you can redistribute it and/or modify
44
# it under the terms of the GNU General Public License as published by
@@ -13,44 +13,38 @@
1313
# along with this program; if not, write to the Free Software
1414
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1515

16-
INCLUDE(CheckCCompilerFlag)
17-
18-
# Setup GCC (GNU C compiler) warning options.
19-
MACRO(SET_MYSQL_MAINTAINER_GNU_C_OPTIONS)
20-
SET(MY_MAINTAINER_WARNINGS
21-
"-Wall -Wextra -Wunused -Wwrite-strings -Wno-strict-aliasing -Werror")
22-
23-
CHECK_C_COMPILER_FLAG("-Wdeclaration-after-statement"
24-
HAVE_DECLARATION_AFTER_STATEMENT)
25-
IF(HAVE_DECLARATION_AFTER_STATEMENT)
26-
SET(MY_MAINTAINER_DECLARATION_AFTER_STATEMENT
27-
"-Wdeclaration-after-statement")
28-
ENDIF()
29-
SET(MY_MAINTAINER_C_WARNINGS
30-
"${MY_MAINTAINER_WARNINGS} ${MY_MAINTAINER_DECLARATION_AFTER_STATEMENT}"
31-
CACHE STRING "C warning options used in maintainer builds.")
32-
# Do not make warnings in checks into errors.
33-
SET(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -Wno-error")
34-
ENDMACRO()
35-
36-
37-
# Setup G++ (GNU C++ compiler) warning options.
38-
MACRO(SET_MYSQL_MAINTAINER_GNU_CXX_OPTIONS)
39-
SET(MY_MAINTAINER_CXX_WARNINGS
40-
"${MY_MAINTAINER_WARNINGS} -Wno-unused-parameter -Woverloaded-virtual"
41-
CACHE STRING "C++ warning options used in maintainer builds.")
42-
ENDMACRO()
43-
44-
# Setup ICC (Intel C Compiler) warning options.
45-
MACRO(SET_MYSQL_MAINTAINER_INTEL_C_OPTIONS)
46-
SET(MY_MAINTAINER_WARNINGS "-Wcheck")
47-
SET(MY_MAINTAINER_C_WARNINGS "${MY_MAINTAINER_WARNINGS}"
48-
CACHE STRING "C warning options used in maintainer builds.")
49-
ENDMACRO()
50-
51-
# Setup ICPC (Intel C++ Compiler) warning options.
52-
MACRO(SET_MYSQL_MAINTAINER_INTEL_CXX_OPTIONS)
53-
SET(MY_MAINTAINER_CXX_WARNINGS "${MY_MAINTAINER_WARNINGS}"
54-
CACHE STRING "C++ warning options used in maintainer builds.")
55-
ENDMACRO()
56-
16+
# Common warning flags for GCC, G++, Clang and Clang++
17+
SET(MY_WARNING_FLAGS "-Wall -Wextra -Wformat-security")
18+
MY_CHECK_C_COMPILER_FLAG("-Wvla" HAVE_WVLA) # Requires GCC 4.3+ or Clang
19+
IF(HAVE_WVLA)
20+
SET(MY_WARNING_FLAGS "${MY_WARNING_FLAGS} -Wvla")
21+
ENDIF()
22+
23+
# Common warning flags for GCC and Clang
24+
SET(MY_C_WARNING_FLAGS
25+
"${MY_WARNING_FLAGS} -Wwrite-strings -Wdeclaration-after-statement")
26+
27+
# Common warning flags for G++ and Clang++
28+
SET(MY_CXX_WARNING_FLAGS
29+
"${MY_WARNING_FLAGS} -Woverloaded-virtual -Wno-unused-parameter")
30+
31+
# Extra warning flags for Clang++
32+
IF(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
33+
SET(MY_CXX_WARNING_FLAGS
34+
"${MY_CXX_WARNING_FLAGS} -Wno-null-conversion -Wno-unused-private-field")
35+
ENDIF()
36+
37+
# Turn on Werror (warning => error) when using maintainer mode.
38+
IF(MYSQL_MAINTAINER_MODE)
39+
SET(MY_C_WARNING_FLAGS "${MY_C_WARNING_FLAGS} -Werror")
40+
SET(MY_CXX_WARNING_FLAGS "${MY_CXX_WARNING_FLAGS} -Werror")
41+
ENDIF()
42+
43+
# Set warning flags for GCC/Clang
44+
IF(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
45+
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MY_C_WARNING_FLAGS}")
46+
ENDIF()
47+
# Set warning flags for G++/Clang++
48+
IF(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
49+
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MY_CXX_WARNING_FLAGS}")
50+
ENDIF()

cmake/os/Darwin.cmake

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -15,24 +15,6 @@
1515

1616
# This file includes OSX specific options and quirks, related to system checks
1717

18-
# Workaround for CMake bug#9051
19-
# (CMake does not pass CMAKE_OSX_SYSROOT and CMAKE_OSX_DEPLOYMENT_TARGET when
20-
# running TRY_COMPILE)
21-
22-
IF(CMAKE_OSX_SYSROOT)
23-
SET(ENV{CMAKE_OSX_SYSROOT} ${CMAKE_OSX_SYSROOT})
24-
ENDIF()
25-
IF(CMAKE_OSX_SYSROOT)
26-
SET(ENV{MACOSX_DEPLOYMENT_TARGET} ${OSX_DEPLOYMENT_TARGET})
27-
ENDIF()
28-
29-
IF(CMAKE_OSX_DEPLOYMENT_TARGET)
30-
# Workaround linker problems on OSX 10.4
31-
IF(CMAKE_OSX_DEPLOYMENT_TARGET VERSION_LESS "10.5")
32-
ADD_DEFINITIONS(-fno-common)
33-
ENDIF()
34-
ENDIF()
35-
3618
# This is used for the version_compile_machine variable.
3719
IF(CMAKE_SIZEOF_VOID_P MATCHES 8)
3820
SET(MYSQL_MACHINE_TYPE "x86_64")

config.h.cmake

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
1+
/* Copyright (c) 2009, 2014, Oracle and/or its affiliates. All rights reserved.
22

33
This program is free software; you can redistribute it and/or modify
44
it under the terms of the GNU General Public License as published by
@@ -605,7 +605,6 @@
605605
#cmakedefine HAVE_CHARSET_utf32 1
606606
#cmakedefine HAVE_UCA_COLLATIONS 1
607607
#cmakedefine HAVE_COMPRESS 1
608-
#cmakedefine COMPILE_FLAG_WERROR 1
609608

610609
/*
611610
Stuff that always need to be defined (compile breaks without it)

configure.cmake

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -58,25 +58,6 @@ ENDIF()
5858
# other threads.
5959
SET(SIGNAL_WITH_VIO_SHUTDOWN 1)
6060

61-
# Always enable -Wall for gnu C/C++
62-
# Remember to strip off these in scripts/CMakeLists.txt
63-
IF(CMAKE_COMPILER_IS_GNUCXX)
64-
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unused-parameter")
65-
ENDIF()
66-
IF(CMAKE_COMPILER_IS_GNUCC)
67-
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
68-
ENDIF()
69-
70-
# Remember to strip off these in scripts/CMakeLists.txt
71-
IF(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
72-
SET(CMAKE_CXX_FLAGS
73-
"${CMAKE_CXX_FLAGS} -Wall -Wno-null-conversion -Wno-unused-private-field")
74-
ENDIF()
75-
IF(CMAKE_C_COMPILER_ID MATCHES "Clang")
76-
SET(CMAKE_C_FLAGS
77-
"${CMAKE_C_FLAGS} -Wall -Wno-null-conversion -Wno-unused-private-field")
78-
ENDIF()
79-
8061
# The default C++ library for SunPro is really old, and not standards compliant.
8162
# http://www.oracle.com/technetwork/server-storage/solaris10/cmp-stlport-libcstd-142559.html
8263
# Use stlport rather than Rogue Wave.

plugin/auth/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,9 @@ MYSQL_ADD_PLUGIN(qa_auth_client qa_auth_client.c
2929
MODULE_ONLY)
3030

3131
CHECK_CXX_SOURCE_COMPILES(
32-
"#define _GNU_SOURCE
32+
"#ifndef _GNU_SOURCE
33+
#define _GNU_SOURCE
34+
#endif
3335
#include <sys/socket.h>
3436
int main() {
3537
struct ucred cred;

scripts/CMakeLists.txt

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -89,31 +89,22 @@ ENDIF()
8989

9090
IF(CMAKE_GENERATOR MATCHES "Makefiles")
9191
# Strip maintainer mode options if necessary
92-
STRING(REPLACE "${MY_MAINTAINER_C_WARNINGS}" "" CFLAGS
92+
STRING(REPLACE "${MY_C_WARNING_FLAGS}" "" CFLAGS
9393
"${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_RELWITHDEBINFO}")
94-
STRING(REPLACE "${MY_MAINTAINER_CXX_WARNINGS}" "" CXXFLAGS
94+
STRING(REPLACE "${MY_CXX_WARNING_FLAGS}" "" CXXFLAGS
9595
"${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
9696
FOREACH(ARCH ${CMAKE_OSX_ARCHITECTURES})
9797
SET(CFLAGS "${CFLAGS} -arch ${ARCH}")
9898
SET(CXXFLAGS "${CXXFLAGS} -arch ${ARCH}")
9999
ENDFOREACH()
100100
ELSE()
101101
# Strip maintainer mode options if necessary
102-
STRING(REPLACE "${MY_MAINTAINER_C_WARNINGS}" "" CFLAGS
102+
STRING(REPLACE "${MY_C_WARNING_FLAGS}" "" CFLAGS
103103
"${CMAKE_C_FLAGS_RELWITHDEBINFO}")
104-
STRING(REPLACE "${MY_MAINTAINER_CXX_WARNINGS}" "" CXXFLAGS
104+
STRING(REPLACE "${MY_CXX_WARNING_FLAGS}" "" CXXFLAGS
105105
"${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
106106
ENDIF()
107107

108-
FOREACH(WFLAG
109-
"-Wno-null-conversion"
110-
"-Wno-unused-parameter"
111-
"-Wno-unused-private-field"
112-
)
113-
STRING(REPLACE "${WFLAG}" "" CFLAGS "${CFLAGS}")
114-
STRING(REPLACE "${WFLAG}" "" CXXFLAGS "${CXXFLAGS}")
115-
ENDFOREACH()
116-
117108
IF(UNIX)
118109
# FIND_PROC and CHECK_PID are used by mysqld_safe
119110
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")

0 commit comments

Comments
 (0)