Skip to content

Commit eb48db2

Browse files
authored
Merge pull request #8682 from Pieter12345/ant-build-bugfix
Replace "unzip/tar" in build.xml by Ant's provided unzip/untar method
2 parents 9bb8fc3 + 96e7bc2 commit eb48db2

File tree

1 file changed

+53
-52
lines changed

1 file changed

+53
-52
lines changed

build/build.xml

Lines changed: 53 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,22 @@
114114
<include name="arduino-core/lib/*.jar" />
115115
</fileset>
116116

117+
<!-- Remove all default excludes for directory tasks (see https://ant.apache.org/manual/dirtasks.html#defaultexcludes) -->
118+
<defaultexcludes remove="**/.git"/>
119+
<defaultexcludes remove="**/.git/**"/>
120+
<defaultexcludes remove="**/.gitattributes"/>
121+
<defaultexcludes remove="**/.gitignore"/>
122+
<defaultexcludes remove="**/.gitmodules"/>
123+
<defaultexcludes remove="**/.hg"/>
124+
<defaultexcludes remove="**/.hg/**"/>
125+
<defaultexcludes remove="**/.hgignore"/>
126+
<defaultexcludes remove="**/.hgsub"/>
127+
<defaultexcludes remove="**/.hgsubstate"/>
128+
<defaultexcludes remove="**/.hgtags"/>
129+
<defaultexcludes remove="**/.bzr"/>
130+
<defaultexcludes remove="**/.bzr/**"/>
131+
<defaultexcludes remove="**/.bzrignore"/>
132+
117133
<target name="build" description="Build Arduino.">
118134
<antcall target="${platform}-build" />
119135

@@ -282,7 +298,7 @@
282298
<!-- copy hardware folder -->
283299
<target name="assemble-hardware" unless="light_bundle">
284300
<mkdir dir="${target.path}/hardware/arduino" />
285-
<antcall target="untar">
301+
<antcall target="untar-bz2">
286302
<param name="archive_file" value="avr-${AVRCORE-VERSION}.tar.bz2"/>
287303
<param name="archive_url" value="https://downloads.arduino.cc/cores/avr-${AVRCORE-VERSION}.tar.bz2"/>
288304
<param name="final_folder" value="${target.path}/hardware/arduino/avr"/>
@@ -496,7 +512,7 @@
496512
<!-- Unzip AVR tools -->
497513
<target name="macosx-build-avr-toolchain" unless="light_bundle">
498514
<antcall target="avr-toolchain-bundle">
499-
<param name="unpack_target" value="untar"/>
515+
<param name="unpack_target" value="untar-native"/>
500516
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-i386-apple-darwin11.tar.bz2"/>
501517
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
502518
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-i386-apple-darwin11.tar.bz2"/>
@@ -528,9 +544,7 @@
528544
<delete dir="macosx/work/Arduino.app" />
529545

530546
<!-- Unzip unsigned app into working dir -->
531-
<exec executable="unzip" dir="macosx/work" failonerror="true">
532-
<arg line="../arduino-${version}-${platform}.zip" />
533-
</exec>
547+
<unzip src="../arduino-${version}-${platform}.zip" dest="macosx/work"/>
534548

535549
<!-- Unlock keychain file -->
536550
<exec executable="security" dir="macosx/work" failonerror="true">
@@ -711,7 +725,7 @@
711725
<antcall target="build-arduino-builder" />
712726

713727
<antcall target="avr-toolchain-bundle">
714-
<param name="unpack_target" value="untar"/>
728+
<param name="unpack_target" value="untar-native"/>
715729
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-armhf-pc-linux-gnu.tar.bz2"/>
716730
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
717731
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-armhf-pc-linux-gnu.tar.bz2"/>
@@ -753,7 +767,7 @@
753767
<antcall target="build-arduino-builder" />
754768

755769
<antcall target="avr-toolchain-bundle">
756-
<param name="unpack_target" value="untar"/>
770+
<param name="unpack_target" value="untar-native"/>
757771
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-aarch64-pc-linux-gnu.tar.bz2"/>
758772
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
759773
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-aarch64-pc-linux-gnu.tar.bz2"/>
@@ -771,7 +785,7 @@
771785
<antcall target="build-arduino-builder" />
772786

773787
<antcall target="avr-toolchain-bundle">
774-
<param name="unpack_target" value="untar"/>
788+
<param name="unpack_target" value="untar-native"/>
775789
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-i686-pc-linux-gnu.tar.bz2"/>
776790
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
777791
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-i686-pc-linux-gnu.tar.bz2"/>
@@ -789,7 +803,7 @@
789803
<antcall target="build-arduino-builder" />
790804

791805
<antcall target="avr-toolchain-bundle">
792-
<param name="unpack_target" value="untar"/>
806+
<param name="unpack_target" value="untar-native"/>
793807
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-x86_64-pc-linux-gnu.tar.bz2"/>
794808
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
795809
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-x86_64-pc-linux-gnu.tar.bz2"/>
@@ -838,7 +852,7 @@
838852
<target name="build-arduino-builder" unless="no_arduino_builder">
839853
<delete dir="${staging_folder}/arduino-builder-${platform}" includeemptydirs="true"/>
840854
<mkdir dir="${staging_folder}/arduino-builder-${platform}"/>
841-
<antcall target="untar">
855+
<antcall target="untar-native">
842856
<param name="archive_file" value="./arduino-builder-${platform}-${ARDUINO-BUILDER-VERSION}.tar.bz2" />
843857
<param name="archive_url" value="https://downloads.arduino.cc/tools/arduino-builder-${platform}-${ARDUINO-BUILDER-VERSION}.tar.bz2" />
844858
<param name="final_folder" value="${staging_folder}/arduino-builder-${platform}/arduino-builder" />
@@ -894,6 +908,14 @@
894908

895909
<!-- Ensure that the tool is downloaded and test checksums, if everything's ok unzip it on the tools folder -->
896910
<target name="untar" depends="untar-unzip-checksum" unless="${archive_file}_installed">
911+
<echo>Untarring ${archive_file} into folder ${dest_folder}</echo>
912+
<untar src="${archive_file}" dest="${dest_folder}"/>
913+
</target>
914+
<target name="untar-bz2" depends="untar-unzip-checksum" unless="${archive_file}_installed">
915+
<echo>Untarring ${archive_file} into folder ${dest_folder}</echo>
916+
<untar src="${archive_file}" dest="${dest_folder}" compression="bzip2"/>
917+
</target>
918+
<target name="untar-native" depends="untar-unzip-checksum" unless="${archive_file}_installed">
897919
<echo>Untarring ${archive_file} into folder ${dest_folder}</echo>
898920
<exec executable="tar" failonerror="true">
899921
<arg value="xf"/>
@@ -903,18 +925,6 @@
903925
</target>
904926

905927
<target name="unzip" depends="untar-unzip-checksum" unless="${archive_file}_installed">
906-
<echo>Unzipping ${archive_file} into folder ${dest_folder}</echo>
907-
<mkdir dir="${dest_folder}" />
908-
<exec executable="unzip" failonerror="true">
909-
<arg value="-q" />
910-
<arg value="-n" />
911-
<arg value="-d" />
912-
<arg value="${dest_folder}" />
913-
<arg value="${archive_file}" />
914-
</exec>
915-
</target>
916-
917-
<target name="unzip-with-ant-task" depends="untar-unzip-checksum" unless="${archive_file}_installed">
918928
<echo>Unzipping ${archive_file} into folder ${dest_folder}</echo>
919929
<mkdir dir="${dest_folder}" />
920930
<unzip src="${archive_file}" dest="${dest_folder}"/>
@@ -994,7 +1004,7 @@
9941004
</target>
9951005

9961006
<target name="download-launch4j-windows">
997-
<antcall target="unzip-with-ant-task">
1007+
<antcall target="unzip">
9981008
<param name="archive_file" value="windows/launch4j-3.9-win32.zip"/>
9991009
<param name="archive_url" value="https://downloads.arduino.cc/tools/launch4j-3.9-win32.zip"/>
10001010
<param name="final_folder" value="windows/launcher/launch4j"/>
@@ -1003,7 +1013,7 @@
10031013
</target>
10041014

10051015
<target name="download-launch4j-linux">
1006-
<antcall target="untar">
1016+
<antcall target="untar-native">
10071017
<param name="archive_file" value="windows/launch4j-3.9-linux.tgz"/>
10081018
<param name="archive_url" value="https://downloads.arduino.cc/tools/launch4j-3.9-linux.tgz"/>
10091019
<param name="final_folder" value="windows/launcher/launch4j"/>
@@ -1068,7 +1078,7 @@
10681078

10691079
<delete dir="${staging_folder}/arduino-builder-windows" includeemptydirs="true"/>
10701080
<mkdir dir="${staging_folder}/arduino-builder-windows"/>
1071-
<antcall target="unzip-with-ant-task">
1081+
<antcall target="unzip">
10721082
<param name="archive_file" value="./arduino-builder-windows-${ARDUINO-BUILDER-VERSION}.zip" />
10731083
<param name="archive_url" value="https://downloads.arduino.cc/tools/arduino-builder-windows-${ARDUINO-BUILDER-VERSION}.zip" />
10741084
<param name="final_folder" value="${staging_folder}/arduino-builder-windows/arduino-builder.exe" />
@@ -1087,42 +1097,33 @@
10871097
</copy>
10881098
<delete dir="${staging_folder}/arduino-builder-windows" includeemptydirs="true"/>
10891099

1090-
<exec executable="unzip" failonerror="true">
1091-
<arg value="-q" />
1092-
<arg value="-n" />
1093-
<arg value="-j" />
1094-
<arg value="-d" />
1095-
<arg value="windows/work/lib" />
1096-
<arg value="../arduino-core/lib/jna-4.2.2.jar" />
1097-
<arg value="com/sun/jna/win32-x86/jnidispatch.dll" />
1098-
</exec>
1100+
<unzip src="../arduino-core/lib/jna-4.2.2.jar" dest="windows/work/lib">
1101+
<patternset>
1102+
<include name="com/sun/jna/win32-x86/jnidispatch.dll"/>
1103+
</patternset>
1104+
<mapper type="flatten"/>
1105+
</unzip>
10991106
<move file="windows/work/lib/jnidispatch.dll" tofile="windows/work/lib/jnidispatch-4.2.2-win32-x86.dll" />
11001107
<antcall target="make-file-executable">
11011108
<param name="file" value="windows/work/lib/jnidispatch-4.2.2-win32-x86.dll" />
11021109
</antcall>
11031110

1104-
<exec executable="unzip" failonerror="true">
1105-
<arg value="-q" />
1106-
<arg value="-n" />
1107-
<arg value="-j" />
1108-
<arg value="-d" />
1109-
<arg value="windows/work/lib" />
1110-
<arg value="../arduino-core/lib/jssc-2.8.0-arduino3.jar" />
1111-
<arg value="libs/windows/jSSC-2.8_x86.dll" />
1112-
</exec>
1111+
<unzip src="../arduino-core/lib/jssc-2.8.0-arduino3.jar" dest="windows/work/lib">
1112+
<patternset>
1113+
<include name="libs/windows/jSSC-2.8_x86.dll"/>
1114+
</patternset>
1115+
<mapper type="flatten"/>
1116+
</unzip>
11131117
<move file="windows/work/lib/jSSC-2.8_x86.dll" tofile="windows/work/lib/jSSC-2.8_x86.dll" />
11141118
<antcall target="make-file-executable">
11151119
<param name="file" value="windows/work/lib/jSSC-2.8_x86.dll" />
11161120
</antcall>
1117-
<exec executable="unzip" failonerror="true">
1118-
<arg value="-q" />
1119-
<arg value="-n" />
1120-
<arg value="-j" />
1121-
<arg value="-d" />
1122-
<arg value="windows/work/lib" />
1123-
<arg value="../arduino-core/lib/jssc-2.8.0-arduino3.jar" />
1124-
<arg value="libs/windows/jSSC-2.8_x86_64.dll" />
1125-
</exec>
1121+
<unzip src="../arduino-core/lib/jssc-2.8.0-arduino3.jar" dest="windows/work/lib">
1122+
<patternset>
1123+
<include name="libs/windows/jSSC-2.8_x86_64.dll"/>
1124+
</patternset>
1125+
<mapper type="flatten"/>
1126+
</unzip>
11261127
<move file="windows/work/lib/jSSC-2.8_x86_64.dll" tofile="windows/work/lib/jSSC-2.8_x86_64.dll" />
11271128
<antcall target="make-file-executable">
11281129
<param name="file" value="windows/work/lib/jSSC-2.8_x86_64.dll" />

0 commit comments

Comments
 (0)