View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0014023 | CMake | CMake | public | 2013-03-18 13:15 | 2013-11-04 09:33 | ||||
Reporter | Andreas Mohr | ||||||||
Assigned To | Brad King | ||||||||
Priority | normal | Severity | minor | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | PC | OS | Windows | OS Version | 7 | ||||
Product Version | CMake 2.8.10.2 | ||||||||
Target Version | CMake 2.8.12 | Fixed in Version | CMake 2.8.12 | ||||||
Summary | 0014023: cmake -E touch / touch_nocreate of a directory fails on Windows yet succeeds on Linux | ||||||||
Description | Touching a *file* returns success on both Windows and Linux, yet touching a *directory* succeeds on Linux (ext3) and fails on Windows 7 32bit (NTFS). Of course I wouldn't be reporting it here if it weren't for the fact that I got a bloody nose from that ;) (while trying to use these things in a build-time mechanism) I'm not quite sure whether this really is something that should be made consistent in CMake's implementation, since it might simply be a difference in underlying filesystem mechanisms of the platforms. IOW, I don't know whether CMake's system-side implementation contains a stupid mistake, or whether it's simply that touch:ing a directory on Windows is supposed to do what it currently does. Any ideas, hints? Thanks! | ||||||||
Steps To Reproduce | cmake_minimum_required(VERSION 2.6) project(test_touch_nocreate NONE) set(touch_sample_1 "${CMAKE_BINARY_DIR}/mytestdir") file(MAKE_DIRECTORY "${touch_sample_1}") set(touch_sample_2 "${CMAKE_CURRENT_LIST_FILE}") set(mytouch "${touch_sample_1}") # This works: #set(mytouch "${touch_sample_2}") # Does not matter whether we choose touch or touch_nocreate. set(touch_cmd_1 "touch") set(touch_cmd_2 "touch_nocreate") set(touch_cmd "${touch_cmd_1}") execute_process( COMMAND "${CMAKE_COMMAND}" -E ${touch_cmd} "${mytouch}" RESULT_VARIABLE res ) message("res is ${res}") | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | |||||||||
Relationships | ||||||
|
Relationships |
Notes | |
(0032667) Brad King (manager) 2013-03-18 13:39 |
CMake is just using "uname" on the path to set the time: http://cmake.org/gitweb?p=cmake.git;a=blob;f=Source/kwsys/SystemTools.cxx;hb=v2.8.10.2#l1134 [^] However, see 0014020 for why that is no longer sufficient. Moving to backlog awaiting a volunteer with enough time to address both issues. |
(0033206) Brad King (manager) 2013-06-03 10:47 |
Fixed in upstream KWSys here: http://public.kitware.com/gitweb?p=KWSys.git;a=commitdiff;h=dccf7725 [^] and integrated into CMake here: http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d66f6f36 [^] |
(0034353) Robert Maynard (manager) 2013-11-04 09:33 |
Closing resolved issues that have not been updated in more than 4 months. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2013-03-18 13:15 | Andreas Mohr | New Issue | |
2013-03-18 13:38 | Brad King | Relationship added | related to 0014020 |
2013-03-18 13:39 | Brad King | Note Added: 0032667 | |
2013-03-18 13:39 | Brad King | Status | new => backlog |
2013-05-31 16:38 | Brad King | Assigned To | => Brad King |
2013-05-31 16:38 | Brad King | Status | backlog => assigned |
2013-05-31 16:38 | Brad King | Target Version | => CMake 2.8.12 |
2013-06-03 10:47 | Brad King | Note Added: 0033206 | |
2013-06-03 10:47 | Brad King | Status | assigned => resolved |
2013-06-03 10:47 | Brad King | Resolution | open => fixed |
2013-06-03 10:47 | Brad King | Fixed in Version | => CMake 2.8.12 |
2013-11-04 09:33 | Robert Maynard | Note Added: 0034353 | |
2013-11-04 09:33 | Robert Maynard | Status | resolved => closed |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |