Fix iOS linker flags
This commit is contained in:
@@ -118,7 +118,7 @@ class IOSPlatform extends PlatformTarget {
|
||||
|
||||
var name = Path.withoutDirectory (Path.withoutExtension (dependency.path));
|
||||
|
||||
// TODO: enable again
|
||||
project.config.push ("ios.linker-flags", "-force_load $SRCROOT/$PRODUCT_NAME/lib/$ARCHS/" + Path.withoutDirectory (dependency.path));
|
||||
//project.config.ios.linkerFlags.push ("-force_load $SRCROOT/$PRODUCT_NAME/lib/$ARCHS/" + Path.withoutDirectory (dependency.path));
|
||||
|
||||
if (StringTools.startsWith (name, "lib")) {
|
||||
|
||||
@@ -384,7 +384,7 @@ abstract ConfigData(Dynamic) to Dynamic from Dynamic {
|
||||
|
||||
if (!hasChildren && !hasAttributes) {
|
||||
|
||||
parseValue (child, bucket);
|
||||
parseValue (child, childBucket);
|
||||
|
||||
}
|
||||
|
||||
@@ -405,6 +405,60 @@ abstract ConfigData(Dynamic) to Dynamic from Dynamic {
|
||||
}
|
||||
|
||||
|
||||
public function push (id:String, value:Dynamic):Void {
|
||||
|
||||
var tree = id.split ('.');
|
||||
|
||||
if (tree.length <= 1) {
|
||||
|
||||
if (!Reflect.hasField (this, id + "___array")) {
|
||||
|
||||
Reflect.setField (this, id + "___array", Reflect.hasField (this, id) ? [ ObjectHelper.deepCopy (Reflect.field (this, id)) ] : []);
|
||||
|
||||
}
|
||||
|
||||
var array:Array<Dynamic> = Reflect.field (this, id + "___array");
|
||||
array.push (value);
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
var current = this;
|
||||
var field = tree.pop ();
|
||||
|
||||
for (leaf in tree) {
|
||||
|
||||
if (!Reflect.hasField (current, leaf)) {
|
||||
|
||||
Reflect.setField (current, leaf, {});
|
||||
current = Reflect.field (current, leaf);
|
||||
|
||||
} else {
|
||||
|
||||
current = Reflect.field (current, leaf);
|
||||
|
||||
if (current == null) {
|
||||
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (!Reflect.hasField (current, field + "___array")) {
|
||||
|
||||
Reflect.setField (current, field + "___array", Reflect.hasField (current, field) ? [ ObjectHelper.deepCopy (Reflect.field (current, field)) ] : []);
|
||||
|
||||
}
|
||||
|
||||
var array:Array<Dynamic> = Reflect.field (current, field + "___array");
|
||||
array.push (value);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function set (id:String, value:Dynamic):Void {
|
||||
|
||||
var tree = id.split ('.');
|
||||
@@ -412,6 +466,7 @@ abstract ConfigData(Dynamic) to Dynamic from Dynamic {
|
||||
if (tree.length <= 1) {
|
||||
|
||||
Reflect.setField (this, id, value);
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1365,10 +1365,26 @@ class ProjectXMLParser extends HXProject {
|
||||
|
||||
case "extension":
|
||||
|
||||
var extensions = config.getArrayString ("android.extensions");
|
||||
|
||||
if (extensions == null || extensions.indexOf (value) == -1) {
|
||||
|
||||
config.push ("android.extensions", value);
|
||||
|
||||
}
|
||||
|
||||
//ArrayHelper.addUnique (config.android.extensions, value);
|
||||
|
||||
case "permission":
|
||||
|
||||
var permissions = config.getArrayString ("android.permissions");
|
||||
|
||||
if (permissions == null || permissions.indexOf (value) == -1) {
|
||||
|
||||
config.push ("android.permissions", value);
|
||||
|
||||
}
|
||||
|
||||
//ArrayHelper.addUnique (config.android.permissions, value);
|
||||
|
||||
default:
|
||||
@@ -1469,6 +1485,7 @@ class ProjectXMLParser extends HXProject {
|
||||
|
||||
if (element.has.resolve ("linker-flags")) {
|
||||
|
||||
config.push ("ios.linker-flags", substitute (element.att.resolve ("linker-flags")));
|
||||
//config.ios.linkerFlags.push (substitute (element.att.resolve ("linker-flags")));
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user