Skip to content

Commit 96e7bc2

Browse files
facchinmPieter12345
authored andcommitted
Use tar native binary for extraction on unix
To overcome ant untar behaviour (executable bits being lost)
1 parent afbf756 commit 96e7bc2

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

build/build.xml

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -512,7 +512,7 @@
512512
<!-- Unzip AVR tools -->
513513
<target name="macosx-build-avr-toolchain" unless="light_bundle">
514514
<antcall target="avr-toolchain-bundle">
515-
<param name="unpack_target" value="untar"/>
515+
<param name="unpack_target" value="untar-native"/>
516516
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-i386-apple-darwin11.tar.bz2"/>
517517
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
518518
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-i386-apple-darwin11.tar.bz2"/>
@@ -725,7 +725,7 @@
725725
<antcall target="build-arduino-builder" />
726726

727727
<antcall target="avr-toolchain-bundle">
728-
<param name="unpack_target" value="untar"/>
728+
<param name="unpack_target" value="untar-native"/>
729729
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-armhf-pc-linux-gnu.tar.bz2"/>
730730
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
731731
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-armhf-pc-linux-gnu.tar.bz2"/>
@@ -767,7 +767,7 @@
767767
<antcall target="build-arduino-builder" />
768768

769769
<antcall target="avr-toolchain-bundle">
770-
<param name="unpack_target" value="untar"/>
770+
<param name="unpack_target" value="untar-native"/>
771771
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-aarch64-pc-linux-gnu.tar.bz2"/>
772772
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
773773
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-aarch64-pc-linux-gnu.tar.bz2"/>
@@ -785,7 +785,7 @@
785785
<antcall target="build-arduino-builder" />
786786

787787
<antcall target="avr-toolchain-bundle">
788-
<param name="unpack_target" value="untar"/>
788+
<param name="unpack_target" value="untar-native"/>
789789
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-i686-pc-linux-gnu.tar.bz2"/>
790790
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
791791
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-i686-pc-linux-gnu.tar.bz2"/>
@@ -803,7 +803,7 @@
803803
<antcall target="build-arduino-builder" />
804804

805805
<antcall target="avr-toolchain-bundle">
806-
<param name="unpack_target" value="untar"/>
806+
<param name="unpack_target" value="untar-native"/>
807807
<param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-x86_64-pc-linux-gnu.tar.bz2"/>
808808
<param name="gcc_version" value="${AVRGCC-VERSION}"/>
809809
<param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-x86_64-pc-linux-gnu.tar.bz2"/>
@@ -852,7 +852,7 @@
852852
<target name="build-arduino-builder" unless="no_arduino_builder">
853853
<delete dir="${staging_folder}/arduino-builder-${platform}" includeemptydirs="true"/>
854854
<mkdir dir="${staging_folder}/arduino-builder-${platform}"/>
855-
<antcall target="untar">
855+
<antcall target="untar-native">
856856
<param name="archive_file" value="./arduino-builder-${platform}-${ARDUINO-BUILDER-VERSION}.tar.bz2" />
857857
<param name="archive_url" value="https://downloads.arduino.cc/tools/arduino-builder-${platform}-${ARDUINO-BUILDER-VERSION}.tar.bz2" />
858858
<param name="final_folder" value="${staging_folder}/arduino-builder-${platform}/arduino-builder" />
@@ -915,6 +915,14 @@
915915
<echo>Untarring ${archive_file} into folder ${dest_folder}</echo>
916916
<untar src="${archive_file}" dest="${dest_folder}" compression="bzip2"/>
917917
</target>
918+
<target name="untar-native" depends="untar-unzip-checksum" unless="${archive_file}_installed">
919+
<echo>Untarring ${archive_file} into folder ${dest_folder}</echo>
920+
<exec executable="tar" failonerror="true">
921+
<arg value="xf"/>
922+
<arg value="${archive_file}"/>
923+
<arg value="--directory=${dest_folder}"/>
924+
</exec>
925+
</target>
918926

919927
<target name="unzip" depends="untar-unzip-checksum" unless="${archive_file}_installed">
920928
<echo>Unzipping ${archive_file} into folder ${dest_folder}</echo>
@@ -1005,7 +1013,7 @@
10051013
</target>
10061014

10071015
<target name="download-launch4j-linux">
1008-
<antcall target="untar">
1016+
<antcall target="untar-native">
10091017
<param name="archive_file" value="windows/launch4j-3.9-linux.tgz"/>
10101018
<param name="archive_url" value="https://downloads.arduino.cc/tools/launch4j-3.9-linux.tgz"/>
10111019
<param name="final_folder" value="windows/launcher/launch4j"/>

0 commit comments

Comments
 (0)