Support argfiles in kotlin compiler

Using '-Xargfile=path/to/argfile' will substitute
that argument with the content of argfile.

See KT-24472
This commit is contained in:
Dmitry Savvinov
2018-05-17 21:36:59 +03:00
parent ede2e227c2
commit 43467516ef
18 changed files with 210 additions and 29 deletions
@@ -61,6 +61,16 @@ public class CliTestGenerated extends AbstractCliTest {
runTest("compiler/testData/cli/jvm/apiVersionLessThanLanguage.args");
}
@TestMetadata("apiVersionLessThanLanguageUsingArgfile.args")
public void testApiVersionLessThanLanguageUsingArgfile() throws Exception {
runTest("compiler/testData/cli/jvm/apiVersionLessThanLanguageUsingArgfile.args");
}
@TestMetadata("argfileWithEscaping.args")
public void testArgfileWithEscaping() throws Exception {
runTest("compiler/testData/cli/jvm/argfileWithEscaping.args");
}
@TestMetadata("argumentPassedMultipleTimes.args")
public void testArgumentPassedMultipleTimes() throws Exception {
runTest("compiler/testData/cli/jvm/argumentPassedMultipleTimes.args");
@@ -386,6 +396,11 @@ public class CliTestGenerated extends AbstractCliTest {
runTest("compiler/testData/cli/jvm/legacySmartCastsAfterTry.args");
}
@TestMetadata("mixingArgfilesAndUsualArgs.args")
public void testMixingArgfilesAndUsualArgs() throws Exception {
runTest("compiler/testData/cli/jvm/mixingArgfilesAndUsualArgs.args");
}
@TestMetadata("multipleTextRangesInDiagnosticsOrder.args")
public void testMultipleTextRangesInDiagnosticsOrder() throws Exception {
runTest("compiler/testData/cli/jvm/multipleTextRangesInDiagnosticsOrder.args");
@@ -426,6 +441,11 @@ public class CliTestGenerated extends AbstractCliTest {
runTest("compiler/testData/cli/jvm/nonexistentScript.args");
}
@TestMetadata("nonexistingArgfile.args")
public void testNonexistingArgfile() throws Exception {
runTest("compiler/testData/cli/jvm/nonexistingArgfile.args");
}
@TestMetadata("pluginSimple.args")
public void testPluginSimple() throws Exception {
runTest("compiler/testData/cli/jvm/pluginSimple.args");