View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0015672 | CMake | CMake | public | 2015-07-30 10:59 | 2016-01-04 11:51 | ||||
Reporter | A. Klitzing | ||||||||
Assigned To | Gregor Jasny | ||||||||
Priority | normal | Severity | major | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | OS | OSX | OS Version | 10.10 | |||||
Product Version | CMake 3.3 | ||||||||
Target Version | CMake 3.3.1 | Fixed in Version | CMake 3.3.1 | ||||||
Summary | 0015672: XCode project broken since cmake 3.3.0 | ||||||||
Description | We use cmake to build our application for iOS. If we try the same workflow with cmake 3.3.0 we get this error: $ cmakexbuild -target install 2015-07-30 16:41:03.453 xcodebuild[47660:18383918] CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary on line 1381. Parsing will be abandoned. Break on _CFPropertyListMissingSemicolon to debug. 2015-07-30 16:41:03.458 xcodebuild[47660:18383918] CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary on line 1381. Parsing will be abandoned. Break on _CFPropertyListMissingSemicolon to debug. 2015-07-30 16:41:03.459 xcodebuild[47660:18383918] The data couldn’t be read because it isn’t in the correct format. xcodebuild: error: Unable to read project 'XXX.xcodeproj'. Reason: Project /tmp/build/XXX.xcodeproj cannot be opened because the project file cannot be parsed. The same workflow works with cmake 3.0.x - 3.2.x! | ||||||||
Steps To Reproduce | 1. cmake ../XXX/ -DCMAKE_PREFIX_PATH=/tmp/thirdparty -DCMAKE_TOOLCHAIN_FILE=../XXX/cmake/iOS.toolchain.cmake -GXcode 2. cmakexbuild -target install Toolchain file: https://code.google.com/p/ios-cmake/source/browse/toolchain/iOS.cmake [^] | ||||||||
Additional Information | Line 1380 - 1382 of project.pbxproj 1380 2525E3626D4B43E89F8019E3 /* /tmp/XXX/resources/images/iOS/appIcons/icon29x29@2x.png */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = image; na me = "icon29x29@2x.png"; path = "resources/images/iOS/appIcons/icon29x29@2x.png"; sourceTree = SOURCE_ROOT; }; 1381 254B9DCBBC4947269D39ACED /* /tmp/XXX/resources/images/iOS/appIcons/icon29x29~ipad.png */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = image; name = icon29x29~ipad.png; path = resources/images/iOS/appIcons/icon29x29~ipad.png; sourceTree = SOURCE_ROOT; }; 1382 268D04D278914C12AE277A44 /* /tmp/XXX/resources/images/iOS/appIcons/icon40x40@2x~ipad.png */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = imag e; name = "icon40x40@2x~ipad.png"; path = "resources/images/iOS/appIcons/icon40x40@2x~ipad.png"; sourceTree = SOURCE_ROOT; }; | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | |||||||||
Relationships | |
Relationships |
Notes | |
(0039196) Brad King (manager) 2015-07-30 11:09 |
> cmakexbuild -target install Sode note: cmakexbuild has not been needed since Xcode 4.0 when the default amount of output became more reasonable. Even "cmake --build" will internally select cmakexbuild only on Xcode < 4 and otherwise use xcodebuild. |
(0039209) Gregor Jasny (developer) 2015-07-31 07:59 |
I pushed the fix-xcode-quoting topic branch and merged to next. |
(0039210) Brad King (manager) 2015-07-31 08:48 |
Re 0015672:0039209: Thanks. I rebased that back on 'release' and updated the commit message to reference the commit that caused the regression: Xcode: Quote strings containing a tilde http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f7a9ed7e [^] I also dropped the release note update because we don't maintain release notes cor bug fixes (just features and deprecations). |
(0039214) Gregor Jasny (developer) 2015-08-01 18:28 |
Thanks for the cleaning up. I did some more experiments and discovered more ASCII characters which need quoting: |;!?':&#%^"\` But the whole blacklist approach does not work with UTF-8 characters not in the 7 bit ASCII space. For example a german Umlaut-a ä would be printed unescaped and leads to parsing problems. So I reversed the logic and skip quoting only if all characters are in the whitelist. Do you think that could be 3.3.1 material? |
(0039218) Brad King (manager) 2015-08-03 08:38 |
Re 0015672:0039214: Thanks for digging further into the quoting requirements. I'd like to keep the post-release changes to 3.3 to a minimum so let's target the more complete fix for 3.4. |
(0039219) Brad King (manager) 2015-08-03 09:28 |
I've queued this fix for merge into 'release' for 3.3.1. I'm marking this issue as 'resolved' because the originally reported problem has been addressed. Further development proposed in 0015672:0039214 can be done as post-3.3 development and does not need to be tracked here. |
(0040102) Robert Maynard (manager) 2016-01-04 11:51 |
Closing resolved issues that have not been updated in more than 4 months. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2015-07-30 10:59 | A. Klitzing | New Issue | |
2015-07-30 11:06 | Brad King | Assigned To | => Gregor Jasny |
2015-07-30 11:06 | Brad King | Status | new => assigned |
2015-07-30 11:09 | Brad King | Note Added: 0039196 | |
2015-07-30 11:12 | Brad King | Target Version | => CMake 3.3.1 |
2015-07-30 11:12 | Brad King | Product Version | => CMake 3.3 |
2015-07-31 07:59 | Gregor Jasny | Note Added: 0039209 | |
2015-07-31 08:48 | Brad King | Note Added: 0039210 | |
2015-08-01 18:28 | Gregor Jasny | Note Added: 0039214 | |
2015-08-03 08:38 | Brad King | Note Added: 0039218 | |
2015-08-03 09:28 | Brad King | Note Added: 0039219 | |
2015-08-03 09:28 | Brad King | Status | assigned => resolved |
2015-08-03 09:28 | Brad King | Resolution | open => fixed |
2015-08-03 09:28 | Brad King | Fixed in Version | => CMake 3.3.1 |
2016-01-04 11:51 | Robert Maynard | Note Added: 0040102 | |
2016-01-04 11:51 | Robert Maynard | Status | resolved => closed |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |