| View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
| ID | Project | Category | View Status | Date Submitted | Last Update | ||||
| 0015808 | CMake | CMake | public | 2015-10-25 22:24 | 2016-03-07 09:12 | ||||
| Reporter | ovz | ||||||||
| Assigned To | |||||||||
| Priority | high | Severity | block | Reproducibility | always | ||||
| Status | closed | Resolution | no change required | ||||||
| Platform | Windows 8.1 | OS | OS Version | ||||||
| Product Version | |||||||||
| Target Version | Fixed in Version | ||||||||
| Summary | 0015808: POST_BUILD command for "Visual Studio 14 2015" generates superfluous "C:" | ||||||||
| Description | If I specify WORKING_DIRECTORY in add_custom_command(... POST_BUILD ..) the following snippet is generated in Post-Build event code. Note that extra command specifying just "C:" after expected cd command. setlocal cd C:\__temp\src\cmake\post_build_work_dir\build\working_dir if %errorlevel% neq 0 goto :cmEnd C: if %errorlevel% neq 0 goto :cmEnd | ||||||||
| Steps To Reproduce | * Unpack post_build_work_dir.zip in attachment. * You can inspect contents of the build directory. These are CMake generated files I get on my machine. * Clean up build directory * Run commands cd build cmake -G "Visual Studio 14 2015" .. * Open build/post_build_work_dir.sln * In Visual Studio right-click on post_build_work_dir project. Select Properties * Navigate to Configuration Properties > Build Events > Post-Build Event * Note the extra "C:" command in the post-build event text | ||||||||
| Additional Information | Here is full text of Post-Build event generated after following steps of reproduction setlocal cd C:\__temp\src\cmake\post_build_work_dir\build\working_dir if %errorlevel% neq 0 goto :cmEnd C: if %errorlevel% neq 0 goto :cmEnd some_command if %errorlevel% neq 0 goto :cmEnd :cmEnd endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone :cmErrorLevel exit /b %1 :cmDone if %errorlevel% neq 0 goto :VCEnd | ||||||||
| Tags | No tags attached. | ||||||||
| Attached Files | |||||||||
| Relationships | |
| Relationships |
| Notes | |
|
(0039674) ovz (reporter) 2015-10-25 22:26 |
Reproduced with both CMake 3.3.2 and CMake 3.4.0-rc2 |
|
(0039675) Brad King (manager) 2015-10-26 08:41 |
The "C:" command ensures that the current working drive is correct. The "cd c:\..." command only changes the working directory for the given drive. |
|
(0039678) ovz (reporter) 2015-10-26 11:24 |
Makes sense. Haven't worked with multiple drives for some time already. We can close this issue. |
|
(0039685) Gregor Jasny (developer) 2015-10-27 15:02 |
You could use /d switch for cd command to also change drive: http://ss64.com/nt/cd.html [^] |
|
(0039686) Brad King (manager) 2015-10-27 15:08 |
Re 0015808:0039685: That's not portable to older cmd versions. |
|
(0040627) Robert Maynard (manager) 2016-03-07 09:12 |
Closing resolved issues that have not been updated in more than 4 months. |
| Notes |
| Issue History | |||
| Date Modified | Username | Field | Change |
| 2015-10-25 22:24 | ovz | New Issue | |
| 2015-10-25 22:24 | ovz | File Added: post_build_work_dir.zip | |
| 2015-10-25 22:26 | ovz | Note Added: 0039674 | |
| 2015-10-26 08:41 | Brad King | Note Added: 0039675 | |
| 2015-10-26 11:24 | ovz | Note Added: 0039678 | |
| 2015-10-26 12:03 | Brad King | Status | new => resolved |
| 2015-10-26 12:03 | Brad King | Resolution | open => no change required |
| 2015-10-27 15:02 | Gregor Jasny | Note Added: 0039685 | |
| 2015-10-27 15:08 | Brad King | Note Added: 0039686 | |
| 2016-03-07 09:12 | Robert Maynard | Note Added: 0040627 | |
| 2016-03-07 09:12 | Robert Maynard | Status | resolved => closed |
| Issue History |
| Copyright © 2000 - 2018 MantisBT Team |