[llvm] r244406 - cmake: Error on invalid CMAKE_BUILD_TYPE

Justin Bogner via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 10 15:01:12 PDT 2015


Justin Bogner <mail at justinbogner.com> writes:
> Juergen Ributzka <juergen at apple.com> writes:
>> Hi Justin,
>>
>> Could you make the check case-insensitive?
>
> Sure, but I can't find anything that actually states that this is case
> insensitive. The CMake docs spell these as I have:
>
>   http://www.cmake.org/cmake/help/v3.0/variable/CMAKE_BUILD_TYPE.html
>
> Are you sure that checking case insensitively is correct?

Spoke to Juergen offline - looks like case is ignored by cmake here.
Fixed the check in r244516.

>>
>> —Juergen
>>
>>> On Aug 8, 2015, at 2:04 PM, Justin Bogner via llvm-commits <llvm-commits at lists.llvm.org> wrote:
>>> 
>>> Author: bogner
>>> Date: Sat Aug  8 16:04:45 2015
>>> New Revision: 244406
>>> 
>>> URL: http://llvm.org/viewvc/llvm-project?rev=244406&view=rev
>>> Log:
>>> cmake: Error on invalid CMAKE_BUILD_TYPE
>>> 
>>> Apparently if you make a typo in the argument to CMAKE_BUILD_TYPE,
>>> cmake silently accepts this but doesn't apply any particular build
>>> type to your build. This means you get a build that doesn't really
>>> make any sense - it's sort of a debug build with asserts disabled.
>>> 
>>> Error out instead.
>>> 
>>> Modified:
>>>    llvm/trunk/CMakeLists.txt
>>> 
>>> Modified: llvm/trunk/CMakeLists.txt
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CMakeLists.txt?rev=244406&r1=244405&r2=244406&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/CMakeLists.txt (original)
>>> +++ llvm/trunk/CMakeLists.txt Sat Aug  8 16:04:45 2015
>>> @@ -7,6 +7,11 @@ if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_C
>>>   set(CMAKE_BUILD_TYPE "Debug")
>>> endif()
>>> 
>>> +if (CMAKE_BUILD_TYPE AND
>>> +    NOT CMAKE_BUILD_TYPE MATCHES "^(Debug|Release|RelWithDebInfo|MinSizeRel)$")
>>> +  message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
>>> +endif()
>>> +
>>> if(POLICY CMP0022)
>>>   cmake_policy(SET CMP0022 NEW) # automatic when 2.8.12 is required
>>> endif()
>>> 
>>> 
>>> _______________________________________________
>>> llvm-commits mailing list
>>> llvm-commits at lists.llvm.org
>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list