xcres 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (299) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +33 -0
  3. data/.travis.yml +18 -0
  4. data/Gemfile +8 -0
  5. data/Gemfile.lock +85 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +181 -0
  8. data/Rakefile +58 -0
  9. data/bin/xcres +12 -0
  10. data/lib/xcres/analyzer/aggregate_analyzer.rb +48 -0
  11. data/lib/xcres/analyzer/analyzer.rb +141 -0
  12. data/lib/xcres/analyzer/resources_aggregate_analyzer.rb +27 -0
  13. data/lib/xcres/analyzer/resources_analyzer/base_resources_analyzer.rb +133 -0
  14. data/lib/xcres/analyzer/resources_analyzer/bundle_resources_analyzer.rb +68 -0
  15. data/lib/xcres/analyzer/resources_analyzer/loose_resources_analyzer.rb +39 -0
  16. data/lib/xcres/analyzer/resources_analyzer/xcassets_analyzer.rb +62 -0
  17. data/lib/xcres/analyzer/strings_analyzer.rb +255 -0
  18. data/lib/xcres/builder/file_builder.rb +61 -0
  19. data/lib/xcres/builder/resources_builder.rb +184 -0
  20. data/lib/xcres/builder/string_builder.rb +31 -0
  21. data/lib/xcres/command/build_command.rb +83 -0
  22. data/lib/xcres/command/command.rb +58 -0
  23. data/lib/xcres/command/install_command.rb +173 -0
  24. data/lib/xcres/command/main_command.rb +14 -0
  25. data/lib/xcres/command/project_command.rb +111 -0
  26. data/lib/xcres/command/version_command.rb +12 -0
  27. data/lib/xcres/helper/file_helper.rb +16 -0
  28. data/lib/xcres/logger.rb +148 -0
  29. data/lib/xcres/model/section.rb +43 -0
  30. data/lib/xcres/model/xcassets/bundle.rb +55 -0
  31. data/lib/xcres/model/xcassets/resource.rb +141 -0
  32. data/lib/xcres/model/xcassets/resource_image.rb +134 -0
  33. data/lib/xcres/version.rb +9 -0
  34. data/lib/xcres.rb +9 -0
  35. data/spec/fixtures/Example/Example/AppDelegate.h +15 -0
  36. data/spec/fixtures/Example/Example/AppDelegate.m +49 -0
  37. data/spec/fixtures/Example/Example/Example-Info.plist +38 -0
  38. data/spec/fixtures/Example/Example/Example-Prefix.pch +16 -0
  39. data/spec/fixtures/Example/Example/Images/doge.jpeg +0 -0
  40. data/spec/fixtures/Example/Example/Images/nyanCat.png +0 -0
  41. data/spec/fixtures/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  42. data/spec/fixtures/Example/Example/Images.xcassets/Doge.imageset/Contents.json +18 -0
  43. data/spec/fixtures/Example/Example/Images.xcassets/Doge.imageset/doge.png +0 -0
  44. data/spec/fixtures/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png +0 -0
  45. data/spec/fixtures/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  46. data/spec/fixtures/Example/Example/de.lproj/Localizable.strings +12 -0
  47. data/spec/fixtures/Example/Example/en.lproj/InfoPlist.strings +2 -0
  48. data/spec/fixtures/Example/Example/en.lproj/Localizable.strings +15 -0
  49. data/spec/fixtures/Example/Example/main.m +18 -0
  50. data/spec/fixtures/Example/Example.xcodeproj/project.pbxproj +449 -0
  51. data/spec/fixtures/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  52. data/spec/fixtures/ExampleOSX/ExampleOSX/AppDelegate.h +15 -0
  53. data/spec/fixtures/ExampleOSX/ExampleOSX/AppDelegate.m +18 -0
  54. data/spec/fixtures/ExampleOSX/ExampleOSX/Base.lproj/MainMenu.xib +680 -0
  55. data/spec/fixtures/ExampleOSX/ExampleOSX/ExampleOSX-Info.plist +34 -0
  56. data/spec/fixtures/ExampleOSX/ExampleOSX/ExampleOSX-Prefix.pch +9 -0
  57. data/spec/fixtures/ExampleOSX/ExampleOSX/Images.xcassets/AppIcon.appiconset/Contents.json +58 -0
  58. data/spec/fixtures/ExampleOSX/ExampleOSX/en.lproj/Credits.rtf +29 -0
  59. data/spec/fixtures/ExampleOSX/ExampleOSX/en.lproj/InfoPlist.strings +2 -0
  60. data/spec/fixtures/ExampleOSX/ExampleOSX/main.m +14 -0
  61. data/spec/fixtures/ExampleOSX/ExampleOSX.xcodeproj/project.pbxproj +481 -0
  62. data/spec/fixtures/ExampleOSX/ExampleOSX.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  63. data/spec/fixtures/ExampleOSX/ExampleOSXTests/ExampleOSXTests-Info.plist +22 -0
  64. data/spec/fixtures/ExampleOSX/ExampleOSXTests/ExampleOSXTests.m +34 -0
  65. data/spec/fixtures/ExampleOSX/ExampleOSXTests/en.lproj/InfoPlist.strings +2 -0
  66. data/spec/integration/build/after/Example/Example/AppDelegate.h +15 -0
  67. data/spec/integration/build/after/Example/Example/AppDelegate.m +49 -0
  68. data/spec/integration/build/after/Example/Example/Example-Info.plist +38 -0
  69. data/spec/integration/build/after/Example/Example/Example-Prefix.pch +16 -0
  70. data/spec/integration/build/after/Example/Example/Icons.bundle/tab_bar/tabbar_list.png +0 -0
  71. data/spec/integration/build/after/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png +0 -0
  72. data/spec/integration/build/after/Example/Example/Icons.bundle/tab_bar/tabbar_map.png +0 -0
  73. data/spec/integration/build/after/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png +0 -0
  74. data/spec/integration/build/after/Example/Example/Images/doge.jpeg +0 -0
  75. data/spec/integration/build/after/Example/Example/Images/nyanCat.png +0 -0
  76. data/spec/integration/build/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  77. data/spec/integration/build/after/Example/Example/Images.xcassets/Doge.imageset/Contents.json +18 -0
  78. data/spec/integration/build/after/Example/Example/Images.xcassets/Doge.imageset/doge.png +0 -0
  79. data/spec/integration/build/after/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png +0 -0
  80. data/spec/integration/build/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  81. data/spec/integration/build/after/Example/Example/de.lproj/Localizable.strings +12 -0
  82. data/spec/integration/build/after/Example/Example/en.lproj/InfoPlist.strings +2 -0
  83. data/spec/integration/build/after/Example/Example/en.lproj/Localizable.strings +15 -0
  84. data/spec/integration/build/after/Example/Example/main.m +18 -0
  85. data/spec/integration/build/after/Example/Example.xcodeproj.yaml +168 -0
  86. data/spec/integration/build/after/R.h +39 -0
  87. data/spec/integration/build/after/R.m +29 -0
  88. data/spec/integration/build/after/execution_output.txt +19 -0
  89. data/spec/integration/build/before/Example/Example/AppDelegate.h +15 -0
  90. data/spec/integration/build/before/Example/Example/AppDelegate.m +49 -0
  91. data/spec/integration/build/before/Example/Example/Example-Info.plist +38 -0
  92. data/spec/integration/build/before/Example/Example/Example-Prefix.pch +16 -0
  93. data/spec/integration/build/before/Example/Example/Icons.bundle/tab_bar/tabbar_list.png +0 -0
  94. data/spec/integration/build/before/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png +0 -0
  95. data/spec/integration/build/before/Example/Example/Icons.bundle/tab_bar/tabbar_map.png +0 -0
  96. data/spec/integration/build/before/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png +0 -0
  97. data/spec/integration/build/before/Example/Example/Images/doge.jpeg +0 -0
  98. data/spec/integration/build/before/Example/Example/Images/nyanCat.png +0 -0
  99. data/spec/integration/build/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  100. data/spec/integration/build/before/Example/Example/Images.xcassets/Doge.imageset/Contents.json +18 -0
  101. data/spec/integration/build/before/Example/Example/Images.xcassets/Doge.imageset/doge.png +0 -0
  102. data/spec/integration/build/before/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png +0 -0
  103. data/spec/integration/build/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  104. data/spec/integration/build/before/Example/Example/de.lproj/Localizable.strings +12 -0
  105. data/spec/integration/build/before/Example/Example/en.lproj/InfoPlist.strings +2 -0
  106. data/spec/integration/build/before/Example/Example/en.lproj/Localizable.strings +15 -0
  107. data/spec/integration/build/before/Example/Example/main.m +18 -0
  108. data/spec/integration/build/before/Example/Example.xcodeproj/project.pbxproj +453 -0
  109. data/spec/integration/build/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  110. data/spec/integration/build-keyword-clash/after/Example/Example/AppDelegate.h +15 -0
  111. data/spec/integration/build-keyword-clash/after/Example/Example/AppDelegate.m +49 -0
  112. data/spec/integration/build-keyword-clash/after/Example/Example/Default-568h@2x.png +0 -0
  113. data/spec/integration/build-keyword-clash/after/Example/Example/Default.png +0 -0
  114. data/spec/integration/build-keyword-clash/after/Example/Example/Default@2x.png +0 -0
  115. data/spec/integration/build-keyword-clash/after/Example/Example/Example-Info.plist +38 -0
  116. data/spec/integration/build-keyword-clash/after/Example/Example/Example-Prefix.pch +16 -0
  117. data/spec/integration/build-keyword-clash/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  118. data/spec/integration/build-keyword-clash/after/Example/Example/en.lproj/InfoPlist.strings +2 -0
  119. data/spec/integration/build-keyword-clash/after/Example/Example/main.m +18 -0
  120. data/spec/integration/build-keyword-clash/after/Example/Example.xcodeproj.yaml +160 -0
  121. data/spec/integration/build-keyword-clash/after/R.h +15 -0
  122. data/spec/integration/build-keyword-clash/after/R.m +15 -0
  123. data/spec/integration/build-keyword-clash/after/execution_output.txt +14 -0
  124. data/spec/integration/build-keyword-clash/before/Example/Example/AppDelegate.h +15 -0
  125. data/spec/integration/build-keyword-clash/before/Example/Example/AppDelegate.m +49 -0
  126. data/spec/integration/build-keyword-clash/before/Example/Example/Default-568h@2x.png +0 -0
  127. data/spec/integration/build-keyword-clash/before/Example/Example/Default.png +0 -0
  128. data/spec/integration/build-keyword-clash/before/Example/Example/Default@2x.png +0 -0
  129. data/spec/integration/build-keyword-clash/before/Example/Example/Example-Info.plist +38 -0
  130. data/spec/integration/build-keyword-clash/before/Example/Example/Example-Prefix.pch +16 -0
  131. data/spec/integration/build-keyword-clash/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  132. data/spec/integration/build-keyword-clash/before/Example/Example/en.lproj/InfoPlist.strings +2 -0
  133. data/spec/integration/build-keyword-clash/before/Example/Example/main.m +18 -0
  134. data/spec/integration/build-keyword-clash/before/Example/Example.xcodeproj/project.pbxproj +427 -0
  135. data/spec/integration/build-keyword-clash/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  136. data/spec/integration/build-var-infoplist/after/Example/Example/AppDelegate.h +15 -0
  137. data/spec/integration/build-var-infoplist/after/Example/Example/AppDelegate.m +49 -0
  138. data/spec/integration/build-var-infoplist/after/Example/Example/Example-Info.plist +38 -0
  139. data/spec/integration/build-var-infoplist/after/Example/Example/Example-Prefix.pch +16 -0
  140. data/spec/integration/build-var-infoplist/after/Example/Example/Icons.bundle/tab_bar/tabbar_list.png +0 -0
  141. data/spec/integration/build-var-infoplist/after/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png +0 -0
  142. data/spec/integration/build-var-infoplist/after/Example/Example/Icons.bundle/tab_bar/tabbar_map.png +0 -0
  143. data/spec/integration/build-var-infoplist/after/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png +0 -0
  144. data/spec/integration/build-var-infoplist/after/Example/Example/Images/doge.jpeg +0 -0
  145. data/spec/integration/build-var-infoplist/after/Example/Example/Images/nyanCat.png +0 -0
  146. data/spec/integration/build-var-infoplist/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  147. data/spec/integration/build-var-infoplist/after/Example/Example/Images.xcassets/Doge.imageset/Contents.json +18 -0
  148. data/spec/integration/build-var-infoplist/after/Example/Example/Images.xcassets/Doge.imageset/doge.png +0 -0
  149. data/spec/integration/build-var-infoplist/after/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png +0 -0
  150. data/spec/integration/build-var-infoplist/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  151. data/spec/integration/build-var-infoplist/after/Example/Example/de.lproj/Localizable.strings +12 -0
  152. data/spec/integration/build-var-infoplist/after/Example/Example/en.lproj/InfoPlist.strings +2 -0
  153. data/spec/integration/build-var-infoplist/after/Example/Example/en.lproj/Localizable.strings +15 -0
  154. data/spec/integration/build-var-infoplist/after/Example/Example/main.m +18 -0
  155. data/spec/integration/build-var-infoplist/after/Example/Example.xcodeproj.yaml +168 -0
  156. data/spec/integration/build-var-infoplist/after/R.h +39 -0
  157. data/spec/integration/build-var-infoplist/after/R.m +29 -0
  158. data/spec/integration/build-var-infoplist/after/execution_output.txt +19 -0
  159. data/spec/integration/build-var-infoplist/before/Example/Example/AppDelegate.h +15 -0
  160. data/spec/integration/build-var-infoplist/before/Example/Example/AppDelegate.m +49 -0
  161. data/spec/integration/build-var-infoplist/before/Example/Example/Example-Info.plist +38 -0
  162. data/spec/integration/build-var-infoplist/before/Example/Example/Example-Prefix.pch +16 -0
  163. data/spec/integration/build-var-infoplist/before/Example/Example/Icons.bundle/tab_bar/tabbar_list.png +0 -0
  164. data/spec/integration/build-var-infoplist/before/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png +0 -0
  165. data/spec/integration/build-var-infoplist/before/Example/Example/Icons.bundle/tab_bar/tabbar_map.png +0 -0
  166. data/spec/integration/build-var-infoplist/before/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png +0 -0
  167. data/spec/integration/build-var-infoplist/before/Example/Example/Images/doge.jpeg +0 -0
  168. data/spec/integration/build-var-infoplist/before/Example/Example/Images/nyanCat.png +0 -0
  169. data/spec/integration/build-var-infoplist/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  170. data/spec/integration/build-var-infoplist/before/Example/Example/Images.xcassets/Doge.imageset/Contents.json +18 -0
  171. data/spec/integration/build-var-infoplist/before/Example/Example/Images.xcassets/Doge.imageset/doge.png +0 -0
  172. data/spec/integration/build-var-infoplist/before/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png +0 -0
  173. data/spec/integration/build-var-infoplist/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  174. data/spec/integration/build-var-infoplist/before/Example/Example/de.lproj/Localizable.strings +12 -0
  175. data/spec/integration/build-var-infoplist/before/Example/Example/en.lproj/InfoPlist.strings +2 -0
  176. data/spec/integration/build-var-infoplist/before/Example/Example/en.lproj/Localizable.strings +15 -0
  177. data/spec/integration/build-var-infoplist/before/Example/Example/main.m +18 -0
  178. data/spec/integration/build-var-infoplist/before/Example/Example.xcodeproj/project.pbxproj +453 -0
  179. data/spec/integration/build-var-infoplist/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  180. data/spec/integration/help/after/execution_output.txt +18 -0
  181. data/spec/integration/help/before/.gitkeep +0 -0
  182. data/spec/integration/install/after/Example/Example/AppDelegate.h +15 -0
  183. data/spec/integration/install/after/Example/Example/AppDelegate.m +49 -0
  184. data/spec/integration/install/after/Example/Example/Example-Info.plist +38 -0
  185. data/spec/integration/install/after/Example/Example/Example-Prefix.pch +18 -0
  186. data/spec/integration/install/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  187. data/spec/integration/install/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  188. data/spec/integration/install/after/Example/Example/Resources/R.h +19 -0
  189. data/spec/integration/install/after/Example/Example/Resources/R.m +17 -0
  190. data/spec/integration/install/after/Example/Example/en.lproj/InfoPlist.strings +2 -0
  191. data/spec/integration/install/after/Example/Example/main.m +18 -0
  192. data/spec/integration/install/after/Example/Example.xcodeproj/project.pbxproj +898 -0
  193. data/spec/integration/install/after/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  194. data/spec/integration/install/after/Example/Example.xcodeproj.yaml +172 -0
  195. data/spec/integration/install/after/execution_output.txt +22 -0
  196. data/spec/integration/install/before/Example/Example/AppDelegate.h +15 -0
  197. data/spec/integration/install/before/Example/Example/AppDelegate.m +49 -0
  198. data/spec/integration/install/before/Example/Example/Example-Info.plist +38 -0
  199. data/spec/integration/install/before/Example/Example/Example-Prefix.pch +16 -0
  200. data/spec/integration/install/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  201. data/spec/integration/install/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  202. data/spec/integration/install/before/Example/Example/en.lproj/InfoPlist.strings +2 -0
  203. data/spec/integration/install/before/Example/Example/main.m +18 -0
  204. data/spec/integration/install/before/Example/Example.xcodeproj/project.pbxproj +421 -0
  205. data/spec/integration/install/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  206. data/spec/integration/install-again/after/Example/Example/AppDelegate.h +15 -0
  207. data/spec/integration/install-again/after/Example/Example/AppDelegate.m +49 -0
  208. data/spec/integration/install-again/after/Example/Example/Example-Info.plist +38 -0
  209. data/spec/integration/install-again/after/Example/Example/Example-Prefix.pch +18 -0
  210. data/spec/integration/install-again/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  211. data/spec/integration/install-again/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  212. data/spec/integration/install-again/after/Example/Example/Resources/R.h +19 -0
  213. data/spec/integration/install-again/after/Example/Example/Resources/R.m +17 -0
  214. data/spec/integration/install-again/after/Example/Example/en.lproj/InfoPlist.strings +2 -0
  215. data/spec/integration/install-again/after/Example/Example/main.m +18 -0
  216. data/spec/integration/install-again/after/Example/Example.xcodeproj.yaml +172 -0
  217. data/spec/integration/install-again/after/execution_output.txt +23 -0
  218. data/spec/integration/install-again/before/Example/Example/AppDelegate.h +15 -0
  219. data/spec/integration/install-again/before/Example/Example/AppDelegate.m +49 -0
  220. data/spec/integration/install-again/before/Example/Example/Example-Info.plist +38 -0
  221. data/spec/integration/install-again/before/Example/Example/Example-Prefix.pch +18 -0
  222. data/spec/integration/install-again/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  223. data/spec/integration/install-again/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  224. data/spec/integration/install-again/before/Example/Example/Resources/R.h +19 -0
  225. data/spec/integration/install-again/before/Example/Example/Resources/R.m +17 -0
  226. data/spec/integration/install-again/before/Example/Example/en.lproj/InfoPlist.strings +2 -0
  227. data/spec/integration/install-again/before/Example/Example/main.m +18 -0
  228. data/spec/integration/install-again/before/Example/Example.xcodeproj/project.pbxproj +898 -0
  229. data/spec/integration/install-again/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  230. data/spec/integration/install-moved-supporting-files/after/Example/Example.xcodeproj.yaml +173 -0
  231. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/Example-Info.plist +38 -0
  232. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/Example-Prefix.pch +18 -0
  233. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/Resources/R.h +19 -0
  234. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/Resources/R.m +17 -0
  235. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/en.lproj/InfoPlist.strings +2 -0
  236. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/main.m +18 -0
  237. data/spec/integration/install-moved-supporting-files/after/Example/res/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  238. data/spec/integration/install-moved-supporting-files/after/Example/res/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  239. data/spec/integration/install-moved-supporting-files/after/Example/src/AppDelegate.h +15 -0
  240. data/spec/integration/install-moved-supporting-files/after/Example/src/AppDelegate.m +49 -0
  241. data/spec/integration/install-moved-supporting-files/after/execution_output.txt +22 -0
  242. data/spec/integration/install-moved-supporting-files/before/Example/Example.xcodeproj/project.pbxproj +431 -0
  243. data/spec/integration/install-moved-supporting-files/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  244. data/spec/integration/install-moved-supporting-files/before/Example/Supporting_Files/Example-Info.plist +38 -0
  245. data/spec/integration/install-moved-supporting-files/before/Example/Supporting_Files/Example-Prefix.pch +16 -0
  246. data/spec/integration/install-moved-supporting-files/before/Example/Supporting_Files/en.lproj/InfoPlist.strings +2 -0
  247. data/spec/integration/install-moved-supporting-files/before/Example/Supporting_Files/main.m +18 -0
  248. data/spec/integration/install-moved-supporting-files/before/Example/res/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  249. data/spec/integration/install-moved-supporting-files/before/Example/res/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  250. data/spec/integration/install-moved-supporting-files/before/Example/src/AppDelegate.h +15 -0
  251. data/spec/integration/install-moved-supporting-files/before/Example/src/AppDelegate.m +49 -0
  252. data/spec/integration/install-no-supporting-files/after/Example/Example.xcodeproj.yaml +173 -0
  253. data/spec/integration/install-no-supporting-files/after/Example/Resources/R.h +19 -0
  254. data/spec/integration/install-no-supporting-files/after/Example/Resources/R.m +17 -0
  255. data/spec/integration/install-no-supporting-files/after/Example/Supporting_Files/Example-Info.plist +38 -0
  256. data/spec/integration/install-no-supporting-files/after/Example/Supporting_Files/Example-Prefix.pch +18 -0
  257. data/spec/integration/install-no-supporting-files/after/Example/Supporting_Files/en.lproj/InfoPlist.strings +2 -0
  258. data/spec/integration/install-no-supporting-files/after/Example/Supporting_Files/main.m +18 -0
  259. data/spec/integration/install-no-supporting-files/after/Example/res/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  260. data/spec/integration/install-no-supporting-files/after/Example/res/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  261. data/spec/integration/install-no-supporting-files/after/Example/src/AppDelegate.h +15 -0
  262. data/spec/integration/install-no-supporting-files/after/Example/src/AppDelegate.m +49 -0
  263. data/spec/integration/install-no-supporting-files/after/execution_output.txt +23 -0
  264. data/spec/integration/install-no-supporting-files/before/Example/Example.xcodeproj/project.pbxproj +430 -0
  265. data/spec/integration/install-no-supporting-files/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  266. data/spec/integration/install-no-supporting-files/before/Example/Supporting_Files/Example-Info.plist +38 -0
  267. data/spec/integration/install-no-supporting-files/before/Example/Supporting_Files/Example-Prefix.pch +16 -0
  268. data/spec/integration/install-no-supporting-files/before/Example/Supporting_Files/en.lproj/InfoPlist.strings +2 -0
  269. data/spec/integration/install-no-supporting-files/before/Example/Supporting_Files/main.m +18 -0
  270. data/spec/integration/install-no-supporting-files/before/Example/res/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  271. data/spec/integration/install-no-supporting-files/before/Example/res/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  272. data/spec/integration/install-no-supporting-files/before/Example/src/AppDelegate.h +15 -0
  273. data/spec/integration/install-no-supporting-files/before/Example/src/AppDelegate.m +49 -0
  274. data/spec/integration/version/after/execution_output.txt +3 -0
  275. data/spec/integration/version/before/.gitkeep +0 -0
  276. data/spec/integration.rb +86 -0
  277. data/spec/spec_helper/xcodeproj_project_yaml.rb +26 -0
  278. data/spec/unit/analyzer/aggregate_analyzer_spec.rb +61 -0
  279. data/spec/unit/analyzer/analyzer_spec.rb +123 -0
  280. data/spec/unit/analyzer/resources_aggregate_analyzer_spec.rb +46 -0
  281. data/spec/unit/analyzer/resources_analyzer/base_resources_analyzer_spec.rb +126 -0
  282. data/spec/unit/analyzer/resources_analyzer/bundle_resources_analyzer_spec.rb +57 -0
  283. data/spec/unit/analyzer/resources_analyzer/loose_resources_analyzer_spec.rb +22 -0
  284. data/spec/unit/analyzer/strings_analyzer_spec.rb +99 -0
  285. data/spec/unit/builder/file_builder_spec.rb +46 -0
  286. data/spec/unit/builder/resources_builder_spec.rb +50 -0
  287. data/spec/unit/builder/string_builder_spec.rb +76 -0
  288. data/spec/unit/command/main_command_spec.rb +5 -0
  289. data/spec/unit/command/project_command_spec.rb +23 -0
  290. data/spec/unit/helper/file_helper_spec.rb +24 -0
  291. data/spec/unit/logger_spec.rb +142 -0
  292. data/spec/unit/model/section_spec.rb +47 -0
  293. data/spec/unit/model/xcassets/bundle_spec.rb +154 -0
  294. data/spec/unit/model/xcassets/resource_image_spec.rb +141 -0
  295. data/spec/unit/model/xcassets/resource_spec.rb +174 -0
  296. data/spec/unit/model/xcassets/spec_helper.rb +31 -0
  297. data/spec/unit/spec_helper.rb +17 -0
  298. data/xcres.gemspec +42 -0
  299. metadata +811 -0
@@ -0,0 +1,34 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>CFBundleDevelopmentRegion</key>
6
+ <string>en</string>
7
+ <key>CFBundleExecutable</key>
8
+ <string>${EXECUTABLE_NAME}</string>
9
+ <key>CFBundleIconFile</key>
10
+ <string></string>
11
+ <key>CFBundleIdentifier</key>
12
+ <string>io.github.xcres.${PRODUCT_NAME:rfc1034identifier}</string>
13
+ <key>CFBundleInfoDictionaryVersion</key>
14
+ <string>6.0</string>
15
+ <key>CFBundleName</key>
16
+ <string>${PRODUCT_NAME}</string>
17
+ <key>CFBundlePackageType</key>
18
+ <string>APPL</string>
19
+ <key>CFBundleShortVersionString</key>
20
+ <string>1.0</string>
21
+ <key>CFBundleSignature</key>
22
+ <string>????</string>
23
+ <key>CFBundleVersion</key>
24
+ <string>1</string>
25
+ <key>LSMinimumSystemVersion</key>
26
+ <string>${MACOSX_DEPLOYMENT_TARGET}</string>
27
+ <key>NSHumanReadableCopyright</key>
28
+ <string>Copyright © 2014 XCRes. All rights reserved.</string>
29
+ <key>NSMainNibFile</key>
30
+ <string>MainMenu</string>
31
+ <key>NSPrincipalClass</key>
32
+ <string>NSApplication</string>
33
+ </dict>
34
+ </plist>
@@ -0,0 +1,9 @@
1
+ //
2
+ // Prefix header
3
+ //
4
+ // The contents of this file are implicitly included at the beginning of every source file.
5
+ //
6
+
7
+ #ifdef __OBJC__
8
+ #import <Cocoa/Cocoa.h>
9
+ #endif
@@ -0,0 +1,58 @@
1
+ {
2
+ "images" : [
3
+ {
4
+ "idiom" : "mac",
5
+ "size" : "16x16",
6
+ "scale" : "1x"
7
+ },
8
+ {
9
+ "idiom" : "mac",
10
+ "size" : "16x16",
11
+ "scale" : "2x"
12
+ },
13
+ {
14
+ "idiom" : "mac",
15
+ "size" : "32x32",
16
+ "scale" : "1x"
17
+ },
18
+ {
19
+ "idiom" : "mac",
20
+ "size" : "32x32",
21
+ "scale" : "2x"
22
+ },
23
+ {
24
+ "idiom" : "mac",
25
+ "size" : "128x128",
26
+ "scale" : "1x"
27
+ },
28
+ {
29
+ "idiom" : "mac",
30
+ "size" : "128x128",
31
+ "scale" : "2x"
32
+ },
33
+ {
34
+ "idiom" : "mac",
35
+ "size" : "256x256",
36
+ "scale" : "1x"
37
+ },
38
+ {
39
+ "idiom" : "mac",
40
+ "size" : "256x256",
41
+ "scale" : "2x"
42
+ },
43
+ {
44
+ "idiom" : "mac",
45
+ "size" : "512x512",
46
+ "scale" : "1x"
47
+ },
48
+ {
49
+ "idiom" : "mac",
50
+ "size" : "512x512",
51
+ "scale" : "2x"
52
+ }
53
+ ],
54
+ "info" : {
55
+ "version" : 1,
56
+ "author" : "xcode"
57
+ }
58
+ }
@@ -0,0 +1,29 @@
1
+ {\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;}
2
+ {\colortbl;\red255\green255\blue255;}
3
+ \paperw9840\paperh8400
4
+ \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
5
+
6
+ \f0\b\fs24 \cf0 Engineering:
7
+ \b0 \
8
+ Some people\
9
+ \
10
+
11
+ \b Human Interface Design:
12
+ \b0 \
13
+ Some other people\
14
+ \
15
+
16
+ \b Testing:
17
+ \b0 \
18
+ Hopefully not nobody\
19
+ \
20
+
21
+ \b Documentation:
22
+ \b0 \
23
+ Whoever\
24
+ \
25
+
26
+ \b With special thanks to:
27
+ \b0 \
28
+ Mom\
29
+ }
@@ -0,0 +1,2 @@
1
+ /* Localized versions of Info.plist keys */
2
+
@@ -0,0 +1,14 @@
1
+ //
2
+ // main.m
3
+ // ExampleOSX
4
+ //
5
+ // Created by Marius Rackwitz on 12.05.14.
6
+ // Copyright (c) 2014 XCRes. All rights reserved.
7
+ //
8
+
9
+ #import <Cocoa/Cocoa.h>
10
+
11
+ int main(int argc, const char * argv[])
12
+ {
13
+ return NSApplicationMain(argc, argv);
14
+ }
@@ -0,0 +1,481 @@
1
+ // !$*UTF8*$!
2
+ {
3
+ archiveVersion = 1;
4
+ classes = {
5
+ };
6
+ objectVersion = 46;
7
+ objects = {
8
+
9
+ /* Begin PBXBuildFile section */
10
+ 71098A8D1920EF5700403326 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 71098A8C1920EF5700403326 /* Cocoa.framework */; };
11
+ 71098A971920EF5700403326 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 71098A951920EF5700403326 /* InfoPlist.strings */; };
12
+ 71098A991920EF5700403326 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 71098A981920EF5700403326 /* main.m */; };
13
+ 71098A9D1920EF5700403326 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 71098A9B1920EF5700403326 /* Credits.rtf */; };
14
+ 71098AA01920EF5700403326 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 71098A9F1920EF5700403326 /* AppDelegate.m */; };
15
+ 71098AA31920EF5700403326 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 71098AA11920EF5700403326 /* MainMenu.xib */; };
16
+ 71098AA51920EF5700403326 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 71098AA41920EF5700403326 /* Images.xcassets */; };
17
+ 71098AAC1920EF5700403326 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 71098AAB1920EF5700403326 /* XCTest.framework */; };
18
+ 71098AAD1920EF5700403326 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 71098A8C1920EF5700403326 /* Cocoa.framework */; };
19
+ 71098AB51920EF5700403326 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 71098AB31920EF5700403326 /* InfoPlist.strings */; };
20
+ 71098AB71920EF5700403326 /* ExampleOSXTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 71098AB61920EF5700403326 /* ExampleOSXTests.m */; };
21
+ /* End PBXBuildFile section */
22
+
23
+ /* Begin PBXContainerItemProxy section */
24
+ 71098AAE1920EF5700403326 /* PBXContainerItemProxy */ = {
25
+ isa = PBXContainerItemProxy;
26
+ containerPortal = 71098A811920EF5700403326 /* Project object */;
27
+ proxyType = 1;
28
+ remoteGlobalIDString = 71098A881920EF5700403326;
29
+ remoteInfo = ExampleOSX;
30
+ };
31
+ /* End PBXContainerItemProxy section */
32
+
33
+ /* Begin PBXFileReference section */
34
+ 71098A891920EF5700403326 /* ExampleOSX.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ExampleOSX.app; sourceTree = BUILT_PRODUCTS_DIR; };
35
+ 71098A8C1920EF5700403326 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
36
+ 71098A8F1920EF5700403326 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
37
+ 71098A901920EF5700403326 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
38
+ 71098A911920EF5700403326 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
39
+ 71098A941920EF5700403326 /* ExampleOSX-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "ExampleOSX-Info.plist"; sourceTree = "<group>"; };
40
+ 71098A961920EF5700403326 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
41
+ 71098A981920EF5700403326 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
42
+ 71098A9A1920EF5700403326 /* ExampleOSX-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ExampleOSX-Prefix.pch"; sourceTree = "<group>"; };
43
+ 71098A9C1920EF5700403326 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = "<group>"; };
44
+ 71098A9E1920EF5700403326 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
45
+ 71098A9F1920EF5700403326 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
46
+ 71098AA21920EF5700403326 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
47
+ 71098AA41920EF5700403326 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
48
+ 71098AAA1920EF5700403326 /* ExampleOSXTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ExampleOSXTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
49
+ 71098AAB1920EF5700403326 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
50
+ 71098AB21920EF5700403326 /* ExampleOSXTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "ExampleOSXTests-Info.plist"; sourceTree = "<group>"; };
51
+ 71098AB41920EF5700403326 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
52
+ 71098AB61920EF5700403326 /* ExampleOSXTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ExampleOSXTests.m; sourceTree = "<group>"; };
53
+ /* End PBXFileReference section */
54
+
55
+ /* Begin PBXFrameworksBuildPhase section */
56
+ 71098A861920EF5700403326 /* Frameworks */ = {
57
+ isa = PBXFrameworksBuildPhase;
58
+ buildActionMask = 2147483647;
59
+ files = (
60
+ 71098A8D1920EF5700403326 /* Cocoa.framework in Frameworks */,
61
+ );
62
+ runOnlyForDeploymentPostprocessing = 0;
63
+ };
64
+ 71098AA71920EF5700403326 /* Frameworks */ = {
65
+ isa = PBXFrameworksBuildPhase;
66
+ buildActionMask = 2147483647;
67
+ files = (
68
+ 71098AAD1920EF5700403326 /* Cocoa.framework in Frameworks */,
69
+ 71098AAC1920EF5700403326 /* XCTest.framework in Frameworks */,
70
+ );
71
+ runOnlyForDeploymentPostprocessing = 0;
72
+ };
73
+ /* End PBXFrameworksBuildPhase section */
74
+
75
+ /* Begin PBXGroup section */
76
+ 71098A801920EF5700403326 = {
77
+ isa = PBXGroup;
78
+ children = (
79
+ 71098A921920EF5700403326 /* ExampleOSX */,
80
+ 71098AB01920EF5700403326 /* ExampleOSXTests */,
81
+ 71098A8B1920EF5700403326 /* Frameworks */,
82
+ 71098A8A1920EF5700403326 /* Products */,
83
+ );
84
+ sourceTree = "<group>";
85
+ };
86
+ 71098A8A1920EF5700403326 /* Products */ = {
87
+ isa = PBXGroup;
88
+ children = (
89
+ 71098A891920EF5700403326 /* ExampleOSX.app */,
90
+ 71098AAA1920EF5700403326 /* ExampleOSXTests.xctest */,
91
+ );
92
+ name = Products;
93
+ sourceTree = "<group>";
94
+ };
95
+ 71098A8B1920EF5700403326 /* Frameworks */ = {
96
+ isa = PBXGroup;
97
+ children = (
98
+ 71098A8C1920EF5700403326 /* Cocoa.framework */,
99
+ 71098AAB1920EF5700403326 /* XCTest.framework */,
100
+ 71098A8E1920EF5700403326 /* Other Frameworks */,
101
+ );
102
+ name = Frameworks;
103
+ sourceTree = "<group>";
104
+ };
105
+ 71098A8E1920EF5700403326 /* Other Frameworks */ = {
106
+ isa = PBXGroup;
107
+ children = (
108
+ 71098A8F1920EF5700403326 /* AppKit.framework */,
109
+ 71098A901920EF5700403326 /* CoreData.framework */,
110
+ 71098A911920EF5700403326 /* Foundation.framework */,
111
+ );
112
+ name = "Other Frameworks";
113
+ sourceTree = "<group>";
114
+ };
115
+ 71098A921920EF5700403326 /* ExampleOSX */ = {
116
+ isa = PBXGroup;
117
+ children = (
118
+ 71098A9E1920EF5700403326 /* AppDelegate.h */,
119
+ 71098A9F1920EF5700403326 /* AppDelegate.m */,
120
+ 71098AA11920EF5700403326 /* MainMenu.xib */,
121
+ 71098AA41920EF5700403326 /* Images.xcassets */,
122
+ 71098A931920EF5700403326 /* Supporting Files */,
123
+ );
124
+ path = ExampleOSX;
125
+ sourceTree = "<group>";
126
+ };
127
+ 71098A931920EF5700403326 /* Supporting Files */ = {
128
+ isa = PBXGroup;
129
+ children = (
130
+ 71098A941920EF5700403326 /* ExampleOSX-Info.plist */,
131
+ 71098A951920EF5700403326 /* InfoPlist.strings */,
132
+ 71098A981920EF5700403326 /* main.m */,
133
+ 71098A9A1920EF5700403326 /* ExampleOSX-Prefix.pch */,
134
+ 71098A9B1920EF5700403326 /* Credits.rtf */,
135
+ );
136
+ name = "Supporting Files";
137
+ sourceTree = "<group>";
138
+ };
139
+ 71098AB01920EF5700403326 /* ExampleOSXTests */ = {
140
+ isa = PBXGroup;
141
+ children = (
142
+ 71098AB61920EF5700403326 /* ExampleOSXTests.m */,
143
+ 71098AB11920EF5700403326 /* Supporting Files */,
144
+ );
145
+ path = ExampleOSXTests;
146
+ sourceTree = "<group>";
147
+ };
148
+ 71098AB11920EF5700403326 /* Supporting Files */ = {
149
+ isa = PBXGroup;
150
+ children = (
151
+ 71098AB21920EF5700403326 /* ExampleOSXTests-Info.plist */,
152
+ 71098AB31920EF5700403326 /* InfoPlist.strings */,
153
+ );
154
+ name = "Supporting Files";
155
+ sourceTree = "<group>";
156
+ };
157
+ /* End PBXGroup section */
158
+
159
+ /* Begin PBXNativeTarget section */
160
+ 71098A881920EF5700403326 /* ExampleOSX */ = {
161
+ isa = PBXNativeTarget;
162
+ buildConfigurationList = 71098ABA1920EF5700403326 /* Build configuration list for PBXNativeTarget "ExampleOSX" */;
163
+ buildPhases = (
164
+ 71098A851920EF5700403326 /* Sources */,
165
+ 71098A861920EF5700403326 /* Frameworks */,
166
+ 71098A871920EF5700403326 /* Resources */,
167
+ );
168
+ buildRules = (
169
+ );
170
+ dependencies = (
171
+ );
172
+ name = ExampleOSX;
173
+ productName = ExampleOSX;
174
+ productReference = 71098A891920EF5700403326 /* ExampleOSX.app */;
175
+ productType = "com.apple.product-type.application";
176
+ };
177
+ 71098AA91920EF5700403326 /* ExampleOSXTests */ = {
178
+ isa = PBXNativeTarget;
179
+ buildConfigurationList = 71098ABD1920EF5700403326 /* Build configuration list for PBXNativeTarget "ExampleOSXTests" */;
180
+ buildPhases = (
181
+ 71098AA61920EF5700403326 /* Sources */,
182
+ 71098AA71920EF5700403326 /* Frameworks */,
183
+ 71098AA81920EF5700403326 /* Resources */,
184
+ );
185
+ buildRules = (
186
+ );
187
+ dependencies = (
188
+ 71098AAF1920EF5700403326 /* PBXTargetDependency */,
189
+ );
190
+ name = ExampleOSXTests;
191
+ productName = ExampleOSXTests;
192
+ productReference = 71098AAA1920EF5700403326 /* ExampleOSXTests.xctest */;
193
+ productType = "com.apple.product-type.bundle.unit-test";
194
+ };
195
+ /* End PBXNativeTarget section */
196
+
197
+ /* Begin PBXProject section */
198
+ 71098A811920EF5700403326 /* Project object */ = {
199
+ isa = PBXProject;
200
+ attributes = {
201
+ LastUpgradeCheck = 0510;
202
+ ORGANIZATIONNAME = XCRes;
203
+ TargetAttributes = {
204
+ 71098AA91920EF5700403326 = {
205
+ TestTargetID = 71098A881920EF5700403326;
206
+ };
207
+ };
208
+ };
209
+ buildConfigurationList = 71098A841920EF5700403326 /* Build configuration list for PBXProject "ExampleOSX" */;
210
+ compatibilityVersion = "Xcode 3.2";
211
+ developmentRegion = English;
212
+ hasScannedForEncodings = 0;
213
+ knownRegions = (
214
+ en,
215
+ Base,
216
+ );
217
+ mainGroup = 71098A801920EF5700403326;
218
+ productRefGroup = 71098A8A1920EF5700403326 /* Products */;
219
+ projectDirPath = "";
220
+ projectRoot = "";
221
+ targets = (
222
+ 71098A881920EF5700403326 /* ExampleOSX */,
223
+ 71098AA91920EF5700403326 /* ExampleOSXTests */,
224
+ );
225
+ };
226
+ /* End PBXProject section */
227
+
228
+ /* Begin PBXResourcesBuildPhase section */
229
+ 71098A871920EF5700403326 /* Resources */ = {
230
+ isa = PBXResourcesBuildPhase;
231
+ buildActionMask = 2147483647;
232
+ files = (
233
+ 71098A971920EF5700403326 /* InfoPlist.strings in Resources */,
234
+ 71098AA51920EF5700403326 /* Images.xcassets in Resources */,
235
+ 71098A9D1920EF5700403326 /* Credits.rtf in Resources */,
236
+ 71098AA31920EF5700403326 /* MainMenu.xib in Resources */,
237
+ );
238
+ runOnlyForDeploymentPostprocessing = 0;
239
+ };
240
+ 71098AA81920EF5700403326 /* Resources */ = {
241
+ isa = PBXResourcesBuildPhase;
242
+ buildActionMask = 2147483647;
243
+ files = (
244
+ 71098AB51920EF5700403326 /* InfoPlist.strings in Resources */,
245
+ );
246
+ runOnlyForDeploymentPostprocessing = 0;
247
+ };
248
+ /* End PBXResourcesBuildPhase section */
249
+
250
+ /* Begin PBXSourcesBuildPhase section */
251
+ 71098A851920EF5700403326 /* Sources */ = {
252
+ isa = PBXSourcesBuildPhase;
253
+ buildActionMask = 2147483647;
254
+ files = (
255
+ 71098AA01920EF5700403326 /* AppDelegate.m in Sources */,
256
+ 71098A991920EF5700403326 /* main.m in Sources */,
257
+ );
258
+ runOnlyForDeploymentPostprocessing = 0;
259
+ };
260
+ 71098AA61920EF5700403326 /* Sources */ = {
261
+ isa = PBXSourcesBuildPhase;
262
+ buildActionMask = 2147483647;
263
+ files = (
264
+ 71098AB71920EF5700403326 /* ExampleOSXTests.m in Sources */,
265
+ );
266
+ runOnlyForDeploymentPostprocessing = 0;
267
+ };
268
+ /* End PBXSourcesBuildPhase section */
269
+
270
+ /* Begin PBXTargetDependency section */
271
+ 71098AAF1920EF5700403326 /* PBXTargetDependency */ = {
272
+ isa = PBXTargetDependency;
273
+ target = 71098A881920EF5700403326 /* ExampleOSX */;
274
+ targetProxy = 71098AAE1920EF5700403326 /* PBXContainerItemProxy */;
275
+ };
276
+ /* End PBXTargetDependency section */
277
+
278
+ /* Begin PBXVariantGroup section */
279
+ 71098A951920EF5700403326 /* InfoPlist.strings */ = {
280
+ isa = PBXVariantGroup;
281
+ children = (
282
+ 71098A961920EF5700403326 /* en */,
283
+ );
284
+ name = InfoPlist.strings;
285
+ sourceTree = "<group>";
286
+ };
287
+ 71098A9B1920EF5700403326 /* Credits.rtf */ = {
288
+ isa = PBXVariantGroup;
289
+ children = (
290
+ 71098A9C1920EF5700403326 /* en */,
291
+ );
292
+ name = Credits.rtf;
293
+ sourceTree = "<group>";
294
+ };
295
+ 71098AA11920EF5700403326 /* MainMenu.xib */ = {
296
+ isa = PBXVariantGroup;
297
+ children = (
298
+ 71098AA21920EF5700403326 /* Base */,
299
+ );
300
+ name = MainMenu.xib;
301
+ sourceTree = "<group>";
302
+ };
303
+ 71098AB31920EF5700403326 /* InfoPlist.strings */ = {
304
+ isa = PBXVariantGroup;
305
+ children = (
306
+ 71098AB41920EF5700403326 /* en */,
307
+ );
308
+ name = InfoPlist.strings;
309
+ sourceTree = "<group>";
310
+ };
311
+ /* End PBXVariantGroup section */
312
+
313
+ /* Begin XCBuildConfiguration section */
314
+ 71098AB81920EF5700403326 /* Debug */ = {
315
+ isa = XCBuildConfiguration;
316
+ buildSettings = {
317
+ ALWAYS_SEARCH_USER_PATHS = NO;
318
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
319
+ CLANG_CXX_LIBRARY = "libc++";
320
+ CLANG_ENABLE_MODULES = YES;
321
+ CLANG_ENABLE_OBJC_ARC = YES;
322
+ CLANG_WARN_BOOL_CONVERSION = YES;
323
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
324
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
325
+ CLANG_WARN_EMPTY_BODY = YES;
326
+ CLANG_WARN_ENUM_CONVERSION = YES;
327
+ CLANG_WARN_INT_CONVERSION = YES;
328
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
329
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
330
+ COPY_PHASE_STRIP = NO;
331
+ GCC_C_LANGUAGE_STANDARD = gnu99;
332
+ GCC_DYNAMIC_NO_PIC = NO;
333
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
334
+ GCC_OPTIMIZATION_LEVEL = 0;
335
+ GCC_PREPROCESSOR_DEFINITIONS = (
336
+ "DEBUG=1",
337
+ "$(inherited)",
338
+ );
339
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
340
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
341
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
342
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
343
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
344
+ GCC_WARN_UNUSED_FUNCTION = YES;
345
+ GCC_WARN_UNUSED_VARIABLE = YES;
346
+ MACOSX_DEPLOYMENT_TARGET = 10.9;
347
+ ONLY_ACTIVE_ARCH = YES;
348
+ SDKROOT = macosx;
349
+ };
350
+ name = Debug;
351
+ };
352
+ 71098AB91920EF5700403326 /* Release */ = {
353
+ isa = XCBuildConfiguration;
354
+ buildSettings = {
355
+ ALWAYS_SEARCH_USER_PATHS = NO;
356
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
357
+ CLANG_CXX_LIBRARY = "libc++";
358
+ CLANG_ENABLE_MODULES = YES;
359
+ CLANG_ENABLE_OBJC_ARC = YES;
360
+ CLANG_WARN_BOOL_CONVERSION = YES;
361
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
362
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
363
+ CLANG_WARN_EMPTY_BODY = YES;
364
+ CLANG_WARN_ENUM_CONVERSION = YES;
365
+ CLANG_WARN_INT_CONVERSION = YES;
366
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
367
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
368
+ COPY_PHASE_STRIP = YES;
369
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
370
+ ENABLE_NS_ASSERTIONS = NO;
371
+ GCC_C_LANGUAGE_STANDARD = gnu99;
372
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
373
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
374
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
375
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
376
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
377
+ GCC_WARN_UNUSED_FUNCTION = YES;
378
+ GCC_WARN_UNUSED_VARIABLE = YES;
379
+ MACOSX_DEPLOYMENT_TARGET = 10.9;
380
+ SDKROOT = macosx;
381
+ };
382
+ name = Release;
383
+ };
384
+ 71098ABB1920EF5700403326 /* Debug */ = {
385
+ isa = XCBuildConfiguration;
386
+ buildSettings = {
387
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
388
+ COMBINE_HIDPI_IMAGES = YES;
389
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
390
+ GCC_PREFIX_HEADER = "ExampleOSX/ExampleOSX-Prefix.pch";
391
+ INFOPLIST_FILE = "ExampleOSX/ExampleOSX-Info.plist";
392
+ PRODUCT_NAME = "$(TARGET_NAME)";
393
+ WRAPPER_EXTENSION = app;
394
+ };
395
+ name = Debug;
396
+ };
397
+ 71098ABC1920EF5700403326 /* Release */ = {
398
+ isa = XCBuildConfiguration;
399
+ buildSettings = {
400
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
401
+ COMBINE_HIDPI_IMAGES = YES;
402
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
403
+ GCC_PREFIX_HEADER = "ExampleOSX/ExampleOSX-Prefix.pch";
404
+ INFOPLIST_FILE = "ExampleOSX/ExampleOSX-Info.plist";
405
+ PRODUCT_NAME = "$(TARGET_NAME)";
406
+ WRAPPER_EXTENSION = app;
407
+ };
408
+ name = Release;
409
+ };
410
+ 71098ABE1920EF5700403326 /* Debug */ = {
411
+ isa = XCBuildConfiguration;
412
+ buildSettings = {
413
+ BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/ExampleOSX.app/Contents/MacOS/ExampleOSX";
414
+ COMBINE_HIDPI_IMAGES = YES;
415
+ FRAMEWORK_SEARCH_PATHS = (
416
+ "$(DEVELOPER_FRAMEWORKS_DIR)",
417
+ "$(inherited)",
418
+ );
419
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
420
+ GCC_PREFIX_HEADER = "ExampleOSX/ExampleOSX-Prefix.pch";
421
+ GCC_PREPROCESSOR_DEFINITIONS = (
422
+ "DEBUG=1",
423
+ "$(inherited)",
424
+ );
425
+ INFOPLIST_FILE = "ExampleOSXTests/ExampleOSXTests-Info.plist";
426
+ PRODUCT_NAME = "$(TARGET_NAME)";
427
+ TEST_HOST = "$(BUNDLE_LOADER)";
428
+ WRAPPER_EXTENSION = xctest;
429
+ };
430
+ name = Debug;
431
+ };
432
+ 71098ABF1920EF5700403326 /* Release */ = {
433
+ isa = XCBuildConfiguration;
434
+ buildSettings = {
435
+ BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/ExampleOSX.app/Contents/MacOS/ExampleOSX";
436
+ COMBINE_HIDPI_IMAGES = YES;
437
+ FRAMEWORK_SEARCH_PATHS = (
438
+ "$(DEVELOPER_FRAMEWORKS_DIR)",
439
+ "$(inherited)",
440
+ );
441
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
442
+ GCC_PREFIX_HEADER = "ExampleOSX/ExampleOSX-Prefix.pch";
443
+ INFOPLIST_FILE = "ExampleOSXTests/ExampleOSXTests-Info.plist";
444
+ PRODUCT_NAME = "$(TARGET_NAME)";
445
+ TEST_HOST = "$(BUNDLE_LOADER)";
446
+ WRAPPER_EXTENSION = xctest;
447
+ };
448
+ name = Release;
449
+ };
450
+ /* End XCBuildConfiguration section */
451
+
452
+ /* Begin XCConfigurationList section */
453
+ 71098A841920EF5700403326 /* Build configuration list for PBXProject "ExampleOSX" */ = {
454
+ isa = XCConfigurationList;
455
+ buildConfigurations = (
456
+ 71098AB81920EF5700403326 /* Debug */,
457
+ 71098AB91920EF5700403326 /* Release */,
458
+ );
459
+ defaultConfigurationIsVisible = 0;
460
+ defaultConfigurationName = Release;
461
+ };
462
+ 71098ABA1920EF5700403326 /* Build configuration list for PBXNativeTarget "ExampleOSX" */ = {
463
+ isa = XCConfigurationList;
464
+ buildConfigurations = (
465
+ 71098ABB1920EF5700403326 /* Debug */,
466
+ 71098ABC1920EF5700403326 /* Release */,
467
+ );
468
+ defaultConfigurationIsVisible = 0;
469
+ };
470
+ 71098ABD1920EF5700403326 /* Build configuration list for PBXNativeTarget "ExampleOSXTests" */ = {
471
+ isa = XCConfigurationList;
472
+ buildConfigurations = (
473
+ 71098ABE1920EF5700403326 /* Debug */,
474
+ 71098ABF1920EF5700403326 /* Release */,
475
+ );
476
+ defaultConfigurationIsVisible = 0;
477
+ };
478
+ /* End XCConfigurationList section */
479
+ };
480
+ rootObject = 71098A811920EF5700403326 /* Project object */;
481
+ }
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ <FileRef
5
+ location = "self:ExampleOSX.xcodeproj">
6
+ </FileRef>
7
+ </Workspace>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>CFBundleDevelopmentRegion</key>
6
+ <string>en</string>
7
+ <key>CFBundleExecutable</key>
8
+ <string>${EXECUTABLE_NAME}</string>
9
+ <key>CFBundleIdentifier</key>
10
+ <string>io.github.xcres.${PRODUCT_NAME:rfc1034identifier}</string>
11
+ <key>CFBundleInfoDictionaryVersion</key>
12
+ <string>6.0</string>
13
+ <key>CFBundlePackageType</key>
14
+ <string>BNDL</string>
15
+ <key>CFBundleShortVersionString</key>
16
+ <string>1.0</string>
17
+ <key>CFBundleSignature</key>
18
+ <string>????</string>
19
+ <key>CFBundleVersion</key>
20
+ <string>1</string>
21
+ </dict>
22
+ </plist>