diff --git a/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/CodegenEngine.java b/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/CodegenEngine.java index d75b69bbc..0e4f5ee65 100644 --- a/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/CodegenEngine.java +++ b/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/CodegenEngine.java @@ -191,7 +191,7 @@ private void generateProjectPropertiesFile(final Path outputPath) "dafnyVersion", dafnyVersionString ); - writeTemplatedFile("project.properties", parameters); + writeTemplatedFile("project.properties", outputPath.toString(), parameters); } private void generateDafny(final Path outputDir) { @@ -734,11 +734,20 @@ private Path standardLibraryPath() { private void writeTemplatedFile( String templatePath, Map parameters + ) { + writeTemplatedFile(templatePath, templatePath, parameters); + } + + private void writeTemplatedFile( + String templatePath, + String outputTemplatePath, + Map parameters ) { IOUtils.writeTemplatedFile( getClass(), libraryRoot, templatePath, + outputTemplatePath, parameters ); } diff --git a/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/utils/IOUtils.java b/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/utils/IOUtils.java index 86e625e5e..f0336927f 100644 --- a/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/utils/IOUtils.java +++ b/codegen/smithy-dafny-codegen/src/main/java/software/amazon/polymorph/utils/IOUtils.java @@ -82,6 +82,7 @@ public static void writeTemplatedFile( Class klass, Path rootPath, String templatePath, + String templateOutputPath, Map parameters ) { String content = IoUtils.readUtf8Resource( @@ -90,9 +91,9 @@ public static void writeTemplatedFile( ); content = evalTemplate(content, parameters); - templatePath = evalTemplate(templatePath, parameters); + templateOutputPath = evalTemplate(templateOutputPath, parameters); - Path outputPath = rootPath.resolve(templatePath); + Path outputPath = rootPath.resolve(templateOutputPath); try { Files.createDirectories(outputPath.getParent()); } catch (IOException e) { diff --git a/codegen/smithy-dafny-codegen/src/main/resources/templates/project.properties b/codegen/smithy-dafny-codegen/src/main/resources/templates/project.properties index 6610000df..56b9ad094 100644 --- a/codegen/smithy-dafny-codegen/src/main/resources/templates/project.properties +++ b/codegen/smithy-dafny-codegen/src/main/resources/templates/project.properties @@ -1,3 +1,4 @@ # This file stores the top level dafny version information. # All elements of the project need to agree on this version. dafnyVersion=$dafnyVersion:L +dafnyRuntimeJavaVersion=$dafnyVersion:L