[cmake-developers] [CMake 0015518]: PDB_NAME documentation doesn't mention that it uses OUTPUT_NAME if defined

Mantis Bug Tracker mantis at public.kitware.com
Fri Apr 17 04:03:47 EDT 2015


The following issue has been SUBMITTED. 
====================================================================== 
http://www.cmake.org/Bug/view.php?id=15518 
====================================================================== 
Reported By:                Paul "TBBle" Hampson
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   15518
Category:                   CMake
Reproducibility:            always
Severity:                   text
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2015-04-17 04:03 EDT
Last Modified:              2015-04-17 04:03 EDT
====================================================================== 
Summary:                    PDB_NAME documentation doesn't mention that it uses
OUTPUT_NAME if defined
Description: 
The PDB_NAME documentation has always stated:

This property specifies the base name for the debug symbols file. If not set,
the logical target name is used by default.

(since 2.8.10 when it was introduced:
http://www.cmake.org/cmake/help/v2.8.10/cmake.html#prop_tgt:PDB_NAME up to 3.2:
http://www.cmake.org/cmake/help/v3.2/prop_tgt/PDB_NAME.html)

However, examining the original commit
(http://www.cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3f60dbf1#patch7) shows
that it actually uses cmTarget::GetFullNameInternal, which honours OUTPUT_NAME.

This is also true of the _<CONFIG> variants.

It's correct behaviour, so it's just the documentation that needs updating,
hence the given Severity.

Steps to Reproduce: 
* Create a target using OUTPUT_NAME that differs from the logical target name.
* Generate a Visual Studio solution
* Note that the PDB generated is OUTPUT_NAME.pdb, not logicalName.pdb.

Additional Information: 
The unit tests don't cover this case, but I expect that a unit test setting
OUTPUT_NAME and PDB_NAME would trivially demonstrate the actual behaviour.

I assume the text was just copied from the OUTPUT_NAME documentation, which is
the only other place that this text appears, and it makes sense there.
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2015-04-17 04:03 Paul "TBBle" HampsonNew Issue                                  
 
======================================================================



More information about the cmake-developers mailing list