[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cmake
Subject:    Re: [CMake] Where do all the extra clang flags come from in Xcode?
From:       Ruslan Baratov via CMake <cmake () cmake ! org>
Date:       2015-05-18 15:29:18
Message-ID: 555A054E.9030505 () yahoo ! com
[Download RAW message or body]

On 18-May-15 16:50, Parag Chandra wrote:
> In other words, these flags might very
> well be the same ones you'd see if you were to manually create an Xcode
> project via its wizards.
> 
Not exactly. Wizard add some extra attributes:
Xcode 6.2 -> New project -> OSX -> Application -> Command Line Tool

 > grep -i warn project.pbxproj
         CLANG_WARN_BOOL_CONVERSION = YES;
         CLANG_WARN_CONSTANT_CONVERSION = YES;
         CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
         CLANG_WARN_EMPTY_BODY = YES;
         CLANG_WARN_ENUM_CONVERSION = YES;
         CLANG_WARN_INT_CONVERSION = YES;
         CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
         CLANG_WARN_UNREACHABLE_CODE = YES;
         CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
         GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
         GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
         GCC_WARN_UNDECLARED_SELECTOR = YES;
         GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
         GCC_WARN_UNUSED_FUNCTION = YES;
         GCC_WARN_UNUSED_VARIABLE = YES;
         CLANG_WARN_BOOL_CONVERSION = YES;
         CLANG_WARN_CONSTANT_CONVERSION = YES;
         CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
         CLANG_WARN_EMPTY_BODY = YES;
         CLANG_WARN_ENUM_CONVERSION = YES;
         CLANG_WARN_INT_CONVERSION = YES;
         CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
         CLANG_WARN_UNREACHABLE_CODE = YES;
         CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
         GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
         GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
         GCC_WARN_UNDECLARED_SELECTOR = YES;
         GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
         GCC_WARN_UNUSED_FUNCTION = YES;
         GCC_WARN_UNUSED_VARIABLE = YES;

However CMake use others:
 > cmake -H. -B_builds -GXcode
 > grep -i warn project.pbxproj
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );
                             WARNING_CFLAGS = ("-Wmost", 
"-Wno-four-char-constants", "-Wno-unknown-pragmas", "$(inherited)", );

In CMake case Xcode set missing attributes to default values, some of 
them set to YES, some of them set to NO
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: \
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information \
on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at \
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic