Commit f2a8f79c authored by Jérôme Pouiller's avatar Jérôme Pouiller Committed by Thomas Petazzoni
Browse files

freescale-imx: Add helper to extract self-extractible binaries



[Thomas:
 - reword the comment of the new macro, and add details about the
   expected arguments, as suggested by Yann E. Morin.
 - rework the logic to move the files in $(@D), as it was simply not
   working in the original patch. $(basename $(1)) was used to get the
   filename without the extension, but it also contains the full
   path. $(basename $(notdir $(1))) is needed.]

Signed-off-by: default avatarJérôme Pouiller <jezz@sysmic.org>
Reviewed-by: default avatar"Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent 46ede997
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -7,4 +7,29 @@
FREESCALE_IMX_VERSION = 3.10.17-1.0.0
FREESCALE_IMX_SITE = http://www.freescale.com/lgfiles/NMG/MAD/YOCTO

# Helper for self-extracting binaries distributed by Freescale.
#
# The --force option makes sure it doesn't fail if the source
# directory already exists. The --auto-accept skips the license check,
# as it is not needed in Buildroot because we have legal-info. Since
# there's a EULA in the binary file, we extract it in this macro, and
# it should therefore be added to the LICENSE_FILES variable of
# packages using this macro. Also, remember to set REDISTRIBUTE to
# "NO". Indeed, this is a legal minefield: the EULA specifies that the
# Board Support Package includes software and hardware (sic!) for
# which a separate license is needed...
#
# $(1): full path to the archive file
#
define FREESCALE_IMX_EXTRACT_HELPER
	awk 'BEGIN      { start = 0; } \
	     /^EOEULA/  { start = 0; } \
	                { if (start) print; } \
	     /<<EOEULA/ { start = 1; }' \
	    $(1) > $(@D)/EULA
	cd $(@D) && sh $(1) --force --auto-accept
	find $(@D)/$(basename $(notdir $(1))) -mindepth 1 -maxdepth 1 -exec mv {} $(@D) \;
	rmdir $(@D)/$(basename $(notdir $(1)))
endef

include $(sort $(wildcard package/freescale-imx/*/*.mk))