This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/9.0.x by this push:
new 7b4c116 Reproducible builds: Make i18n JARs reproducible
7b4c116 is described below
commit 7b4c116418232d49e19f6078d988d09974beda5c
Author: Mark Thomas <[email protected]>
AuthorDate: Thu Mar 18 14:47:31 2021 +0000
Reproducible builds: Make i18n JARs reproducible
---
build.xml | 74 ++++++++++++++++++++++++++++++++++++++++-----------------------
1 file changed, 47 insertions(+), 27 deletions(-)
diff --git a/build.xml b/build.xml
index 9ab1864..f3bc2f8 100644
--- a/build.xml
+++ b/build.xml
@@ -991,6 +991,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>
@@ -1174,96 +1175,115 @@
addOSGi="true" />
<!-- i18n JARs -->
- <jar jarfile="${tomcat.build}/lib/tomcat-i18n-cs.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ <!-- zip task used rather than jar to control reproducibility -->
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-cs.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_cs.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-de.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <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-pt-BR.jar"
- manifest="${tomcat.manifests}/default.manifest">
+ </zip>
+ <zip destfile="${tomcat.build}/lib/tomcat-i18n-pt-BR.jar">
<fileset dir="${tomcat.i18n}">
<include name="**/LocalStrings_pt_BR.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]