This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 8.5.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/8.5.x by this push:
new d2b6c69 Reproducible builds: Make i18n JARs reproducible
d2b6c69 is described below
commit d2b6c69838570db0264b68b7dea356287d2fb340
Author: Mark Thomas <[email protected]>
AuthorDate: Thu Mar 18 14:47:31 2021 +0000
Reproducible builds: Make i18n JARs reproducible
---
build.xml | 58 +++++++++++++++++++++++++++++++++++++---------------------
1 file changed, 37 insertions(+), 21 deletions(-)
diff --git a/build.xml b/build.xml
index 4560387..992961f 100644
--- a/build.xml
+++ b/build.xml
@@ -737,6 +737,7 @@
files placed in JARs -->
<touch datetime="${tstamp.file}" pattern="MM/dd/yyyy hh:mm:ss aa">
<fileset dir="${tomcat.classes}"/>
+ <fileset dir="${tomcat.i18n}"/>
</touch>
</target>
@@ -894,76 +895,91 @@
filesId="files.tomcat-dbcp" />
<!-- i18n JARs -->
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-de.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ <!-- zip task used rather than jar to control reproducibility -->
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-de.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_de.properties" />
</fileset>
+ <zipfileset file="${tomcat.manifests}" fullpath="META-INF" />
+ <zipfileset file="${tomcat.manifests}/default.manifest"
+ fullpath="META-INF/MANIFEST.MF" />
<zipfileset file="${tomcat.manifests}/default.notice"
fullpath="META-INF/NOTICE" />
<zipfileset file="${tomcat.manifests}/default.license"
fullpath="META-INF/LICENSE" />
- </jar>
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-es.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-es.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_es.properties" />
</fileset>
+ <zipfileset file="${tomcat.manifests}" fullpath="META-INF" />
+ <zipfileset file="${tomcat.manifests}/default.manifest"
+ fullpath="META-INF/MANIFEST.MF" />
<zipfileset file="${tomcat.manifests}/default.notice"
fullpath="META-INF/NOTICE" />
<zipfileset file="${tomcat.manifests}/default.license"
fullpath="META-INF/LICENSE" />
- </jar>
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-fr.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-fr.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_fr.properties" />
</fileset>
+ <zipfileset file="${tomcat.manifests}" fullpath="META-INF" />
+ <zipfileset file="${tomcat.manifests}/default.manifest"
+ fullpath="META-INF/MANIFEST.MF" />
<zipfileset file="${tomcat.manifests}/default.notice"
fullpath="META-INF/NOTICE" />
<zipfileset file="${tomcat.manifests}/default.license"
fullpath="META-INF/LICENSE" />
- </jar>
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-ja.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-ja.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_ja.properties" />
</fileset>
+ <zipfileset file="${tomcat.manifests}" fullpath="META-INF" />
+ <zipfileset file="${tomcat.manifests}/default.manifest"
+ fullpath="META-INF/MANIFEST.MF" />
<zipfileset file="${tomcat.manifests}/default.notice"
fullpath="META-INF/NOTICE" />
<zipfileset file="${tomcat.manifests}/default.license"
fullpath="META-INF/LICENSE" />
- </jar>
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-ko.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-ko.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_ko.properties" />
</fileset>
+ <zipfileset file="${tomcat.manifests}" fullpath="META-INF" />
+ <zipfileset file="${tomcat.manifests}/default.manifest"
+ fullpath="META-INF/MANIFEST.MF" />
<zipfileset file="${tomcat.manifests}/default.notice"
fullpath="META-INF/NOTICE" />
<zipfileset file="${tomcat.manifests}/default.license"
fullpath="META-INF/LICENSE" />
- </jar>
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-ru.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-ru.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_ru.properties" />
</fileset>
+ <zipfileset file="${tomcat.manifests}" fullpath="META-INF" />
+ <zipfileset file="${tomcat.manifests}/default.manifest"
+ fullpath="META-INF/MANIFEST.MF" />
<zipfileset file="${tomcat.manifests}/default.notice"
fullpath="META-INF/NOTICE" />
<zipfileset file="${tomcat.manifests}/default.license"
fullpath="META-INF/LICENSE" />
- </jar>
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-zh-CN.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-zh-CN.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_zh_CN.properties" />
</fileset>
+ <zipfileset file="${tomcat.manifests}" fullpath="META-INF" />
+ <zipfileset file="${tomcat.manifests}/default.manifest"
+ fullpath="META-INF/MANIFEST.MF" />
<zipfileset file="${tomcat.manifests}/default.notice"
fullpath="META-INF/NOTICE" />
<zipfileset file="${tomcat.manifests}/default.license"
fullpath="META-INF/LICENSE" />
- </jar>
+ </zip>
</target>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]