diff --git a/build/conf/mac/Contents/Info.plist b/build/conf/mac/Contents/Info.plist index 267beb392154..77df63ba5fb6 100644 --- a/build/conf/mac/Contents/Info.plist +++ b/build/conf/mac/Contents/Info.plist @@ -80,12 +80,6 @@ VMOptions @@vmoptions@@ -Xbootclasspath/a:../lib/boot.jar - VMOptions.i386 - @@vmoptions32@@ - - VMOptions.x86_64 - @@vmoptions64@@ - WorkingDirectory $APP_PACKAGE/bin diff --git a/build/conf/mac/Contents/MacOS/idea b/build/conf/mac/Contents/MacOS/idea index 45bdd2f535a0..5bd88ea33ccd 100755 Binary files a/build/conf/mac/Contents/MacOS/idea and b/build/conf/mac/Contents/MacOS/idea differ diff --git a/build/scripts/utils.gant b/build/scripts/utils.gant index e47cb847ab0d..be6209cfe997 100644 --- a/build/scripts/utils.gant +++ b/build/scripts/utils.gant @@ -309,7 +309,21 @@ binding.setVariable("layoutMacApp", { String path, String ch, Map args -> String minor = p("component.version.minor") String version = isEap() && !minor.contains("RC") && !minor.contains("Beta") ? "EAP $args.buildNumber" : "${p("component.version.major")}.${minor}" - String properties = readIdeaProperties(args) + Map properties = readIdeaProperties(args) + + def coreKeys = ["idea.platform.prefix", "idea.paths.selector"] + + String coreProperties = submapToXml(properties, coreKeys); + + StringBuilder effectiveProperties = new StringBuilder() + properties.each { k, v -> + if (!coreKeys.contains(k)) { + effectiveProperties.append("$k=$v\n"); + } + } + + new File("$path/bin/idea.properties").text = effectiveProperties.toString() + new File("$path/bin/idea.vmoptions").text = "$mem64 -XX:+UseCompressedOops".split(" ").join("\n") String classPath = classPathLibs.collect {"\$APP_PACKAGE/lib/${it}" }.join(":") @@ -323,9 +337,7 @@ binding.setVariable("layoutMacApp", { String path, String ch, Map args -> replacefilter(token: "@@year@@", value: "$todayYear") replacefilter(token: "@@version@@", value: version) replacefilter(token: "@@vmoptions@@", value: vmOptions) - replacefilter(token: "@@vmoptions32@@", value: "$mem32") - replacefilter(token: "@@vmoptions64@@", value: "$mem64 -XX:+UseCompressedOops") - replacefilter(token: "@@idea_properties@@", value: properties) + replacefilter(token: "@@idea_properties@@", value: coreProperties) replacefilter(token: "@@class_path@@", value: classPath) replacefilter(token: "@@help_id@@", value: helpId) } @@ -539,10 +551,10 @@ binding.setVariable("zipSources", { String home, String targetDir -> * @param args * @return text xml properties description in xml */ -private String readIdeaProperties(Map args) { +private Map readIdeaProperties(Map args) { String ideaPropertiesPath = args == null ? null : args.get("idea.properties.path") if (ideaPropertiesPath == null) { - return "" + return [:] } // read idea.properties file @@ -579,12 +591,18 @@ private String readIdeaProperties(Map args) { } } - // generate properties description for Info.plist + return ideaProperties; +} + +private String submapToXml(Map properties, List keys) { +// generate properties description for Info.plist StringBuilder buff = new StringBuilder() - ideaProperties.each { key, value -> + + keys.each { key -> + String value = properties[key] if (value != null) { String string = -""" + """ $key $value """