Yonas Kolb
8a993fd94c
move spec validation into seperate file
2017-09-24 19:42:14 +02:00
Yonas Kolb
2d1ccb6d1d
rename project.groups to project.fileGroups
2017-09-24 19:35:26 +02:00
Yonas Kolb
71e5b4a2f2
include project settings when checking for INFOPLIST_FILE
2017-09-24 19:21:27 +02:00
Yonas Kolb
67ad669ea5
add project xcconfig files
2017-09-23 22:48:50 +02:00
Yonas Kolb
8e3966a5b8
add groups to spec for specifying non build files
2017-09-23 22:39:15 +02:00
Yonas Kolb
eb5738dbd0
fix target xcconfig files not working
2017-09-23 22:39:12 +02:00
Yonas Kolb
a20885e6b4
checking build setting existence checks xcconfig files too
2017-09-23 21:31:36 +02:00
Yonas Kolb
2b4d8aa6ff
update generated LastUpgradeVersion to 0900
2017-09-19 13:14:38 +02:00
Yonas Kolb
a689e8f224
fix incorrect default build script shell path
2017-09-19 12:34:22 +02:00
Yonas Kolb
956edd3350
upgrade to xcodeproj 0.1.2
2017-09-14 21:28:09 +02:00
Palmero, Antonio
62f72d39bc
Filter out NSNull elements from the json dictionary.
...
This change allows us to override default BuildSettings.
For example:
If I want to keep the attribute SWIFT_OBJC_INTERFACE_HEADER_NAME empty,
(by default it contains some value). I just need to override this value
in the settings spec.
Before If I keep property empty, then in the generated settings the value
appear as <null>.
The method implemented recursively loop through the json dictionary
looking for NSNull objects and replace them by an empty string.
Filter out NSNull elements from the json dictionary.
This change allows us to override default BuildSettings.
For example:
If I want to keep the attribute SWIFT_OBJC_INTERFACE_HEADER_NAME empty,
(by default it contains some value). I just need to override this value
in the settings spec.
Before If I keep property empty, then in the generated settings the value
appear as <null>.
The method implemented recursively loop through the json dictionary
looking for NSNull objects and replace them by an empty string.
2017-09-13 13:58:32 +02:00
Palmero, Antonio
09ef25bd0d
Add support to C and C++ files in ‘Compile sources’
...
Previously the Compile Sources section was empty because it was not able
to recognize the file extension.
2017-09-08 17:21:33 +02:00
Yonas Kolb
ffd07ac5aa
Merge pull request #45 from yonaskolb/project_attributes
...
Project attributes
2017-08-30 17:23:20 +02:00
Yonas Kolb
86b3e1334e
load setting preset for combination of product and platform
2017-08-30 17:19:53 +02:00
Yonas Kolb
ea41e6bbc6
set project attributes
2017-08-30 17:06:41 +02:00
Yonas Kolb
183630159e
don't bother linking target dependencies
2017-08-30 16:46:31 +02:00
Yonas Kolb
6774934a1b
support include array in spec that merges other specs
2017-08-30 12:58:10 +02:00
Yonas Kolb
6bfb0eade6
fix "" not escaping in build scripts
2017-08-28 17:44:42 +02:00
Yonas Kolb
4bf00f42d5
fix embedded framework dependencies
2017-08-28 14:19:00 +02:00
Yonas Kolb
67c9626d98
add "$(inherited)" when setting automatic carthage FRAMEWORK_SEARCH_PATHS
2017-08-27 12:31:45 +02:00
Yonas Kolb
59d289f6db
automatically find Info.plist
2017-08-27 12:28:18 +02:00
Yonas Kolb
cb3232df9f
add dependency embed settings
2017-08-27 11:55:44 +02:00
Yonas Kolb
1ef53e39f0
change Target.Dependency to a struct with embed
2017-08-27 11:53:16 +02:00
Yonas Kolb
d830c3c1e4
automatically generate carthage framework search paths
2017-08-26 23:43:41 +02:00
Yonas Kolb
0adce9371c
generate carthage group in Frameworks
2017-08-26 22:15:41 +02:00
Yonas Kolb
d8ffafe4cf
rename setting presets to setting groups
2017-08-26 18:38:39 +02:00
Yonas Kolb
6f9f194863
rename RunScript to BuildScript
2017-08-26 15:01:09 +02:00
Yonas Kolb
5126b0cb7a
fixed localized files not being added to build phase of targets
2017-08-26 15:01:09 +02:00
Yonas Kolb
3cfd3ce816
swiftformat
2017-08-25 19:18:02 +02:00
Yonas Kolb
6c7cca1092
add option for carthageBuildPath
2017-08-25 16:22:40 +02:00
Yonas Kolb
e77faeddf3
upgrade to xcodeproj 0.1.1
2017-08-25 15:31:50 +02:00
Yonas Kolb
fc72702e33
update to xcodeproj 0.1.0
2017-08-25 15:05:31 +02:00
Yonas Kolb
91f8582d17
remove shell script escaping, as now escaped in xcodeproj
2017-08-25 11:39:17 +02:00
Yonas Kolb
edca4390e4
add BuildScript.runOnlyWhenInstalling
2017-08-24 17:02:27 +02:00
Yonas Kolb
f75e7f8140
remove com.apple.product-type. from product type settings
2017-08-24 11:41:14 +02:00
Yonas Kolb
6bc2ebef8e
fix SettingPreset path
2017-08-24 11:23:26 +02:00
Yonas Kolb
5730417b61
read resources from share
2017-08-24 01:23:07 +02:00
Yonas Kolb
4dcfd68356
log missing SettingPreset files
2017-08-24 00:47:19 +02:00
Yonas Kolb
5f999a2ab1
fix xcodeproj 0.0.9 module changes
2017-08-04 08:52:30 +02:00
Yonas Kolb
823eceba75
add unit tests to target schemes
2017-08-04 00:23:52 +02:00
Yonas Kolb
1d0e310e3d
dont't write PBXBuildFile settings if empty
2017-08-03 22:02:58 +02:00
Yonas Kolb
92dcc3739a
only generate copy build phases when needed
2017-08-03 22:02:58 +02:00
Yonas Kolb
7dda61318d
copy carthage dependencies in watch and message apps
2017-08-03 22:02:58 +02:00
Yonas Kolb
038ee6fde1
extension dependencies
2017-08-03 22:02:58 +02:00
Yonas Kolb
7a390bb31a
change scheme build targets schema
2017-08-03 22:02:49 +02:00
Yonas Kolb
52fd803386
add target name to all child pbx objects when generating uuid
2017-08-02 21:25:50 +02:00
Yonas Kolb
3d42c95e18
add spec validation for missing target config files
2017-08-02 21:15:19 +02:00
Yonas Kolb
b71eb02496
fix duplicate uuids
2017-08-02 13:29:45 +02:00
Yonas Kolb
63d98adb65
user PathKit for resolving absolute paths
2017-08-02 12:54:07 +02:00
Yonas Kolb
9cc1e50824
add run script support
2017-08-01 18:40:40 +02:00
Yonas Kolb
03b212c517
support absolute paths
2017-08-01 18:08:43 +02:00
Yonas Kolb
560cec746a
add format code script
2017-07-31 12:32:50 +02:00
Yonas Kolb
4614073cfa
rename Spec to ProjectSpec and moved into its own module
2017-07-28 16:32:35 +02:00
Yonas Kolb
be6f25d2fd
deterministic UUIDS
2017-07-28 00:20:38 +02:00
Yonas Kolb
28e12e5464
tweak Settings description
2017-07-27 15:00:54 +02:00
Yonas Kolb
2357146b06
overhaul build settings
2017-07-27 14:41:18 +02:00
Yonas Kolb
fd011213bb
reorder build setting merging
2017-07-27 12:10:43 +02:00
Yonas Kolb
9d5342d301
buildPresets
2017-07-26 23:18:45 +02:00
Yonas Kolb
4e35dc6b02
remove Spec.configVariants and move to Target.generateSchemes
2017-07-26 19:58:34 +02:00
Yonas Kolb
fb18197b27
generate schemes
2017-07-26 18:52:07 +02:00
Yonas Kolb
335a4af5e5
generate target scheme variants
2017-07-26 12:55:21 +02:00
Yonas Kolb
9cbd08e960
config variants
2017-07-26 12:54:37 +02:00
Yonas Kolb
bb300ca1f3
refactoring
2017-07-26 12:40:45 +02:00
Yonas Kolb
2b920ff393
support multiple sources
2017-07-26 12:40:25 +02:00
Yonas Kolb
66be8cdc9a
change from XCTest to Spectre
2017-07-26 00:55:11 +02:00
Yonas Kolb
6b2f360119
more tests
2017-07-25 23:13:16 +02:00
Yonas Kolb
4a90a065dc
move path out of Spec
2017-07-25 23:13:16 +02:00
Yonas Kolb
a777436e20
use spec.name for generated project name
2017-07-25 23:13:16 +02:00
Yonas Kolb
4e56536a61
fix error when build setting presets are empty
2017-07-25 09:31:29 +02:00
Yonas Kolb
cd209a1ced
automatically run carthage copy script
2017-07-25 01:24:23 +02:00
Yonas Kolb
d84971a612
framework dependencies
2017-07-25 01:24:23 +02:00
Yonas Kolb
ddb076ec91
carthage dependancies
2017-07-25 00:32:36 +02:00
Yonas Kolb
13d59d5fe1
fix group issue
2017-07-24 23:58:29 +02:00
Yonas Kolb
29002edaf5
fix group children not being in order
2017-07-24 23:38:20 +02:00
Yonas Kolb
2201f14f11
support shared sources
2017-07-24 23:38:20 +02:00
Yonas Kolb
8845ba98b5
generate target base configurations
2017-07-24 18:11:39 +02:00
Yonas Kolb
779f71f5a6
don't add Info.plist and .xcodeconfig to build files
2017-07-24 14:02:11 +02:00
Yonas Kolb
6e62645493
fix nested sources
2017-07-24 13:51:25 +02:00
Yonas Kolb
be77dd1826
write targets in order
2017-07-24 13:37:29 +02:00
Yonas Kolb
964cc65d7a
generate group ids in order
2017-07-24 13:26:58 +02:00
Yonas Kolb
d62bfe0c70
spec: make targets an array for ordering
2017-07-24 13:17:55 +02:00
Yonas Kolb
1e3bba46ce
changed dependency syntax
2017-07-24 12:46:01 +02:00
Yonas Kolb
46861d6a45
handle single source as well as array
2017-07-24 12:33:34 +02:00
Yonas Kolb
e7c98db0da
handle short form of product types
2017-07-24 12:33:16 +02:00
Yonas Kolb
41bdb6ea32
embed frameworks
2017-07-23 23:35:28 +02:00
Yonas Kolb
df161abdfb
localize sources
2017-07-23 23:12:14 +02:00
Yonas Kolb
07aebfdb2c
add languages to project
2017-07-23 22:39:51 +02:00
Yonas Kolb
c369e8b0b2
treat .m as source files
2017-07-23 21:25:02 +02:00
Yonas Kolb
7b9008b2e3
move config preset build settings into project
2017-07-23 21:22:59 +02:00
Yonas Kolb
b1e86aca58
renamed setting presets
2017-07-23 21:10:58 +02:00
Yonas Kolb
74f0986ffb
better build phases
2017-07-23 20:58:14 +02:00
Yonas Kolb
9e8150bf69
use yonaskolb/xcodeproj temporarily for swift 3
2017-07-23 14:02:53 +02:00
Yonas Kolb
49db993f52
cleanup
2017-07-22 21:59:29 +02:00
Yonas Kolb
bd0a741911
initializers on spec
2017-07-22 19:53:13 +02:00
Yonas Kolb
36eabc1383
framework linking
2017-07-22 12:42:05 +02:00
Yonas Kolb
11761e2bf0
spec linter
2017-07-22 11:15:37 +02:00
Yonas Kolb
14f411d8b0
build settings
2017-07-21 23:12:29 +02:00
Yonas Kolb
d2763ebe26
refactor generator
2017-07-21 12:24:17 +02:00
Yonas Kolb
1373ec19ac
refactored
2017-07-20 23:24:53 +02:00
Yonas Kolb
3c8062ac74
Test project
2017-07-19 18:33:43 +02:00
Yonas Kolb
9bd5568f6e
generate product type
2017-07-19 15:22:22 +02:00
Yonas Kolb
24eacc1f29
generate schemes
2017-07-19 15:15:21 +02:00
Yonas Kolb
ef402f6e36
initial commit
2017-07-19 14:55:01 +02:00