From ec163549f98ae6176d40946e542889ed7723eb02 Mon Sep 17 00:00:00 2001 From: Zlatin Balevsky <zlatinb@gmail.com> Date: Thu, 13 May 2021 12:45:50 +0000 Subject: [PATCH] Fixes for reproducible Gradle build --- apps/i2ptunnel/build.gradle | 22 +++++++++++++++++++++- apps/routerconsole/build.gradle | 21 ++++++++++++++++++++- apps/susidns/build.gradle | 23 ++++++++++++++++++++++- reproducible/build.gradle | 3 ++- 4 files changed, 65 insertions(+), 4 deletions(-) diff --git a/apps/i2ptunnel/build.gradle b/apps/i2ptunnel/build.gradle index fd5c8e5362..bd1ea1510d 100644 --- a/apps/i2ptunnel/build.gradle +++ b/apps/i2ptunnel/build.gradle @@ -75,7 +75,27 @@ task helpersJar(type: Jar) { archiveBaseName='i2pTunnelHelpers' } +task copyJsps(type: Copy) { + doFirst { + def f = file("$buildDir/jsp_copy") + f.mkdirs() + } + from("jsp") + include("**/*.jsp") + include("**/*.jsi") + into("$buildDir/jsp_copy") + + doLast { + fileTree("$buildDir/jsp_copy").getFiles().each { + if (it.getName().endsWith("jsi")) + it.setLastModified(0) + } + } +} + + task precompileJsp(type : JavaExec) { + dependsOn copyJsps classpath = sourceSets.main.runtimeClasspath main = 'net.i2p.servlet.util.JspC' @@ -90,7 +110,7 @@ task precompileJsp(type : JavaExec) { args "-webinc" args "$buildDir/web-fragment.xml" args "-webapp" - args "jsp" + args "$buildDir/jsp_copy" doLast { def output = new File("$buildDir/compiledJsps") output.mkdirs() diff --git a/apps/routerconsole/build.gradle b/apps/routerconsole/build.gradle index 60bad6e0e5..a110ab116c 100644 --- a/apps/routerconsole/build.gradle +++ b/apps/routerconsole/build.gradle @@ -89,7 +89,26 @@ task helpersJar(type: Jar) { } +task copyJsps(type: Copy) { + doFirst { + def f = file("$buildDir/jsp_copy") + f.mkdirs() + } + from("jsp") + include("**/*.jsp") + include("**/*.jsi") + into("$buildDir/jsp_copy") + + doLast { + fileTree("$buildDir/jsp_copy").getFiles().each { + if (it.getName().endsWith("jsi")) + it.setLastModified(0) + } + } +} + task precompileJsp(type: JavaExec) { + dependsOn copyJsps classpath = sourceSets.main.runtimeClasspath main = 'net.i2p.servlet.util.JspC' @@ -104,7 +123,7 @@ task precompileJsp(type: JavaExec) { args "-webinc" args "$buildDir/web-fragment.xml" args "-webapp" - args "jsp" + args "$buildDir/jsp_copy" doLast { def output = new File("$buildDir/compiledJsps") output.mkdirs() diff --git a/apps/susidns/build.gradle b/apps/susidns/build.gradle index 9939f41242..672f7805b3 100644 --- a/apps/susidns/build.gradle +++ b/apps/susidns/build.gradle @@ -29,11 +29,32 @@ task bundle { } } +task copyJsps(type: Copy) { + doFirst { + def f = file("$buildDir/jsp_copy") + f.mkdirs() + } + from("src/jsp") + include("**/*.jsp") + include("**/*.jsi") + into("$buildDir/jsp_copy") + + doLast { + fileTree("$buildDir/jsp_copy").getFiles().each { + if (it.getName().endsWith("jsi")) + it.setLastModified(0) + } + } +} + + task precompileJsp(type: JavaExec) { doFirst { file("$buildDir/tmp_jsp").mkdirs() } + dependsOn copyJsps + classpath = sourceSets.main.runtimeClasspath + fileTree("src/lib") main = 'net.i2p.servlet.util.JspC' @@ -48,7 +69,7 @@ task precompileJsp(type: JavaExec) { args "-webinc" args "$buildDir/web-fragment.xml" args "-webapp" - args "src/jsp" + args "$buildDir/jsp_copy" doLast { // normalize the order of the _jspx_dependents ant.replaceregexp(file : "$buildDir/tmp_jsp/i2p/susi/dns/jsp/addressbook_jsp.java", diff --git a/reproducible/build.gradle b/reproducible/build.gradle index 27c92d19c8..29c9d9faf4 100644 --- a/reproducible/build.gradle +++ b/reproducible/build.gradle @@ -26,7 +26,8 @@ dependencies { implementation project(':core') implementation project(':router') implementation project(path : ':installer', configuration: 'jbigi') - implementation fileTree("../apps/susidns/src/lib") + implementation files("../apps/susidns/src/lib/standard.jar") + implementation files("../apps/susidns/src/lib/jstl.jar") } import java.nio.file.* -- GitLab