View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0014658CMakeCMakepublic2013-12-18 22:412014-06-02 08:37
Reporterjschroeder 
Assigned ToBrad King 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product VersionCMake 2.8.12 
Target VersionCMake 3.0Fixed in VersionCMake 3.0 
Summary0014658: Document CMAKE_VERBOSE_MAKEFILE initialization
DescriptionThis may be OS and generator independent. (I've reproduced it on Windows 7 (with MS Visual Studio) and Ubuntu 12.04 (with GNUmake/GCC).)

Using project() in a CMakeLists.txt file causes CMAKE_VERBOSE_MAKEFILE to be 0/False
Steps To Reproduce1. Run cmake on the following (minimal) CMakeLists.txt file.

Result: in the cmake output, the second message reporting the value of CMAKE_VERBOSE_MAKEFILE is "FALSE". (See output below.)

Expected result: in the cmake output, both lines reporting CMAKE_VERBOSE_MAKEFILE should be 1 (or True)
 


========begin CMakeLists.txt==========
cmake_minimum_required(VERSION 2.8.12) # I'm not sure how far back this bug might go

set(CMAKE_VERBOSE_MAKEFILE 1)

message(STATUS "CMAKE_VERBOSE_MAKEFILE ${CMAKE_VERBOSE_MAKEFILE}")
project(dummy)
message(STATUS "CMAKE_VERBOSE_MAKEFILE ${CMAKE_VERBOSE_MAKEFILE}")
========end CMakeLists.txt==========

foobar@ubuntu:~/build$ cmake ..
-- CMAKE_VERBOSE_MAKEFILE 1
-- The C compiler identification is GNU 4.6.3
-- The CXX compiler identification is GNU 4.6.3
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- CMAKE_VERBOSE_MAKEFILE FALSE
-- Configuring done
-- Generating done
-- Build files have been written to: /home/foobar/build
TagsNo tags attached.
Attached Filestxt file icon CMakeLists.txt [^] (227 bytes) 2013-12-18 22:41 [Show Content]

 Relationships

  Notes
(0034820)
Brad King (manager)
2013-12-19 10:33

CMAKE_VERBOSE_MAKEFILE is a cache entry that is initialized by the project() command. It is meant to be set in a local build tree by the user. If you want to override the cache initialization in the project then use

 set(CMAKE_VERBOSE_MAKEFILE 1 CACHE BOOL "Enable verbose make output.")
 project(...)

If you want to override it and ignore the cache entry then use

 project(...)
 set(CMAKE_VERBOSE_MAKEFILE 1)
(0034830)
jschroeder (reporter)
2013-12-19 14:28

Sorry for reporting a non-bug. Thanks for the fast response.
(0034831)
Brad King (manager)
2013-12-19 14:51

To help others with this I've clarified the documentation:

 Help: Clarify CMAKE_VERBOSE_MAKEFILE initialization
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0227ece0 [^]
(0036060)
Robert Maynard (manager)
2014-06-02 08:37

Closing resolved issues that have not been updated in more than 4 months.

 Issue History
Date Modified Username Field Change
2013-12-18 22:41 jschroeder New Issue
2013-12-18 22:41 jschroeder File Added: CMakeLists.txt
2013-12-19 10:33 Brad King Note Added: 0034820
2013-12-19 14:28 jschroeder Note Added: 0034830
2013-12-19 14:51 Brad King Note Added: 0034831
2013-12-19 14:51 Brad King Assigned To => Brad King
2013-12-19 14:51 Brad King Status new => resolved
2013-12-19 14:51 Brad King Resolution open => fixed
2013-12-19 14:51 Brad King Fixed in Version => CMake 3.0
2013-12-19 14:51 Brad King Target Version => CMake 3.0
2013-12-19 14:51 Brad King Summary project() resets CMAKE_VERBOSE_MAKEFILE => Document CMAKE_VERBOSE_MAKEFILE initialization
2014-06-02 08:37 Robert Maynard Note Added: 0036060
2014-06-02 08:37 Robert Maynard Status resolved => closed


Copyright © 2000 - 2018 MantisBT Team