From patchwork Sat Mar 31 14:23:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893789 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="ZEa8QrGd"; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D12Y6wk3z9s2b for ; Sun, 1 Apr 2018 01:24:21 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 4B43789F2E; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CnF8klPmuBXl; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 091ED89FDF; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 388D41C16D3 for ; Sat, 31 Mar 2018 14:24:15 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 350A589F2E for ; Sat, 31 Mar 2018 14:24:15 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OKKHZM40UtGG for ; Sat, 31 Mar 2018 14:24:12 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f175.google.com (mail-wr0-f175.google.com [209.85.128.175]) by whitealder.osuosl.org (Postfix) with ESMTPS id 3B36889FDF for ; Sat, 31 Mar 2018 14:24:12 +0000 (UTC) Received: by mail-wr0-f175.google.com with SMTP id z73so10041449wrb.0 for ; Sat, 31 Mar 2018 07:24:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=GIOKMYVlrEDx2s4TXfOflCgdzI6NwgP7F4dNOS58zHY=; b=ZEa8QrGdct41qpaY1VC0WuzveH2HyjeSVjCDB4E5b6FHjcfWHVab4ACeD2JK44Vb8C kvvc5aEDb6Zhm6lvyLH1SIHkQ5oyuwMn/WliJTeJpvakeLPGFmYcj9RpB/TsqCoqqgiz A9YrPlJDREoWZV3cc4PMUI+7VGYUuu+kK8y/4uiJBDpkbThEm7M+P/e/etNrDuusLTjP uPxFB+tDbnE/1+p5ik8+wYGulHKyG/KmiE9NTq62tyueDci7zjL18/IN4j3P9A3vMRsk 32A0+5mJeZyINgmgUiRYf0r1RmY9R9ZpEq1XtoxcLT8rfA7HeTuIn2THEE1FKKjqXbax mF6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=GIOKMYVlrEDx2s4TXfOflCgdzI6NwgP7F4dNOS58zHY=; b=inviFbt2oyNOCYF+8tjRemrHF7znqI7EsoNKEjNTPyGeh2wsU6gYgvimevjcVokhvf U8gLvVttuvoa1hUSlCpLeIY2zLOz5odEdkvx7z34Fd2wVraKGiWYxfAV3q8sfQ0iNpj/ IK8hEF2okz5ww22fHyWQ9PkKd3Glad7JP8mWoqATzdlqgiGGT43fIWVTkJ5p6F2d96OB X9q3x4A6H2U0w657D8pzg6Wygrn2Fy962HLHcWGdzNl65pvLk4+BQNH0ZBsOuYESzGS5 dSK9Y6k2TIhdYfoGeFih+WxgzU7Gyf7cffUvbEmsqd+/jdqCiPdGFsk5L598yAp7JlSB rqmg== X-Gm-Message-State: AElRT7EF8BArIRcMp1OYiiEvIgCT9guYs/QxRuW4G9EujMSVFS99guk8 OH5dt+yNuDaQsOZiZEGBH19GebOz X-Google-Smtp-Source: AIpwx4+URD+HIiMUiYxBhuy7PBoOVFOjUKw66L52wovmpiJ53ZFlXs13MH0lcW7lboYjwDXLxZwkBQ== X-Received: by 10.223.166.102 with SMTP id k93mr2126165wrc.231.1522506250083; Sat, 31 Mar 2018 07:24:10 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:09 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:23:56 +0200 Message-Id: <20180331142407.9522-2-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 02/13] download: put most of the infra in dl-wrapper X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" The goal here is to simplify the infrastructure by putting most of the code in the dl-wrapper as it's easier to implement and to read. Most of the functions were common already, this patch finalizes it by making the pkg-download.mk pass all the parameters needed to the dl-wrapper which in turns will pass everything to every backend. The backend will then cherry-pick what it needs from these arguments and act accordingly. It eases the transition to the addition of a sub directory per package in the DL_DIR, and later on, a git cache. Signed-off-by: Maxime Hadjinlian Tested-by: Luca Ceresoli Reviewed-by: Luca Ceresoli --- v1 -> v2: - Rename cp backend to file (Arnout) - Don't use BR_BACKEND_DL_GETOPTS for dl-wrapper (Arnout) - Add "urlencode" to scheme passed to the dl-wrapper to support the fact that we need to urlencode the filename when using PRIMARY and BACKUP mirror (some files are named toto.c?v=1.0) (Arnout) - Fix uristripscheme replaced by bash'ism (Arnout) - Add the check hash into the loop, exit with error only if all the download+check failed. (Arnout) --- missing-hash.py | 145 ++++++++++++++++++++++++++++++++++++ package/pkg-download.mk | 166 ++++++++---------------------------------- support/download/cvs | 2 +- support/download/dl-wrapper | 108 ++++++++++++++++++--------- support/download/{cp => file} | 4 +- support/download/wget | 10 ++- 6 files changed, 258 insertions(+), 177 deletions(-) create mode 100755 missing-hash.py rename support/download/{cp => file} (90%) diff --git a/missing-hash.py b/missing-hash.py new file mode 100755 index 0000000000..5c8b3435a5 --- /dev/null +++ b/missing-hash.py @@ -0,0 +1,145 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import fnmatch +import distutils +import time +import ftplib +import glob +import logging +import os +import re +import subprocess +import sys +import urllib2 +import sysconfig + +ERR_PROVIDER = ['exception list', 'website not reachable', 'alioth.debian.org'] + +EXCLUDED_PKGS = [ + "boot/common.mk", + "linux/linux-ext-fbtft.mk", + "linux/linux-ext-xenomai.mk", + "linux/linux-ext-rtai.mk", + "package/efl/efl.mk", + "package/freescale-imx/freescale-imx.mk", + "package/gcc/gcc.mk", + "package/gstreamer/gstreamer.mk", + "package/gstreamer1/gstreamer1.mk", + "package/gtk2-themes/gtk2-themes.mk", + "package/matchbox/matchbox.mk", + "package/opengl/opengl.mk", + "package/qt5/qt5.mk", + "package/x11r7/x11r7.mk" +] + +class Package(object): + + def __init__(self, package_mk_path): + self.mk_path = package_mk_path + self.name = os.path.basename(os.path.splitext(package_mk_path)[0]) + self.mk_name = self.name.upper().replace('-', '_') + self.infra = 'unknown' + self.infra_host = False + self.last_version = None + self.hash = False + self.provider = None + self.source = None + self.site = None + self.version = None + + data = sysconfig._parse_makefile(package_mk_path) + for k in ["SITE", "SOURCE", "VERSION", "LICENSE_FILES", "LICENSE"]: + k_name = "%s_%s" % (self.mk_name, k) + if k_name in data.keys(): + value = None if data[k_name] == "" else data[k_name] + setattr(self, k.lower(), value) + + if "package/qt5/" in self.mk_path: + data = sysconfig._parse_makefile("package/qt5/qt5.mk") + self.version = data["QT5_VERSION"] + + if "package/efl/" in self.mk_path: + data = sysconfig._parse_makefile("package/efl/efl.mk") + self.version = data["EFL_VERSION"] + + with open(package_mk_path) as f: + # Everything we could not obtain through the parsing of the mk + # files will get obtained here. + for line in f.readlines(): + if "%s_VERSION" % self.mk_name in line and\ + self.version is None: + if "$" in line: + continue + self.version = line[line.rindex('=')+1:].strip() + + if "-package)" not in line: + continue + self.infra = line[line.rindex('(')+1:-2] + if "host" in self.infra: + self.infra_host = True + self.infra = self.infra[:self.infra.rindex('-')] + + if "$" in str(self.version): + self.version = None + + self.hash_file = "%s.hash" % os.path.splitext(package_mk_path)[0] + if os.path.exists(self.hash_file): + self.hash = True + + self.provider = self.get_provider() + + def get_provider(self): + if self.site is None: + return None + + if "github" in self.site: + return "github" + elif "sourceforge" in self.site: + return "sourceforge" + +if __name__ == '__main__': + matches = [] + for dir in ["boot", "linux", "package"]: + for root, _, filenames in os.walk(dir): + for filename in fnmatch.filter(filenames, '*.mk'): + path = os.path.join(root, filename) + if os.path.dirname(path) in dir: + continue + matches.append(path) + + print "#!/bin/sh" + + matches.sort() + packages = [] + count = 0 + for mk_path in matches: + + if mk_path in EXCLUDED_PKGS: + continue + + pkg = Package(mk_path) + + if pkg is None: + continue + + if pkg.hash is False: + if pkg.site is not None and "github" not in pkg.site: + if len(str(pkg.version)) >= 40: + continue + print "make %s-source" % pkg.name + print "my_file=$(find dl/ -type f)" + print "touch %s" % pkg.hash_file + print "echo '# Locally computed' >> %s" % pkg.hash_file + print "output=$(sha256sum \"$my_file\")" + print "sha256=$(echo $output | awk '{print $1}')" + print "filename=$(echo $output | awk '{print $2}' | cut -d'/' -f2)" + print "echo \"sha256 $sha256 $filename\" >> %s" % pkg.hash_file + print "git add %s" % pkg.hash_file + print "git commit -s -m \"package/%s: add hash file\"" % pkg.name + print "make %s-dirclean" % pkg.name + print "rm -Rf dl" + print "" + count += 1 + + print count diff --git a/package/pkg-download.mk b/package/pkg-download.mk index ce069b9926..14ea4ff361 100644 --- a/package/pkg-download.mk +++ b/package/pkg-download.mk @@ -42,6 +42,8 @@ DL_DIR := $(shell mkdir -p $(DL_DIR) && cd $(DL_DIR) >/dev/null && pwd) # # geturischeme: http geturischeme = $(firstword $(subst ://, ,$(call qstrip,$(1)))) +# getschemeplusuri: git|parameter+http://example.com +getschemeplusuri = $(call geturischeme,$(1))$(if $(2),\|$(2))+$(1) # stripurischeme: www.example.com/dir/file stripurischeme = $(lastword $(subst ://, ,$(call qstrip,$(1)))) # domain: www.example.com @@ -61,152 +63,42 @@ github = https://github.com/$(1)/$(2)/archive/$(3) export BR_NO_CHECK_HASH_FOR = ################################################################################ -# The DOWNLOAD_* helpers are in charge of getting a working copy -# of the source repository for their corresponding SCM, -# checking out the requested version / commit / tag, and create an -# archive out of it. DOWNLOAD_SCP uses scp to obtain a remote file with -# ssh authentication. DOWNLOAD_WGET is the normal wget-based download -# mechanism. +# DOWNLOAD -- Download helper. Will call DL_WRAPPER which will try to download +# source from: +# 1) BR2_PRIMARY_SITE if enabled +# 2) Download site, unless BR2_PRIMARY_SITE_ONLY is set +# 3) BR2_BACKUP_SITE if enabled, unless BR2_PRIMARY_SITE_ONLY is set +# +# Argument 1 is the source location # ################################################################################ -define DOWNLOAD_GIT - $(EXTRA_ENV) $(DL_WRAPPER) -b git \ - -o $(DL_DIR)/$($(PKG)_SOURCE) \ - $(if $($(PKG)_GIT_SUBMODULES),-r) \ - -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ - $(QUIET) \ - -- \ - -u $($(PKG)_SITE) \ - -c $($(PKG)_DL_VERSION) \ - -n $($(PKG)_RAW_BASE_NAME) \ - $($(PKG)_DL_OPTS) -endef - -define DOWNLOAD_BZR - $(EXTRA_ENV) $(DL_WRAPPER) -b bzr \ - -o $(DL_DIR)/$($(PKG)_SOURCE) \ - $(QUIET) \ - -- \ - -u $($(PKG)_SITE) \ - -c $($(PKG)_DL_VERSION) \ - -n $($(PKG)_RAW_BASE_NAME) \ - $($(PKG)_DL_OPTS) -endef +ifneq ($(call qstrip,$(BR2_PRIMARY_SITE)),) +DOWNLOAD_URIS += \ + -u $(call getschemeplusuri,$(BR2_PRIMARY_SITE),urlencode) +endif -define DOWNLOAD_CVS - $(EXTRA_ENV) $(DL_WRAPPER) -b cvs \ - -o $(DL_DIR)/$($(PKG)_SOURCE) \ - $(QUIET) \ - -- \ - -u $(call stripurischeme,$(call qstrip,$($(PKG)_SITE))) \ - -c $($(PKG)_DL_VERSION) \ - -N $($(PKG)_RAWNAME) \ - -n $($(PKG)_RAW_BASE_NAME) \ - $($(PKG)_DL_OPTS) -endef +ifeq ($(BR2_PRIMARY_SITE_ONLY),) +DOWNLOAD_URIS += \ + -u $($(PKG)_SITE_METHOD)+$(dir $(1)) +ifneq ($(call qstrip,$(BR2_BACKUP_SITE)),) +DOWNLOAD_URIS += \ + -u $(call getschemeplusuri,$(BR2_BACKUP_SITE),urlencode) +endif +endif -define DOWNLOAD_SVN - $(EXTRA_ENV) $(DL_WRAPPER) -b svn \ - -o $(DL_DIR)/$($(PKG)_SOURCE) \ - $(QUIET) \ - -- \ - -u $($(PKG)_SITE) \ +define DOWNLOAD + $(Q)$(if $(filter bzr cvs hg svn,$($(PKG)_SITE_METHOD)),BR_NO_CHECK_HASH_FOR=$(notdir $(1));) \ + $(EXTRA_ENV) $(DL_WRAPPER) \ -c $($(PKG)_DL_VERSION) \ - -n $($(PKG)_RAW_BASE_NAME) \ - $($(PKG)_DL_OPTS) -endef - -# SCP URIs should be of the form scp://[user@]host:filepath -# Note that filepath is relative to the user's home directory, so you may want -# to prepend the path with a slash: scp://[user@]host:/absolutepath -define DOWNLOAD_SCP - $(EXTRA_ENV) $(DL_WRAPPER) -b scp \ - -o $(DL_DIR)/$(2) \ + -f $(notdir $(1)) \ -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ - $(QUIET) \ - -- \ - -u '$(call stripurischeme,$(call qstrip,$(1)))' \ - $($(PKG)_DL_OPTS) -endef - -define DOWNLOAD_HG - $(EXTRA_ENV) $(DL_WRAPPER) -b hg \ - -o $(DL_DIR)/$($(PKG)_SOURCE) \ - $(QUIET) \ - -- \ - -u $($(PKG)_SITE) \ - -c $($(PKG)_DL_VERSION) \ -n $($(PKG)_RAW_BASE_NAME) \ - $($(PKG)_DL_OPTS) -endef - -define DOWNLOAD_WGET - $(EXTRA_ENV) $(DL_WRAPPER) -b wget \ - -o $(DL_DIR)/$(2) \ - -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ - $(QUIET) \ - -- \ - -u '$(call qstrip,$(1))' \ - $($(PKG)_DL_OPTS) -endef - -define DOWNLOAD_LOCALFILES - $(EXTRA_ENV) $(DL_WRAPPER) -b cp \ - -o $(DL_DIR)/$(2) \ - -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ + -N $($(PKG)_RAWNAME) \ + -o $(DL_DIR)/$(notdir $(1)) \ + $(if $($(PKG)_GIT_SUBMODULES),-r) \ + $(DOWNLOAD_URIS) \ $(QUIET) \ -- \ - -u $(call stripurischeme,$(call qstrip,$(1))) \ $($(PKG)_DL_OPTS) endef - -################################################################################ -# DOWNLOAD -- Download helper. Will try to download source from: -# 1) BR2_PRIMARY_SITE if enabled -# 2) Download site, unless BR2_PRIMARY_SITE_ONLY is set -# 3) BR2_BACKUP_SITE if enabled, unless BR2_PRIMARY_SITE_ONLY is set -# -# Argument 1 is the source location -# -# E.G. use like this: -# $(call DOWNLOAD,$(FOO_SITE)) -# -# For PRIMARY and BACKUP site, any ? in the URL is replaced by %3F. A ? in -# the URL is used to separate query arguments, but the PRIMARY and BACKUP -# sites serve just plain files. -################################################################################ - -define DOWNLOAD - $(call DOWNLOAD_INNER,$(1),$(notdir $(1)),DOWNLOAD) -endef - -define DOWNLOAD_INNER - $(Q)$(if $(filter bzr cvs hg svn,$($(PKG)_SITE_METHOD)),export BR_NO_CHECK_HASH_FOR=$(2);) \ - if test -n "$(call qstrip,$(BR2_PRIMARY_SITE))" ; then \ - case "$(call geturischeme,$(BR2_PRIMARY_SITE))" in \ - file) $(call $(3)_LOCALFILES,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ - scp) $(call $(3)_SCP,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ - *) $(call $(3)_WGET,$(BR2_PRIMARY_SITE)/$(subst ?,%3F,$(2)),$(2)) && exit ;; \ - esac ; \ - fi ; \ - if test "$(BR2_PRIMARY_SITE_ONLY)" = "y" ; then \ - exit 1 ; \ - fi ; \ - if test -n "$(1)" ; then \ - case "$($(PKG)_SITE_METHOD)" in \ - git) $($(3)_GIT) && exit ;; \ - svn) $($(3)_SVN) && exit ;; \ - cvs) $($(3)_CVS) && exit ;; \ - bzr) $($(3)_BZR) && exit ;; \ - file) $($(3)_LOCALFILES) && exit ;; \ - scp) $($(3)_SCP) && exit ;; \ - hg) $($(3)_HG) && exit ;; \ - *) $(call $(3)_WGET,$(1),$(2)) && exit ;; \ - esac ; \ - fi ; \ - if test -n "$(call qstrip,$(BR2_BACKUP_SITE))" ; then \ - $(call $(3)_WGET,$(BR2_BACKUP_SITE)/$(subst ?,%3F,$(2)),$(2)) && exit ; \ - fi ; \ - exit 1 -endef diff --git a/support/download/cvs b/support/download/cvs index 69d5c71f28..3f77b849e4 100755 --- a/support/download/cvs +++ b/support/download/cvs @@ -21,7 +21,7 @@ while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do case "${OPT}" in q) verbose=-Q;; o) output="${OPTARG}";; - u) uri="${OPTARG}";; + u) uri="${OPTARG#*://}";; c) rev="${OPTARG}";; N) rawname="${OPTARG}";; n) basename="${OPTARG}";; diff --git a/support/download/dl-wrapper b/support/download/dl-wrapper index 510e7ef852..67e9742767 100755 --- a/support/download/dl-wrapper +++ b/support/download/dl-wrapper @@ -19,31 +19,34 @@ # We want to catch any unexpected failure, and exit immediately. set -e -export BR_BACKEND_DL_GETOPTS=":hc:o:n:N:H:ru:q" +export BR_BACKEND_DL_GETOPTS=":hc:o:n:N:H:ru:qf:e" main() { local OPT OPTARG local backend output hfile recurse quiet + local -a uris # Parse our options; anything after '--' is for the backend - while getopts :hb:o:H:rq OPT; do + while getopts ":hc:o:n:N:H:rf:u:q" OPT; do case "${OPT}" in h) help; exit 0;; - b) backend="${OPTARG}";; + c) cset="${OPTARG}";; o) output="${OPTARG}";; + n) raw_base_name="${OPTARG}";; + N) base_name="${OPTARG}";; H) hfile="${OPTARG}";; r) recurse="-r";; + f) filename="${OPTARG}";; + u) uris+=( "${OPTARG}" );; q) quiet="-q";; :) error "option '%s' expects a mandatory argument\n" "${OPTARG}";; \?) error "unknown option '%s'\n" "${OPTARG}";; esac done + # Forget our options, and keep only those for the backend shift $((OPTIND-1)) - if [ -z "${backend}" ]; then - error "no backend specified, use -b\n" - fi if [ -z "${output}" ]; then error "no output specified, use -o\n" fi @@ -77,28 +80,64 @@ main() { tmpd="$(mktemp -d "${BUILD_DIR}/.${output##*/}.XXXXXX")" tmpf="${tmpd}/output" - # Helpers expect to run in a directory that is *really* trashable, so - # they are free to create whatever files and/or sub-dirs they might need. - # Doing the 'cd' here rather than in all backends is easier. - cd "${tmpd}" - - # If the backend fails, we can just remove the temporary directory to - # remove all the cruft it may have left behind. Then we just exit in - # error too. - if ! "${OLDPWD}/support/download/${backend}" \ - ${quiet} ${recurse} \ - -o "${tmpf}" "${@}" - then - rm -rf "${tmpd}" - exit 1 - fi + # Look through all the uris that we were given to downoad the package + # source + download_and_check=0 + for uri in "${uris[@]}"; do + backend=${uri%+*} + case "${backend}" in + git|svn|cvs|bzr|file|scp|hg) ;; + *) backend="wget" ;; + esac + uri=${uri#*+} + + urlencode=${backend#*|} + # urlencode must be "urlencode" + [ "${urlencode}" != "urlencode" ] && urlencode="" + + # Helpers expect to run in a directory that is *really* trashable, so + # they are free to create whatever files and/or sub-dirs they might need. + # Doing the 'cd' here rather than in all backends is easier. + cd "${tmpd}" + + # If the backend fails, we can just remove the content of the temporary + # directory to remove all the cruft it may have left behind, and tries + # the next URI until it succeeds. Once out of URI to tries, we need to + # cleanup and exit. + if ! "${OLDPWD}/support/download/${backend}" \ + $([ -n "${urlencode}" ] && printf %s '-e') \ + -c "${cset}" \ + -n "${raw_base_name}" \ + -N "${raw_name}" \ + -f "${filename}" \ + -u "${uri}" \ + -o "${tmpf}" \ + ${quiet} ${recurse} "${@}" + then + rm -rf "${tmpd:?}/*" + # cd back to keep path coherence + cd "${OLDPWD}" + continue + fi - # cd back to free the temp-dir, so we can remove it later - cd "${OLDPWD}" + # cd back to free the temp-dir, so we can remove it later + cd "${OLDPWD}" - # Check if the downloaded file is sane, and matches the stored hashes - # for that file - if ! support/download/check-hash ${quiet} "${hfile}" "${tmpf}" "${output##*/}"; then + # Check if the downloaded file is sane, and matches the stored hashes + # for that file + if ! support/download/check-hash ${quiet} "${hfile}" "${tmpf}" "${output##*/}"; then + rm -rf "${tmpd:?}/*" + # cd back to keep path coherence + cd "${OLDPWD}" + continue + fi + download_and_check=1 + break + done + + # We tried every URI possible, none seems to work or to check against the + # available hash. *ABORT MISSION* + if [ "${download_and_check}" -eq 0 ]; then rm -rf "${tmpd}" exit 1 fi @@ -164,16 +203,13 @@ DESCRIPTION -h This help text. - -b BACKEND - Wrap the specified BACKEND. Known backends are: - bzr Bazaar - cp Local files - cvs Concurrent Versions System - git Git - hg Mercurial - scp Secure copy - svn Subversion - wget HTTP download + -u URIs + The URI to get the file from, the URI must respect the format given in + the example. + You may give as many '-u URI' as you want, the script will stop at the + frist successful download. + + Example: backend+URI; git+http://example.com or http+http://example.com -o FILE Store the downloaded archive in FILE. diff --git a/support/download/cp b/support/download/file similarity index 90% rename from support/download/cp rename to support/download/file index 52fe2de83d..a3e616a181 100755 --- a/support/download/cp +++ b/support/download/file @@ -3,7 +3,7 @@ # We want to catch any unexpected failure, and exit immediately set -e -# Download helper for cp, to be called from the download wrapper script +# Download helper for file, to be called from the download wrapper script # # Options: # -q Be quiet. @@ -23,7 +23,7 @@ while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do case "${OPT}" in q) verbose=;; o) output="${OPTARG}";; - u) source="${OPTARG}";; + u) source="${OPTARG#*://}";; :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; esac diff --git a/support/download/wget b/support/download/wget index fece6663ca..c69e6071aa 100755 --- a/support/download/wget +++ b/support/download/wget @@ -8,7 +8,9 @@ set -e # Options: # -q Be quiet. # -o FILE Save into file FILE. +# -f FILENAME The filename of the tarball to get at URL # -u URL Download file at URL. +# -e ENCODE Tell wget to urlencode the filename passed to it # # Environment: # WGET : the wget command to call @@ -18,7 +20,9 @@ while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do case "${OPT}" in q) verbose=-q;; o) output="${OPTARG}";; + f) filename="${OPTARG}";; u) url="${OPTARG}";; + e) encode="-e";; :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; esac @@ -32,4 +36,8 @@ _wget() { eval ${WGET} "${@}" } -_wget ${verbose} "${@}" -O "'${output}'" "'${url}'" +# Replace every '?' with '%3F' in the filename; only for the PRIMARY and BACKUP +# mirror +[ -n "${encode}" ] && filename=${filename//\?/%3F} + +_wget ${verbose} "${@}" -O "'${output}'" "'${url}/${filename}'" From patchwork Sat Mar 31 14:23:57 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893795 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.136; helo=silver.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="GDpPDm/y"; dkim-atps=neutral Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D1334SxHz9rxs for ; Sun, 1 Apr 2018 01:24:47 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id B753422889; Sat, 31 Mar 2018 14:24:45 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id P2oGSEPBYq8B; Sat, 31 Mar 2018 14:24:28 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id B6CAC25D87; Sat, 31 Mar 2018 14:24:25 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id D63211C16D3 for ; Sat, 31 Mar 2018 14:24:16 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id C451A3099A for ; Sat, 31 Mar 2018 14:24:16 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Wlk9rSWHATpO for ; Sat, 31 Mar 2018 14:24:13 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by silver.osuosl.org (Postfix) with ESMTPS id 52B4A25D87 for ; Sat, 31 Mar 2018 14:24:13 +0000 (UTC) Received: by mail-wr0-f193.google.com with SMTP id s18so10019803wrg.9 for ; Sat, 31 Mar 2018 07:24:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=hBD0V4FkICTgk5EWfiTpaiyTa1HsNWcIkjifOuZPAwY=; b=GDpPDm/ywfn8uL4R8vLPm6MAOGE0dgYEoF3raLXfnyBqbaLVXaxtUa83i0hjoCsQoK u1vTpifiAjz14QKKQTWrRQ+eyoiAWeKzpWT26xppIWc+dek+dfNrnKifuwkN6OocuPlL V6uLdnuYkH2Kr7h40wfhEz8fzLGm0u7+ZxeFQhUBCqIu7CarFby7FmMjLTjUjV+1yEKO uMe4rTZxI2OngsLgBTDDdiQPZtE9WczcF8zEnoBjQCYg/V1efrn3S1OXAs7dp5/VtI5e XPs2ktIwddEYfqdb0HV+5Qb+dr7XJvEv1p9DMGn/UmxfhPp+iECpo3WzgRYTug/WWgyp +yiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=hBD0V4FkICTgk5EWfiTpaiyTa1HsNWcIkjifOuZPAwY=; b=gPBPqNF/4PremxtNvD6rVb6bpiD3OGawiFXikZWAdMaLMG666fggVUWoDAzaJitDGE CHKA7z8gig1R4tvF1/EQeE1e6YmnXqeu4bq4Wf9ta8oBrtQMFR0X9+zRMLXMocZaaBMn dVshQ0S6Ri6UQpiXmdYZZGD9thQtm+YyN3gWgy8Ih6MjSGyBQbFbHUuO+nPD31A0FybE TVspFIrIEXVtbdyaj0Yup7RUR3cjFpyBe48gsSK2VnEGSgL99d0+m5MTavZhb1SdSG45 Qt33FBbriu4XxObal66jT2LSm5g5UmOlDn95kYdys0Fnwk3q76K7710OeCz5aMW8n+h1 xQeQ== X-Gm-Message-State: AElRT7HSoigjccBKo7vCB5tPNmjzWCApy9/O7gIOrVZ0659Gi+Y58uHO ViQqV/ceuwEqGPhAsXSkZx6yfKtT X-Google-Smtp-Source: AIpwx4+HYIMDIDr2WQrznTDi3zKmeaiBHOA0vCZOsfLkB17leX4pcmDHLf4tQ45+vci6DJsAXbjIkw== X-Received: by 10.223.135.161 with SMTP id b30mr1891901wrb.189.1522506250866; Sat, 31 Mar 2018 07:24:10 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.10 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:10 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:23:57 +0200 Message-Id: <20180331142407.9522-3-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 03/13] packages: use new $($PKG)_DL_DIR) variable X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Instead of DL_DIR, the package should now use $(PKG)_DL_DIR to ease the transition into a new directory structure for DL_DIR. This commit has been generated with the following scripts: for i in $(find . -iname "*.mk"); do if ! grep -q "\$(DL_DIR)" ${i}; then continue fi pkg_name="$(basename $(dirname ${i}))" [ "${pkg_name}" = "package" ] && continue raw_pkg_name=$(echo ${pkg_name} | tr [a-z] [A-Z] | tr '-' '_') pkg_dl_dir="${raw_pkg_name}_DL_DIR" sed -i "s/\$(DL_DIR)/\$($pkg_dl_dir)/" ${i} done Signed-off-by: Maxime Hadjinlian --- boot/at91bootstrap/at91bootstrap.mk | 2 +- package/amd-catalyst/amd-catalyst.mk | 2 +- package/android-tools/android-tools.mk | 2 +- package/angularjs/angularjs.mk | 2 +- package/bootstrap/bootstrap.mk | 4 +++- package/cache-calibrator/cache-calibrator.mk | 2 +- package/cargo/cargo.mk | 4 ++-- package/cracklib/cracklib.mk | 2 +- package/cryptopp/cryptopp.mk | 2 +- package/devmem2/devmem2.mk | 2 +- package/dhrystone/dhrystone.mk | 2 +- package/doom-wad/doom-wad.mk | 2 +- package/espeak/espeak.mk | 2 +- package/fan-ctrl/fan-ctrl.mk | 2 +- package/freescale-imx/firmware-imx/firmware-imx.mk | 2 +- package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.mk | 2 +- package/freescale-imx/imx-codec/imx-codec.mk | 2 +- package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk | 2 +- package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk | 2 +- package/freescale-imx/imx-parser/imx-parser.mk | 2 +- package/freescale-imx/imx-vpu/imx-vpu.mk | 2 +- package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk | 2 +- package/freescale-imx/libz160/libz160.mk | 2 +- package/gcc/gcc.mk | 2 +- package/irrlicht/irrlicht.mk | 2 +- package/jquery-mobile/jquery-mobile.mk | 2 +- package/jquery-sparkline/jquery-sparkline.mk | 2 +- package/jquery-ui-themes/jquery-ui-themes.mk | 2 +- package/jquery-ui/jquery-ui.mk | 2 +- package/jquery-validation/jquery-validation.mk | 2 +- package/jquery/jquery.mk | 2 +- package/kodi/kodi.mk | 6 +++--- package/libb64/libb64.mk | 2 +- package/libfreeimage/libfreeimage.mk | 2 +- package/libjson/libjson.mk | 2 +- package/libsoil/libsoil.mk | 2 +- package/lsof/lsof.mk | 2 +- package/musl-compat-headers/musl-compat-headers.mk | 2 +- package/nmon/nmon.mk | 2 +- package/nvidia-driver/nvidia-driver.mk | 2 +- .../nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk | 2 +- package/openobex/openobex.mk | 6 ++++++ package/opentyrian-data/opentyrian-data.mk | 2 +- package/perl/perl.mk | 2 +- package/python-keyring/python-keyring.mk | 1 - package/python-pytz/python-pytz.mk | 2 +- package/python-simplegeneric/python-simplegeneric.mk | 2 +- package/rapidxml/rapidxml.mk | 2 +- package/rpi-wifi-firmware/rpi-wifi-firmware.mk | 2 +- package/rust-bin/rust-bin.mk | 2 +- package/sam-ba/sam-ba.mk | 2 +- package/spidev_test/spidev_test.mk | 2 +- package/tar/tar.mk | 2 +- package/tesseract-ocr/tesseract-ocr.mk | 2 +- package/ti-cgt-pru/ti-cgt-pru.mk | 4 ++-- package/ti-gfx/ti-gfx.mk | 4 ++-- package/ts4900-fpga/ts4900-fpga.mk | 2 +- package/unscd/unscd.mk | 2 +- package/urg/urg.mk | 4 +++- package/waf/waf.mk | 2 +- package/whetstone/whetstone.mk | 2 +- package/wilc1000-firmware/wilc1000-firmware.mk | 2 +- package/zynq-boot-bin/zynq-boot-bin.mk | 2 +- 63 files changed, 76 insertions(+), 67 deletions(-) diff --git a/boot/at91bootstrap/at91bootstrap.mk b/boot/at91bootstrap/at91bootstrap.mk index f6550588d3..c68b56b6ec 100644 --- a/boot/at91bootstrap/at91bootstrap.mk +++ b/boot/at91bootstrap/at91bootstrap.mk @@ -17,7 +17,7 @@ AT91BOOTSTRAP_INSTALL_IMAGES = YES AT91BOOTSTRAP_INSTALL_TARGET = NO define AT91BOOTSTRAP_EXTRACT_CMDS - $(UNZIP) -d $(BUILD_DIR) $(DL_DIR)/$(AT91BOOTSTRAP_SOURCE) + $(UNZIP) -d $(BUILD_DIR) $(AT91BOOTSTRAP_DL_DIR)/$(AT91BOOTSTRAP_SOURCE) mv $(BUILD_DIR)/Bootstrap-v$(AT91BOOTSTRAP_VERSION)/* $(@D) rmdir $(BUILD_DIR)/Bootstrap-v$(AT91BOOTSTRAP_VERSION) endef diff --git a/package/amd-catalyst/amd-catalyst.mk b/package/amd-catalyst/amd-catalyst.mk index b9396e11fa..d864095c31 100644 --- a/package/amd-catalyst/amd-catalyst.mk +++ b/package/amd-catalyst/amd-catalyst.mk @@ -17,7 +17,7 @@ AMD_CATALYST_ARCH_DIR = $(@D)/arch/x86$(AMD_CATALYST_SUFFIX) AMD_CATALYST_LIB_SUFFIX = $(if $(BR2_x86_64),64) define AMD_CATALYST_EXTRACT_CMDS - unzip -q $(DL_DIR)/$(AMD_CATALYST_SOURCE) -d $(@D) + unzip -q $(AMD_CATALYST_DL_DIR)/$(AMD_CATALYST_SOURCE) -d $(@D) $(SHELL) $(@D)/AMD-Catalyst-$(AMD_CATALYST_VERSION)-Linux-installer-$(AMD_CATALYST_VERBOSE_VER)-x86.x86_64.run --extract $(@D) endef diff --git a/package/android-tools/android-tools.mk b/package/android-tools/android-tools.mk index f6c6913a68..11e0a15a7f 100644 --- a/package/android-tools/android-tools.mk +++ b/package/android-tools/android-tools.mk @@ -15,7 +15,7 @@ ANDROID_TOOLS_LICENSE_FILES = debian/copyright # Extract the Debian tarball inside the sources define ANDROID_TOOLS_DEBIAN_EXTRACT $(call suitable-extractor,$(notdir $(ANDROID_TOOLS_EXTRA_DOWNLOADS))) \ - $(DL_DIR)/$(notdir $(ANDROID_TOOLS_EXTRA_DOWNLOADS)) | \ + $(ANDROID_TOOLS_DL_DIR)/$(notdir $(ANDROID_TOOLS_EXTRA_DOWNLOADS)) | \ $(TAR) -C $(@D) $(TAR_OPTIONS) - endef diff --git a/package/angularjs/angularjs.mk b/package/angularjs/angularjs.mk index 60702a26d2..a941bc3828 100644 --- a/package/angularjs/angularjs.mk +++ b/package/angularjs/angularjs.mk @@ -12,7 +12,7 @@ ANGULARJS_LICENSE = MIT ANGULARJS_LICENSE_FILES = angular.js define ANGULARJS_EXTRACT_CMDS - unzip $(DL_DIR)/$(ANGULARJS_SOURCE) -d $(@D) + unzip $(ANGULARJS_DL_DIR)/$(ANGULARJS_SOURCE) -d $(@D) mv $(@D)/angular-$(ANGULARJS_VERSION)/* $(@D) rmdir $(@D)/angular-$(ANGULARJS_VERSION) endef diff --git a/package/bootstrap/bootstrap.mk b/package/bootstrap/bootstrap.mk index 61d6c826fc..50cdc322e4 100644 --- a/package/bootstrap/bootstrap.mk +++ b/package/bootstrap/bootstrap.mk @@ -11,7 +11,9 @@ BOOTSTRAP_LICENSE = MIT BOOTSTRAP_LICENSE_FILES = css/bootstrap.css define BOOTSTRAP_EXTRACT_CMDS - $(UNZIP) $(DL_DIR)/$(BOOTSTRAP_SOURCE) -d $(@D) + $(UNZIP) $(BOOTSTRAP_DL_DIR)/$(BOOTSTRAP_SOURCE) -d $(@D) + mv $(@D)/bootstrap-$(BOOTSTRAP_VERSION)-dist/* $(@D)/ + rmdir $(@D)/bootstrap-$(BOOTSTRAP_VERSION)-dist endef define BOOTSTRAP_INSTALL_TARGET_CMDS diff --git a/package/cache-calibrator/cache-calibrator.mk b/package/cache-calibrator/cache-calibrator.mk index 6f12d119ef..203732e4f7 100644 --- a/package/cache-calibrator/cache-calibrator.mk +++ b/package/cache-calibrator/cache-calibrator.mk @@ -10,7 +10,7 @@ CACHE_CALIBRATOR_LICENSE = Cache calibrator license CACHE_CALIBRATOR_LICENSE_FILES = calibrator.c.license define CACHE_CALIBRATOR_EXTRACT_CMDS - cp $(DL_DIR)/$(CACHE_CALIBRATOR_SOURCE) $(@D) + cp $(CACHE_CALIBRATOR_DL_DIR)/$(CACHE_CALIBRATOR_SOURCE) $(@D) endef define CACHE_CALIBRATOR_EXTRACT_LICENSE diff --git a/package/cargo/cargo.mk b/package/cargo/cargo.mk index 3fd088d727..36b2718e90 100644 --- a/package/cargo/cargo.mk +++ b/package/cargo/cargo.mk @@ -37,7 +37,7 @@ HOST_CARGO_HOME = $(HOST_DIR)/share/cargo define HOST_CARGO_EXTRACT_DEPS @mkdir -p $(@D)/vendor $(call suitable-extractor,$(CARGO_DEPS_SOURCE)) \ - $(DL_DIR)/$(CARGO_DEPS_SOURCE) | \ + $(CARGO_DL_DIR)/$(CARGO_DEPS_SOURCE) | \ $(TAR) --strip-components=1 -C $(@D)/vendor $(TAR_OPTIONS) - endef @@ -46,7 +46,7 @@ HOST_CARGO_POST_EXTRACT_HOOKS += HOST_CARGO_EXTRACT_DEPS define HOST_CARGO_EXTRACT_INSTALLER @mkdir -p $(@D)/src/rust-installer $(call suitable-extractor,$(CARGO_INSTALLER_SOURCE)) \ - $(DL_DIR)/$(CARGO_INSTALLER_SOURCE) | \ + $(CARGO_DL_DIR)/$(CARGO_INSTALLER_SOURCE) | \ $(TAR) --strip-components=1 -C $(@D)/src/rust-installer $(TAR_OPTIONS) - endef diff --git a/package/cracklib/cracklib.mk b/package/cracklib/cracklib.mk index 2fa3d3b4ea..aeee60d1e7 100644 --- a/package/cracklib/cracklib.mk +++ b/package/cracklib/cracklib.mk @@ -29,7 +29,7 @@ HOST_CRACKLIB_CONF_OPTS += --without-python --without-zlib ifeq ($(BR2_PACKAGE_CRACKLIB_FULL_DICT),y) CRACKLIB_EXTRA_DOWNLOADS = cracklib-words-$(CRACKLIB_VERSION).gz -CRACKLIB_DICT_SOURCE = $(DL_DIR)/cracklib-words-$(CRACKLIB_VERSION).gz +CRACKLIB_DICT_SOURCE = $(CRACKLIB_DL_DIR)/cracklib-words-$(CRACKLIB_VERSION).gz else CRACKLIB_DICT_SOURCE = $(@D)/dicts/cracklib-small endif diff --git a/package/cryptopp/cryptopp.mk b/package/cryptopp/cryptopp.mk index d7aabf04b8..6da39b09f2 100644 --- a/package/cryptopp/cryptopp.mk +++ b/package/cryptopp/cryptopp.mk @@ -12,7 +12,7 @@ CRYPTOPP_LICENSE_FILES = License.txt CRYPTOPP_INSTALL_STAGING = YES define HOST_CRYPTOPP_EXTRACT_CMDS - $(UNZIP) $(DL_DIR)/$(CRYPTOPP_SOURCE) -d $(@D) + $(UNZIP) $(CRYPTOPP_DL_DIR)/$(CRYPTOPP_SOURCE) -d $(@D) endef HOST_CRYPTOPP_MAKE_OPTS = \ diff --git a/package/devmem2/devmem2.mk b/package/devmem2/devmem2.mk index eb92db6098..044e6fa596 100644 --- a/package/devmem2/devmem2.mk +++ b/package/devmem2/devmem2.mk @@ -11,7 +11,7 @@ DEVMEM2_LICENSE = GPL-2.0+ DEVMEM2_LICENSE_FILES = devmem2.c.license define DEVMEM2_EXTRACT_CMDS - cp $(DL_DIR)/$($(PKG)_SOURCE) $(@D)/ + cp $(DEVMEM2_DL_DIR)/$($(PKG)_SOURCE) $(@D)/ endef define DEVMEM2_EXTRACT_LICENSE diff --git a/package/dhrystone/dhrystone.mk b/package/dhrystone/dhrystone.mk index c0bca9895d..d54c8d94e8 100644 --- a/package/dhrystone/dhrystone.mk +++ b/package/dhrystone/dhrystone.mk @@ -9,7 +9,7 @@ DHRYSTONE_SOURCE = dhry-c DHRYSTONE_SITE = http://www.netlib.org/benchmark define DHRYSTONE_EXTRACT_CMDS - (cd $(@D) && $(SHELL) $(DL_DIR)/$($(PKG)_SOURCE)) + (cd $(@D) && $(SHELL) $(DHRYSTONE_DL_DIR)/$($(PKG)_SOURCE)) $(Q)cp package/dhrystone/Makefile $(@D)/ endef diff --git a/package/doom-wad/doom-wad.mk b/package/doom-wad/doom-wad.mk index d3ac731bd5..f348fc2207 100644 --- a/package/doom-wad/doom-wad.mk +++ b/package/doom-wad/doom-wad.mk @@ -11,7 +11,7 @@ DOOM_WAD_SOURCE = doom$(subst .,,$(DOOM_WAD_VERSION))s.zip DOOM_WAD_SITE = http://www.jbserver.com/downloads/games/doom/misc/shareware define DOOM_WAD_EXTRACT_CMDS - $(UNZIP) -p $(DL_DIR)/$($(PKG)_SOURCE) 'DOOMS_19.[12]' > \ + $(UNZIP) -p $(DOOM_WAD_DL_DIR)/$($(PKG)_SOURCE) 'DOOMS_19.[12]' > \ $(@D)/doom-$(DOOM_WAD_VERSION).zip $(UNZIP) -d $(@D) $(@D)/doom-$(DOOM_WAD_VERSION).zip DOOM1.WAD endef diff --git a/package/espeak/espeak.mk b/package/espeak/espeak.mk index 226f17fc05..aa0b5b0716 100644 --- a/package/espeak/espeak.mk +++ b/package/espeak/espeak.mk @@ -21,7 +21,7 @@ ESPEAK_DEPENDENCIES = pulseaudio endif define ESPEAK_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(ESPEAK_SOURCE) + $(UNZIP) -d $(@D) $(ESPEAK_DL_DIR)/$(ESPEAK_SOURCE) mv $(@D)/espeak-$(ESPEAK_VERSION)-source/* $(@D) $(RM) -r $(@D)/espeak-$(ESPEAK_VERSION)-source endef diff --git a/package/fan-ctrl/fan-ctrl.mk b/package/fan-ctrl/fan-ctrl.mk index 53533a8a17..81a52f1e9f 100644 --- a/package/fan-ctrl/fan-ctrl.mk +++ b/package/fan-ctrl/fan-ctrl.mk @@ -12,7 +12,7 @@ FAN_CTRL_LICENSE = GPL-2.0+ FAN_CTRL_LICENSE_FILES = fan-ctrl.c define FAN_CTRL_EXTRACT_CMDS - cp $(DL_DIR)/$(FAN_CTRL_SOURCE) $(@D)/fan-ctrl.c + cp $(FAN_CTRL_DL_DIR)/$(FAN_CTRL_SOURCE) $(@D)/fan-ctrl.c endef define FAN_CTRL_BUILD_CMDS diff --git a/package/freescale-imx/firmware-imx/firmware-imx.mk b/package/freescale-imx/firmware-imx/firmware-imx.mk index 630afcaa37..d5387b38da 100644 --- a/package/freescale-imx/firmware-imx/firmware-imx.mk +++ b/package/freescale-imx/firmware-imx/firmware-imx.mk @@ -15,7 +15,7 @@ FIRMWARE_IMX_REDISTRIBUTE = NO FIRMWARE_IMX_BLOBS = sdma vpu define FIRMWARE_IMX_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(FIRMWARE_IMX_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(FIRMWARE_IMX_DL_DIR)/$(FIRMWARE_IMX_SOURCE)) endef define FIRMWARE_IMX_INSTALL_TARGET_CMDS diff --git a/package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.mk b/package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.mk index 44a6b4c7d2..5586073712 100644 --- a/package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.mk +++ b/package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.mk @@ -23,7 +23,7 @@ GPU_AMD_BIN_MX51_LICENSE_FILES = EULA GPU_AMD_BIN_MX51_REDISTRIBUTE = NO define GPU_AMD_BIN_MX51_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(GPU_AMD_BIN_MX51_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(GPU_AMD_BIN_MX51_DL_DIR)/$(GPU_AMD_BIN_MX51_SOURCE)) endef # Upstream headers need to be compiled with -D_LINUX. It is more convenient diff --git a/package/freescale-imx/imx-codec/imx-codec.mk b/package/freescale-imx/imx-codec/imx-codec.mk index ea4d90110f..784c1fa4a9 100644 --- a/package/freescale-imx/imx-codec/imx-codec.mk +++ b/package/freescale-imx/imx-codec/imx-codec.mk @@ -26,7 +26,7 @@ IMX_CODEC_CONF_OPTS += --enable-vpu endif define IMX_CODEC_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_CODEC_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(IMX_CODEC_DL_DIR)/$(IMX_CODEC_SOURCE)) endef # FIXME The Makefile installs both the arm9 and arm11 versions of the diff --git a/package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk b/package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk index 0c92b826c4..aafd70dc9d 100644 --- a/package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk +++ b/package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk @@ -15,7 +15,7 @@ IMX_GPU_G2D_LICENSE_FILES = EULA COPYING IMX_GPU_G2D_REDISTRIBUTE = NO define IMX_GPU_G2D_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_GPU_G2D_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(IMX_GPU_G2D_DL_DIR)/$(IMX_GPU_G2D_SOURCE)) endef define IMX_GPU_G2D_INSTALL_STAGING_CMDS diff --git a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk index a9f8b9d9bd..0dc2072984 100644 --- a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk +++ b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk @@ -26,7 +26,7 @@ IMX_GPU_VIV_DEPENDENCIES += xlib_libXdamage xlib_libXext xlib_libXfixes endif define IMX_GPU_VIV_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_GPU_VIV_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(IMX_GPU_VIV_DL_DIR)/$(IMX_GPU_VIV_SOURCE)) endef # Instead of building, we fix up the inconsistencies that exist diff --git a/package/freescale-imx/imx-parser/imx-parser.mk b/package/freescale-imx/imx-parser/imx-parser.mk index d79a4444c8..11536e5024 100644 --- a/package/freescale-imx/imx-parser/imx-parser.mk +++ b/package/freescale-imx/imx-parser/imx-parser.mk @@ -24,7 +24,7 @@ IMX_PARSER_CONF_OPTS += --enable-fsw endif define IMX_PARSER_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_PARSER_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(IMX_PARSER_DL_DIR)/$(IMX_PARSER_SOURCE)) endef # The Makefile installs several versions of the libraries, but we only diff --git a/package/freescale-imx/imx-vpu/imx-vpu.mk b/package/freescale-imx/imx-vpu/imx-vpu.mk index e3a1ee661d..2bcfe53eba 100644 --- a/package/freescale-imx/imx-vpu/imx-vpu.mk +++ b/package/freescale-imx/imx-vpu/imx-vpu.mk @@ -21,7 +21,7 @@ IMX_VPU_LICENSE_FILES = EULA COPYING IMX_VPU_REDISTRIBUTE = NO define IMX_VPU_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_VPU_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(IMX_VPU_DL_DIR)/$(IMX_VPU_SOURCE)) endef define IMX_VPU_BUILD_CMDS diff --git a/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk b/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk index 7cbf7784c9..edba87279f 100644 --- a/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk +++ b/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk @@ -15,7 +15,7 @@ IMX_VPUWRAP_LICENSE_FILES = EULA COPYING IMX_VPUWRAP_REDISTRIBUTE = NO define IMX_VPUWRAP_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_VPUWRAP_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(IMX_VPUWRAP_DL_DIR)/$(IMX_VPUWRAP_SOURCE)) endef $(eval $(autotools-package)) diff --git a/package/freescale-imx/libz160/libz160.mk b/package/freescale-imx/libz160/libz160.mk index af43b1859d..5b1feeb441 100644 --- a/package/freescale-imx/libz160/libz160.mk +++ b/package/freescale-imx/libz160/libz160.mk @@ -15,7 +15,7 @@ LIBZ160_LICENSE_FILES = EULA LIBZ160_REDISTRIBUTE = NO define LIBZ160_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(LIBZ160_SOURCE)) + $(call FREESCALE_IMX_EXTRACT_HELPER,$(LIBZ160_DL_DIR)/$(LIBZ160_SOURCE)) endef define LIBZ160_INSTALL_STAGING_CMDS diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk index 27fc1e987c..f42f36a967 100644 --- a/package/gcc/gcc.mk +++ b/package/gcc/gcc.mk @@ -316,7 +316,7 @@ HOST_GCC_COMMON_MAKE_OPTS = \ gcc_cv_libc_provides_ssp=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) ifeq ($(BR2_CCACHE),y) -HOST_GCC_COMMON_CCACHE_HASH_FILES += $(DL_DIR)/$(GCC_SOURCE) +HOST_GCC_COMMON_CCACHE_HASH_FILES += $(GCC_DL_DIR)/$(GCC_SOURCE) # Cfr. PATCH_BASE_DIRS in .stamp_patched, but we catch both versioned # and unversioned patches unconditionally. Moreover, to facilitate the diff --git a/package/irrlicht/irrlicht.mk b/package/irrlicht/irrlicht.mk index ccd1045ca0..a1e190d98d 100644 --- a/package/irrlicht/irrlicht.mk +++ b/package/irrlicht/irrlicht.mk @@ -25,7 +25,7 @@ IRRLICHT_SUBDIR = source/Irrlicht IRRLICHT_DEPENDENCIES = libgl xlib_libXxf86vm define IRRLICHT_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(IRRLICHT_SOURCE) + $(UNZIP) -d $(@D) $(IRRLICHT_DL_DIR)/$(IRRLICHT_SOURCE) mv $(@D)/irrlicht-$(IRRLICHT_VERSION)/* $(@D) $(RM) -r $(@D)/irrlicht-$(IRRLICHT_VERSION) endef diff --git a/package/jquery-mobile/jquery-mobile.mk b/package/jquery-mobile/jquery-mobile.mk index 1067952904..1171e60d0a 100644 --- a/package/jquery-mobile/jquery-mobile.mk +++ b/package/jquery-mobile/jquery-mobile.mk @@ -10,7 +10,7 @@ JQUERY_MOBILE_SOURCE = jquery.mobile-$(JQUERY_MOBILE_VERSION).zip JQUERY_MOBILE_LICENSE = MIT define JQUERY_MOBILE_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(JQUERY_MOBILE_SOURCE) + $(UNZIP) -d $(@D) $(JQUERY_MOBILE_DL_DIR)/$(JQUERY_MOBILE_SOURCE) endef JQUERY_MOBILE_INSTALLED_FILES = \ diff --git a/package/jquery-sparkline/jquery-sparkline.mk b/package/jquery-sparkline/jquery-sparkline.mk index 165c2fa99c..683d84f4aa 100644 --- a/package/jquery-sparkline/jquery-sparkline.mk +++ b/package/jquery-sparkline/jquery-sparkline.mk @@ -10,7 +10,7 @@ JQUERY_SPARKLINE_SOURCE = jquery.sparkline.min.js JQUERY_SPARKLINE_LICENSE = BSD-3-Clause define JQUERY_SPARKLINE_EXTRACT_CMDS - cp $(DL_DIR)/$(JQUERY_SPARKLINE_SOURCE) $(@D) + cp $(JQUERY_SPARKLINE_DL_DIR)/$(JQUERY_SPARKLINE_SOURCE) $(@D) endef define JQUERY_SPARKLINE_INSTALL_TARGET_CMDS diff --git a/package/jquery-ui-themes/jquery-ui-themes.mk b/package/jquery-ui-themes/jquery-ui-themes.mk index cd3dab6d87..5108389a77 100644 --- a/package/jquery-ui-themes/jquery-ui-themes.mk +++ b/package/jquery-ui-themes/jquery-ui-themes.mk @@ -12,7 +12,7 @@ JQUERY_UI_THEMES_LICENSE_FILES = MIT-LICENSE.txt JQUERY_UI_THEMES_DEPENDENCIES = jquery-ui define JQUERY_UI_THEMES_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(JQUERY_UI_THEMES_SOURCE) + $(UNZIP) -d $(@D) $(JQUERY_UI_THEMES_DL_DIR)/$(JQUERY_UI_THEMES_SOURCE) mv $(@D)/jquery-ui-themes-$(JQUERY_UI_THEMES_VERSION)/* $(@D) $(RM) -r $(@D)/jquery-ui-themes-$(JQUERY_UI_THEMES_VERSION) endef diff --git a/package/jquery-ui/jquery-ui.mk b/package/jquery-ui/jquery-ui.mk index d829d6241b..9284e683f1 100644 --- a/package/jquery-ui/jquery-ui.mk +++ b/package/jquery-ui/jquery-ui.mk @@ -14,7 +14,7 @@ JQUERY_UI_LICENSE = MIT JQUERY_UI_LICENSE_FILES = MIT-LICENSE.txt define JQUERY_UI_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(JQUERY_UI_SOURCE) + $(UNZIP) -d $(@D) $(JQUERY_UI_DL_DIR)/$(JQUERY_UI_SOURCE) mv $(@D)/jquery-ui-$(JQUERY_UI_VERSION)/* $(@D) $(RM) -r $(@D)/jquery-ui-$(JQUERY_UI_VERSION) endef diff --git a/package/jquery-validation/jquery-validation.mk b/package/jquery-validation/jquery-validation.mk index 10d2a92afc..a8c2897983 100644 --- a/package/jquery-validation/jquery-validation.mk +++ b/package/jquery-validation/jquery-validation.mk @@ -11,7 +11,7 @@ JQUERY_VALIDATION_LICENSE = MIT JQUERY_VALIDATION_LICENSE_FILES = README.md define JQUERY_VALIDATION_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(JQUERY_VALIDATION_SOURCE) + $(UNZIP) -d $(@D) $(JQUERY_VALIDATION_DL_DIR)/$(JQUERY_VALIDATION_SOURCE) endef define JQUERY_VALIDATION_INSTALL_TARGET_CMDS diff --git a/package/jquery/jquery.mk b/package/jquery/jquery.mk index 363ee09633..f75eded8b3 100644 --- a/package/jquery/jquery.mk +++ b/package/jquery/jquery.mk @@ -10,7 +10,7 @@ JQUERY_SOURCE = jquery-$(JQUERY_VERSION).min.js JQUERY_LICENSE = MIT define JQUERY_EXTRACT_CMDS - cp $(DL_DIR)/$(JQUERY_SOURCE) $(@D) + cp $(JQUERY_DL_DIR)/$(JQUERY_SOURCE) $(@D) endef define JQUERY_INSTALL_TARGET_CMDS diff --git a/package/kodi/kodi.mk b/package/kodi/kodi.mk index 93f4dd4b31..739850d670 100644 --- a/package/kodi/kodi.mk +++ b/package/kodi/kodi.mk @@ -69,9 +69,9 @@ KODI_CONF_OPTS += \ -DDEPENDS_PATH=$(@D) \ -DWITH_FFMPEG=$(STAGING_DIR)/usr \ -DWITH_TEXTUREPACKER=$(HOST_DIR)/bin/TexturePacker \ - -DLIBDVDCSS_URL=$(DL_DIR)/$(KODI_LIBDVDCSS_VERSION).tar.gz \ - -DLIBDVDNAV_URL=$(DL_DIR)/$(KODI_LIBDVDNAV_VERSION).tar.gz \ - -DLIBDVDREAD_URL=$(DL_DIR)/$(KODI_LIBDVDREAD_VERSION).tar.gz + -DLIBDVDCSS_URL=$(KODI_DL_DIR)/$(KODI_LIBDVDCSS_VERSION).tar.gz \ + -DLIBDVDNAV_URL=$(KODI_DL_DIR)/$(KODI_LIBDVDNAV_VERSION).tar.gz \ + -DLIBDVDREAD_URL=$(KODI_DL_DIR)/$(KODI_LIBDVDREAD_VERSION).tar.gz ifeq ($(BR2_ENABLE_LOCALE),) KODI_DEPENDENCIES += libiconv diff --git a/package/libb64/libb64.mk b/package/libb64/libb64.mk index 4dea9593a0..ed6d3cf4b4 100644 --- a/package/libb64/libb64.mk +++ b/package/libb64/libb64.mk @@ -14,7 +14,7 @@ LIBB64_INSTALL_STAGING = YES LIBB64_INSTALL_TARGET = NO define LIBB64_EXTRACT_CMDS - unzip $(DL_DIR)/$(LIBB64_SOURCE) -d $(BUILD_DIR) + unzip $(LIBB64_DL_DIR)/$(LIBB64_SOURCE) -d $(BUILD_DIR) endef define LIBB64_BUILD_CMDS diff --git a/package/libfreeimage/libfreeimage.mk b/package/libfreeimage/libfreeimage.mk index 0ca23933a6..e0aa1f0ae8 100644 --- a/package/libfreeimage/libfreeimage.mk +++ b/package/libfreeimage/libfreeimage.mk @@ -12,7 +12,7 @@ LIBFREEIMAGE_LICENSE_FILES = license-gplv2.txt license-gplv3.txt license-fi.txt LIBFREEIMAGE_INSTALL_STAGING = YES define LIBFREEIMAGE_EXTRACT_CMDS - $(UNZIP) $(DL_DIR)/$(LIBFREEIMAGE_SOURCE) -d $(@D) + $(UNZIP) $(LIBFREEIMAGE_DL_DIR)/$(LIBFREEIMAGE_SOURCE) -d $(@D) mv $(@D)/FreeImage/* $(@D) rmdir $(@D)/FreeImage endef diff --git a/package/libjson/libjson.mk b/package/libjson/libjson.mk index 74224ba657..d04ddc40f3 100644 --- a/package/libjson/libjson.mk +++ b/package/libjson/libjson.mk @@ -23,7 +23,7 @@ endif LIBJSON_MAKE_OPTS += BUILD_TYPE= CXXFLAGS="$(LIBJSON_CXXFLAGS)" define LIBJSON_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(LIBJSON_SOURCE) + $(UNZIP) -d $(@D) $(LIBJSON_DL_DIR)/$(LIBJSON_SOURCE) mv $(@D)/libjson/* $(@D) $(RM) -r $(@D)/libjson $(SED) '/ldconfig/d' $(@D)/makefile diff --git a/package/libsoil/libsoil.mk b/package/libsoil/libsoil.mk index efa67d9eee..2945edd8dd 100644 --- a/package/libsoil/libsoil.mk +++ b/package/libsoil/libsoil.mk @@ -14,7 +14,7 @@ LIBSOIL_LICENSE_FILES = src/stb_image_aug.c src/image_helper.c LIBSOIL_MAKEFILE = ../projects/makefile/alternate_Makefile.txt define LIBSOIL_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(LIBSOIL_SOURCE) + $(UNZIP) -d $(@D) $(LIBSOIL_DL_DIR)/$(LIBSOIL_SOURCE) mv $(@D)/Simple\ OpenGL\ Image\ Library/* $(@D) endef diff --git a/package/lsof/lsof.mk b/package/lsof/lsof.mk index e5cd4bce6e..0dc8e2de2f 100644 --- a/package/lsof/lsof.mk +++ b/package/lsof/lsof.mk @@ -32,7 +32,7 @@ endif # The .tar.bz2 contains another .tar, which contains the source code. define LSOF_EXTRACT_CMDS - $(call suitable-extractor,$(LSOF_SOURCE)) $(DL_DIR)/$(LSOF_SOURCE) | \ + $(call suitable-extractor,$(LSOF_SOURCE)) $(LSOF_DL_DIR)/$(LSOF_SOURCE) | \ $(TAR) -O $(TAR_OPTIONS) - lsof_$(LSOF_VERSION)/lsof_$(LSOF_VERSION)_src.tar | \ $(TAR) --strip-components=1 -C $(LSOF_DIR) $(TAR_OPTIONS) - endef diff --git a/package/musl-compat-headers/musl-compat-headers.mk b/package/musl-compat-headers/musl-compat-headers.mk index 91f5074ef6..1cfa894879 100644 --- a/package/musl-compat-headers/musl-compat-headers.mk +++ b/package/musl-compat-headers/musl-compat-headers.mk @@ -20,7 +20,7 @@ MUSL_COMPAT_HEADERS_INSTALL_STAGING = YES # Copying both headers so legal-info finds them (they are _LICENSE_FILES) define MUSL_COMPAT_HEADERS_EXTRACT_CMDS - $(INSTALL) -m 0644 -D $(DL_DIR)/$(notdir $(MUSL_COMPAT_HEADERS_QUEUE_H)) $(@D)/queue.h + $(INSTALL) -m 0644 -D $(MUSL_COMPAT_HEADERS_DL_DIR)/$(notdir $(MUSL_COMPAT_HEADERS_QUEUE_H)) $(@D)/queue.h $(INSTALL) -m 0644 -D $(MUSL_COMPAT_HEADERS_PKGDIR)/cdefs.h $(@D)/cdefs.h endef diff --git a/package/nmon/nmon.mk b/package/nmon/nmon.mk index f561d6dcc0..f7edd66a26 100644 --- a/package/nmon/nmon.mk +++ b/package/nmon/nmon.mk @@ -13,7 +13,7 @@ NMON_DEPENDENCIES = ncurses NMON_CFLAGS = $(TARGET_CFLAGS) -D JFS -D GETUSER -D LARGEMEM -D DEBIAN define NMON_EXTRACT_CMDS - cp $(DL_DIR)/$(NMON_SOURCE) $(@D) + cp $(NMON_DL_DIR)/$(NMON_SOURCE) $(@D) endef define NMON_BUILD_CMDS diff --git a/package/nvidia-driver/nvidia-driver.mk b/package/nvidia-driver/nvidia-driver.mk index e56661059f..404fa881ec 100644 --- a/package/nvidia-driver/nvidia-driver.mk +++ b/package/nvidia-driver/nvidia-driver.mk @@ -144,7 +144,7 @@ endif # BR2_PACKAGE_NVIDIA_DRIVER_MODULE == y # virtually everywhere, and it is fine enough to provide useful options. # Except it can't extract into an existing (even empty) directory. define NVIDIA_DRIVER_EXTRACT_CMDS - $(SHELL) $(DL_DIR)/$(NVIDIA_DRIVER_SOURCE) --extract-only --target \ + $(SHELL) $(NVIDIA_DRIVER_DL_DIR)/$(NVIDIA_DRIVER_SOURCE) --extract-only --target \ $(@D)/tmp-extract chmod u+w -R $(@D) mv $(@D)/tmp-extract/* $(@D)/tmp-extract/.manifest $(@D) diff --git a/package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk b/package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk index 5514643416..2885021c58 100644 --- a/package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk +++ b/package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk @@ -15,7 +15,7 @@ NVIDIA_TEGRA23_CODECS_REDISTRIBUTE = NO define NVIDIA_TEGRA23_CODECS_EXTRACT_CMDS $(INSTALL) -d $(@D) $(call suitable-extractor,$(NVIDIA_TEGRA23_CODECS_SOURCE)) \ - $(DL_DIR)/$(NVIDIA_TEGRA23_CODECS_SOURCE) | \ + $(NVIDIA_TEGRA23_CODECS_DL_DIR)/$(NVIDIA_TEGRA23_CODECS_SOURCE) | \ $(TAR) --strip-components=0 -C $(@D) $(TAR_OPTIONS) - $(INSTALL) -d $(@D)/restricted_codecs $(call suitable-extractor,$(@D)/restricted_codecs.tbz2) \ diff --git a/package/openobex/openobex.mk b/package/openobex/openobex.mk index ea41f65a80..c19780110c 100644 --- a/package/openobex/openobex.mk +++ b/package/openobex/openobex.mk @@ -19,6 +19,12 @@ ifeq ($(BR2_PACKAGE_BLUEZ_UTILS),y) OPENOBEX_DEPENDENCIES += bluez_utils endif +define OPENOBEX_EXTRACT_CMDS + $(UNZIP) -d $(@D) $(OPENOBEX_DL_DIR)/$(OPENOBEX_SOURCE) + mv $(@D)/openobex-$(OPENOBEX_VERSION)-Source/* $(@D) + $(RM) -r $(@D)/openobex-$(OPENOBEX_VERSION)-Source +endef + ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS),y) OPENOBEX_DEPENDENCIES += bluez5_utils endif diff --git a/package/opentyrian-data/opentyrian-data.mk b/package/opentyrian-data/opentyrian-data.mk index 4b879df1c3..9e38b61bfa 100644 --- a/package/opentyrian-data/opentyrian-data.mk +++ b/package/opentyrian-data/opentyrian-data.mk @@ -10,7 +10,7 @@ OPENTYRIAN_DATA_SOURCE = tyrian21.zip OPENTYRIAN_DATA_LICENSE = Freeware define OPENTYRIAN_DATA_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(OPENTYRIAN_DATA_SOURCE) + $(UNZIP) -d $(@D) $(OPENTYRIAN_DATA_DL_DIR)/$(OPENTYRIAN_DATA_SOURCE) endef define OPENTYRIAN_DATA_INSTALL_TARGET_CMDS diff --git a/package/perl/perl.mk b/package/perl/perl.mk index 58bf3eb6ae..c47367b9da 100644 --- a/package/perl/perl.mk +++ b/package/perl/perl.mk @@ -24,7 +24,7 @@ PERL_EXTRA_DOWNLOADS = $(PERL_CROSS_SITE)/$(PERL_CROSS_SOURCE) # as a separate package. Instead, it is downloaded and extracted # together with perl define PERL_CROSS_EXTRACT - $(call suitable-extractor,$(PERL_CROSS_SOURCE)) $(DL_DIR)/$(PERL_CROSS_SOURCE) | \ + $(call suitable-extractor,$(PERL_CROSS_SOURCE)) $(PERL_DL_DIR)/$(PERL_CROSS_SOURCE) | \ $(TAR) --strip-components=1 -C $(@D) $(TAR_OPTIONS) - endef PERL_POST_EXTRACT_HOOKS += PERL_CROSS_EXTRACT diff --git a/package/python-keyring/python-keyring.mk b/package/python-keyring/python-keyring.mk index 27db2802ed..8ac18ae052 100644 --- a/package/python-keyring/python-keyring.mk +++ b/package/python-keyring/python-keyring.mk @@ -6,7 +6,6 @@ PYTHON_KEYRING_VERSION = 10.5.0 PYTHON_KEYRING_SOURCE = keyring-$(PYTHON_KEYRING_VERSION).tar.gz -PYTHON_KEYRING_SITE = https://pypi.python.org/packages/42/2e/51bd1739fe335095a2174db3f2f230346762e7e572471059540146a521f6 PYTHON_KEYRING_SETUP_TYPE = setuptools PYTHON_KEYRING_LICENSE = MIT PYTHON_KEYRING_LICENSE_FILES = LICENSE diff --git a/package/python-pytz/python-pytz.mk b/package/python-pytz/python-pytz.mk index 6e130a6b2f..1d3603389b 100644 --- a/package/python-pytz/python-pytz.mk +++ b/package/python-pytz/python-pytz.mk @@ -12,7 +12,7 @@ PYTHON_PYTZ_LICENSE = MIT PYTHON_PYTZ_LICENSE_FILES = LICENSE.txt define PYTHON_PYTZ_EXTRACT_CMDS - unzip $(DL_DIR)/$(PYTHON_PYTZ_SOURCE) -d $(@D) + unzip $(PYTHON_PYTZ_DL_DIR)/$(PYTHON_PYTZ_SOURCE) -d $(@D) mv $(@D)/pytz-$(PYTHON_PYTZ_VERSION)/* $(@D) rmdir $(@D)/pytz-$(PYTHON_PYTZ_VERSION) endef diff --git a/package/python-simplegeneric/python-simplegeneric.mk b/package/python-simplegeneric/python-simplegeneric.mk index cc84320428..d3bfa69a7e 100644 --- a/package/python-simplegeneric/python-simplegeneric.mk +++ b/package/python-simplegeneric/python-simplegeneric.mk @@ -16,7 +16,7 @@ PYTHON_SIMPLEGENERIC_LICENSE = ZPL-2.1 PYTHON_SIMPLEGENERIC_SETUP_TYPE = setuptools define PYTHON_SIMPLEGENERIC_EXTRACT_CMDS - unzip $(DL_DIR)/$(PYTHON_SIMPLEGENERIC_SOURCE) -d $(@D) + unzip $(PYTHON_SIMPLEGENERIC_DL_DIR)/$(PYTHON_SIMPLEGENERIC_SOURCE) -d $(@D) mv $(@D)/simplegeneric-$(PYTHON_SIMPLEGENERIC_VERSION)/* $(@D) rmdir $(@D)/simplegeneric-$(PYTHON_SIMPLEGENERIC_VERSION) endef diff --git a/package/rapidxml/rapidxml.mk b/package/rapidxml/rapidxml.mk index 2bec8fe1f2..9d034d8205 100644 --- a/package/rapidxml/rapidxml.mk +++ b/package/rapidxml/rapidxml.mk @@ -15,7 +15,7 @@ RAPIDXML_INSTALL_TARGET = NO RAPIDXML_INSTALL_STAGING = YES define RAPIDXML_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(DL_DIR)/$(RAPIDXML_SOURCE) + $(UNZIP) -d $(@D) $(RAPIDXML_DL_DIR)/$(RAPIDXML_SOURCE) mv $(@D)/rapidxml-$(RAPIDXML_VERSION)/* $(@D)/ rmdir $(@D)/rapidxml-$(RAPIDXML_VERSION) endef diff --git a/package/rpi-wifi-firmware/rpi-wifi-firmware.mk b/package/rpi-wifi-firmware/rpi-wifi-firmware.mk index 6c855a8e14..83473d5bb9 100644 --- a/package/rpi-wifi-firmware/rpi-wifi-firmware.mk +++ b/package/rpi-wifi-firmware/rpi-wifi-firmware.mk @@ -12,7 +12,7 @@ RPI_WIFI_FIRMWARE_SITE = https://raw.githubusercontent.com/RPi-Distro/firmware-n RPI_WIFI_FIRMWARE_LICENSE = PROPRIETARY define RPI_WIFI_FIRMWARE_EXTRACT_CMDS - cp $(DL_DIR)/$($(PKG)_SOURCE) $(@D)/ + cp $(RPI_WIFI_FIRMWARE_DL_DIR)/$($(PKG)_SOURCE) $(@D)/ endef define RPI_WIFI_FIRMWARE_INSTALL_TARGET_CMDS diff --git a/package/rust-bin/rust-bin.mk b/package/rust-bin/rust-bin.mk index cd5844b115..759d468304 100644 --- a/package/rust-bin/rust-bin.mk +++ b/package/rust-bin/rust-bin.mk @@ -22,7 +22,7 @@ HOST_RUST_BIN_LIBSTD_HOST_PREFIX = rust-std-$(RUST_BIN_VERSION)-$(RUSTC_HOST_NAM define HOST_RUST_BIN_LIBSTD_EXTRACT mkdir -p $(@D)/std $(foreach f,$(HOST_RUST_BIN_EXTRA_DOWNLOADS), \ - $(call suitable-extractor,$(f)) $(DL_DIR)/$(f) | \ + $(call suitable-extractor,$(f)) $(RUST_BIN_DL_DIR)/$(f) | \ $(TAR) -C $(@D)/std $(TAR_OPTIONS) - ) cd $(@D)/rustc/lib/rustlib; \ diff --git a/package/sam-ba/sam-ba.mk b/package/sam-ba/sam-ba.mk index a7941459c7..acc03a3b6b 100644 --- a/package/sam-ba/sam-ba.mk +++ b/package/sam-ba/sam-ba.mk @@ -13,7 +13,7 @@ SAM_BA_LICENSE_FILES = doc/license.txt tcl_lib/boards.tcl \ applets/sam4c/libraries/libchip_sam4c/include/sam4c/sam4c32e-1.h define HOST_SAM_BA_EXTRACT_CMDS - $(UNZIP) -d $(BUILD_DIR) $(DL_DIR)/$(SAM_BA_SOURCE) + $(UNZIP) -d $(BUILD_DIR) $(SAM_BA_DL_DIR)/$(SAM_BA_SOURCE) mv $(BUILD_DIR)/sam-ba_cdc_linux/* $(@D) rmdir $(BUILD_DIR)/sam-ba_cdc_linux/ endef diff --git a/package/spidev_test/spidev_test.mk b/package/spidev_test/spidev_test.mk index 1d657803b4..bf8170cd2c 100644 --- a/package/spidev_test/spidev_test.mk +++ b/package/spidev_test/spidev_test.mk @@ -32,7 +32,7 @@ endef SPIDEV_TEST_POST_PATCH_HOOKS += SPIDEV_ADD_LINUX_IOCTL define SPIDEV_TEST_EXTRACT_CMDS - cp $(DL_DIR)/$(SPIDEV_TEST_SOURCE) $(@D)/spidev_test.c + cp $(SPIDEV_TEST_DL_DIR)/$(SPIDEV_TEST_SOURCE) $(@D)/spidev_test.c endef define SPIDEV_TEST_BUILD_CMDS diff --git a/package/tar/tar.mk b/package/tar/tar.mk index 92b6e9eaa5..9942e77737 100644 --- a/package/tar/tar.mk +++ b/package/tar/tar.mk @@ -40,7 +40,7 @@ HOST_TAR_SOURCE = tar-$(TAR_VERSION).cpio.gz define HOST_TAR_EXTRACT_CMDS mkdir -p $(@D) cd $(@D) && \ - $(call suitable-extractor,$(HOST_TAR_SOURCE)) $(DL_DIR)/$(HOST_TAR_SOURCE) | cpio -i --preserve-modification-time + $(call suitable-extractor,$(HOST_TAR_SOURCE)) $(TAR_DL_DIR)/$(HOST_TAR_SOURCE) | cpio -i --preserve-modification-time mv $(@D)/tar-$(TAR_VERSION)/* $(@D) rmdir $(@D)/tar-$(TAR_VERSION) endef diff --git a/package/tesseract-ocr/tesseract-ocr.mk b/package/tesseract-ocr/tesseract-ocr.mk index 9e315b239a..919a4360ed 100644 --- a/package/tesseract-ocr/tesseract-ocr.mk +++ b/package/tesseract-ocr/tesseract-ocr.mk @@ -62,7 +62,7 @@ TESSERACT_OCR_PRE_CONFIGURE_HOOKS += TESSERACT_OCR_PRECONFIGURE # Language data files installation define TESSERACT_OCR_INSTALL_LANG_DATA $(foreach langfile,$(TESSERACT_OCR_DATA_FILES), \ - $(INSTALL) -D -m 0644 $(DL_DIR)/$(langfile) \ + $(INSTALL) -D -m 0644 $(TESSERACT_OCR_DL_DIR)/$(langfile) \ $(TARGET_DIR)/usr/share/tessdata/$(langfile) ) endef diff --git a/package/ti-cgt-pru/ti-cgt-pru.mk b/package/ti-cgt-pru/ti-cgt-pru.mk index 0b9a64b3c9..df3b97bef5 100644 --- a/package/ti-cgt-pru/ti-cgt-pru.mk +++ b/package/ti-cgt-pru/ti-cgt-pru.mk @@ -13,8 +13,8 @@ TI_CGT_PRU_LICENSE_FILES = PRU_Code_Generation_Tools_2.2.x_manifest.html \ pru_rts_2_2_0_82167478-F8C9-49b2-82BD-12F8550770F9.spdx define HOST_TI_CGT_PRU_EXTRACT_CMDS - chmod +x $(DL_DIR)/$(TI_CGT_PRU_SOURCE) - $(DL_DIR)/$(TI_CGT_PRU_SOURCE) --prefix $(@D) --mode unattended + chmod +x $(TI_CGT_PRU_DL_DIR)/$(TI_CGT_PRU_SOURCE) + $(TI_CGT_PRU_DL_DIR)/$(TI_CGT_PRU_SOURCE) --prefix $(@D) --mode unattended mv $(@D)/ti-cgt-pru_$(TI_CGT_PRU_VERSION)/* $(@D) rmdir $(@D)/ti-cgt-pru_$(TI_CGT_PRU_VERSION)/ endef diff --git a/package/ti-gfx/ti-gfx.mk b/package/ti-gfx/ti-gfx.mk index 428878a08b..9fad553780 100644 --- a/package/ti-gfx/ti-gfx.mk +++ b/package/ti-gfx/ti-gfx.mk @@ -94,8 +94,8 @@ TI_GFX_HDR_DIRS = OGLES2/EGL OGLES2/EWS OGLES2/GLES2 OGLES2/KHR \ OGLES/GLES bufferclass_ti/ pvr2d/ wsegl/ define TI_GFX_EXTRACT_CMDS - chmod +x $(DL_DIR)/$(TI_GFX_SOURCE) - printf "Y\nY\n qY\n\n" | $(DL_DIR)/$(TI_GFX_SOURCE) \ + chmod +x $(TI_GFX_DL_DIR)/$(TI_GFX_SOURCE) + printf "Y\nY\n qY\n\n" | $(TI_GFX_DL_DIR)/$(TI_GFX_SOURCE) \ --prefix $(@D) \ --mode console endef diff --git a/package/ts4900-fpga/ts4900-fpga.mk b/package/ts4900-fpga/ts4900-fpga.mk index ed951b8c8f..7bb62a3984 100644 --- a/package/ts4900-fpga/ts4900-fpga.mk +++ b/package/ts4900-fpga/ts4900-fpga.mk @@ -11,7 +11,7 @@ TS4900_FPGA_SITE = ftp://ftp.embeddedarm.com/ts-socket-macrocontrollers/ts-4900- # https://github.com/embeddedarm/meta-ts/blob/f31860f1204b64f765a5380d3b93a2cf18234f90/recipes-extras/ts4900-fpga/ts4900-fpga.bb#L6 define TS4900_FPGA_EXTRACT_CMDS - cp $(DL_DIR)/$(TS4900_FPGA_SOURCE) $(@D) + cp $(TS4900_FPGA_DL_DIR)/$(TS4900_FPGA_SOURCE) $(@D) endef define TS4900_FPGA_INSTALL_TARGET_CMDS diff --git a/package/unscd/unscd.mk b/package/unscd/unscd.mk index f0eb5d6ad6..36f2de271b 100644 --- a/package/unscd/unscd.mk +++ b/package/unscd/unscd.mk @@ -11,7 +11,7 @@ UNSCD_LICENSE = GPL-2.0 UNSCD_LICENSE_FILES = $(UNSCD_SOURCE) define UNSCD_EXTRACT_CMDS - cp $(DL_DIR)/$($(PKG)_SOURCE) $(@D)/ + cp $(UNSCD_DL_DIR)/$($(PKG)_SOURCE) $(@D)/ endef define UNSCD_BUILD_CMDS diff --git a/package/urg/urg.mk b/package/urg/urg.mk index 966627fe36..1346079893 100644 --- a/package/urg/urg.mk +++ b/package/urg/urg.mk @@ -25,7 +25,9 @@ endif URG_CONFIG_SCRIPTS = c_urg-config urg-config define URG_EXTRACT_CMDS - $(UNZIP) -d $(BUILD_DIR) $(DL_DIR)/$(URG_SOURCE) + $(UNZIP) -d $(BUILD_DIR) $(URG_DL_DIR)/$(URG_SOURCE) + test -d $(URG_DIR) || \ + mv $(BUILD_DIR)/$(subst .zip,,$(URG_SOURCE)) $(URG_DIR) endef $(eval $(autotools-package)) diff --git a/package/waf/waf.mk b/package/waf/waf.mk index e7ac891b39..639c26a3b0 100644 --- a/package/waf/waf.mk +++ b/package/waf/waf.mk @@ -9,7 +9,7 @@ WAF_SOURCE = waf-$(WAF_VERSION) WAF_SITE = https://waf.io/ define HOST_WAF_EXTRACT_CMDS - $(INSTALL) -D -m 0755 $(DL_DIR)/waf-$(WAF_VERSION) $(@D)/waf + $(INSTALL) -D -m 0755 $(WAF_DL_DIR)/waf-$(WAF_VERSION) $(@D)/waf endef define HOST_WAF_INSTALL_CMDS diff --git a/package/whetstone/whetstone.mk b/package/whetstone/whetstone.mk index d9b45638c5..3b6ec3419b 100644 --- a/package/whetstone/whetstone.mk +++ b/package/whetstone/whetstone.mk @@ -9,7 +9,7 @@ WHETSTONE_SOURCE = whetstone.c WHETSTONE_SITE = http://www.netlib.org/benchmark define WHETSTONE_EXTRACT_CMDS - cp $(DL_DIR)/$($(PKG)_SOURCE) $(@D)/ + cp $(WHETSTONE_DL_DIR)/$($(PKG)_SOURCE) $(@D)/ endef define WHETSTONE_BUILD_CMDS diff --git a/package/wilc1000-firmware/wilc1000-firmware.mk b/package/wilc1000-firmware/wilc1000-firmware.mk index 5dcf19045b..6f504d67a0 100644 --- a/package/wilc1000-firmware/wilc1000-firmware.mk +++ b/package/wilc1000-firmware/wilc1000-firmware.mk @@ -11,7 +11,7 @@ WILC1000_FIRMWARE_SOURCE = v$(WILC1000_FIRMWARE_VERSION)_Firmware.zip WILC1000_FIRMWARE_LICENSE = PROPRIETARY define WILC1000_FIRMWARE_EXTRACT_CMDS - $(UNZIP) -d $(BUILD_DIR) $(DL_DIR)/$(WILC1000_FIRMWARE_SOURCE) + $(UNZIP) -d $(BUILD_DIR) $(WILC1000_FIRMWARE_DL_DIR)/$(WILC1000_FIRMWARE_SOURCE) mv $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware/* $(@D) rmdir $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware endef diff --git a/package/zynq-boot-bin/zynq-boot-bin.mk b/package/zynq-boot-bin/zynq-boot-bin.mk index 3648c63654..c523e04f45 100644 --- a/package/zynq-boot-bin/zynq-boot-bin.mk +++ b/package/zynq-boot-bin/zynq-boot-bin.mk @@ -12,7 +12,7 @@ ZYNQ_BOOT_BIN_LICENSE = GPL-3.0+ HOST_ZYNQ_BOOT_BIN_DEPENDENCIES = host-python define HOST_ZYNQ_BOOT_BIN_EXTRACT_CMDS - cp $(DL_DIR)/$(ZYNQ_BOOT_BIN_SOURCE) $(@D) + cp $(ZYNQ_BOOT_BIN_DL_DIR)/$(ZYNQ_BOOT_BIN_SOURCE) $(@D) endef define HOST_ZYNQ_BOOT_BIN_INSTALL_CMDS From patchwork Sat Mar 31 14:23:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893788 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.136; helo=silver.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="jDFq2q2i"; dkim-atps=neutral Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D12X1Pyvz9s2R for ; Sun, 1 Apr 2018 01:24:20 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 4609A3099A; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id sdxU3HzHrL1l; Sat, 31 Mar 2018 14:24:16 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 5856930994; Sat, 31 Mar 2018 14:24:16 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id F35BB1C16D3 for ; Sat, 31 Mar 2018 14:24:13 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id F08CC8A152 for ; Sat, 31 Mar 2018 14:24:13 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id bi6JV+PEAKgq for ; Sat, 31 Mar 2018 14:24:13 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by whitealder.osuosl.org (Postfix) with ESMTPS id 3D48E89F2E for ; Sat, 31 Mar 2018 14:24:13 +0000 (UTC) Received: by mail-wr0-f193.google.com with SMTP id l49so10047921wrl.4 for ; Sat, 31 Mar 2018 07:24:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=eg+z8tnjcXCctzsOL+y0poPn2y3Of8Cs01InuZxmUaI=; b=jDFq2q2iVGfgcQTJIOTmqlklLYeY2+7ewJ9AQgOU6KZODB2/9AJaTD/PN92haO7K+c haZihV0CaukqVFQLCwHMHkcRyJb3osg++Etq1Z3vzmI6T+8YnqhCJt1q3Ux4pwZCgplj h7w89ch2CzT4SWGU2yprajbQRFqtWTAMHhjneQqhvTWhWIVACJT9SWJGOr763+w8VjEm a/1qRAqCsXICGDdex78H62XXWZ5rX/Mzp+/VQvdci96O3SA9W7+s2qPcWcgkYfg0DG0b vNVPQYjVegxLhXtwBsSOC1c9GOETyLCjfxSAtvXkD5TRGgwKg+kR7ZzcxFLlmy6vmCzx niGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=eg+z8tnjcXCctzsOL+y0poPn2y3Of8Cs01InuZxmUaI=; b=qDslVPYvhR8bEJ2adYEhE5wOcRnpNAX2iSveBmeJrDP0RzTFLd9Zvduy5e92kuGoOj kr/F+hAVO2M37UfVhd/VkCrqpl61AaIwzpSZDV7QoRF9JlmYvT+qxzsisFfTv/qcgk6W mdzpdU0hdJm9oOkS4jvjjk7TvRGy4xuzFWD0i0ZGJNrng8XEydypGIEQrg8d0dSLM5h3 z0mFSUkt/r2OsY9AngcyBxJov1+MgZindiwR1WbDJ6h7x/xwrc4PgiR0Gs1GFD2rJyOA vP/Xa0E6sQw1N6ge3kp5hua0Tk6v2yYxb6y4eJnF5avSKAhlcJBt3tV1BHuiGQ1YPvgU Ze9Q== X-Gm-Message-State: AElRT7G3cKE2PKSeW3Abpw6kGQoQ03Zc0+6mVlsQ65WbLhFO7GXKbwPi XjmRBJkokw2LLLn0uAG97p2mMUpK X-Google-Smtp-Source: AIpwx4+uw8uKm146ctfWrXMA8J7qhwgrKxH0hGSztgrGdVh1ktNYnGoKZXHdiyohkFl0bOCIDfSHYQ== X-Received: by 10.223.135.237 with SMTP id c42mr2219418wrc.146.1522506251472; Sat, 31 Mar 2018 07:24:11 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.10 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:11 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:23:58 +0200 Message-Id: <20180331142407.9522-4-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 04/13] arc/xtensa: store the eXtensa overlay in the per-package DL_DIR X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" From: "Yann E. MORIN" Signed-off-by: "Yann E. MORIN" Cc: Maxime Hadjinlian --- arch/arch.mk.xtensa | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arch.mk.xtensa b/arch/arch.mk.xtensa index 2b6cd26d03..fd410f6bfa 100644 --- a/arch/arch.mk.xtensa +++ b/arch/arch.mk.xtensa @@ -12,7 +12,7 @@ BR_ARCH_XTENSA_OVERLAY_FILE = $(call qstrip,$(BR2_XTENSA_OVERLAY_FILE)) ifneq ($(filter http://% https://% ftp://% scp://%,$(BR_ARCH_XTENSA_OVERLAY_FILE)),) ARCH_XTENSA_OVERLAY_URL = $(BR_ARCH_XTENSA_OVERLAY_FILE) -ARCH_XTENSA_OVERLAY_FILE = $(DL_DIR)/$(notdir $(BR_ARCH_XTENSA_OVERLAY_FILE)) +ARCH_XTENSA_OVERLAY_FILE = $($(PKG)_DL_DIR)/$(notdir $(BR_ARCH_XTENSA_OVERLAY_FILE)) # Do not check that file, we can't know its hash BR_NO_CHECK_HASH_FOR += $(notdir $(ARCH_XTENSA_OVERLAY_URL)) else From patchwork Sat Mar 31 14:23:59 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893790 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="OYwexqtC"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D12b0V37z9s2R for ; Sun, 1 Apr 2018 01:24:22 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id A8F81893A2; Sat, 31 Mar 2018 14:24:19 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3Yp_3HK7UTfE; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id B07A38938A; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 814B61C16D3 for ; Sat, 31 Mar 2018 14:24:15 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 7DF8530994 for ; Sat, 31 Mar 2018 14:24:15 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id WERyw4+LuqxB for ; Sat, 31 Mar 2018 14:24:15 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by silver.osuosl.org (Postfix) with ESMTPS id AD1AC25F2A for ; Sat, 31 Mar 2018 14:24:14 +0000 (UTC) Received: by mail-wr0-f193.google.com with SMTP id 80so10056669wrb.2 for ; Sat, 31 Mar 2018 07:24:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=KTx04IA4zQY+eFah2k4dRUsNGDL/wmZQDz/NOIKUL1s=; b=OYwexqtC9z3wKJvE1sCfWGXdYADHVUwDHBMTmuwuGXcxv/9et9Cae//ck73h2En8Ma eepD1vL2UcErEyO93t9FedF2yoRtRsMYTQjzidG6b1hbeyBNz2GyoMJyElfLEQkORRsh r7ZQA6pCDaFJqh7+Iupii/rZGZwH/9YoRHEA+gXwBJFKyKusiNURG8JiGyFBc5e+02DX yq1mZeOstzpAp0x9Z1QSwC2JKR/jHNbbhrl/H0btZn6k9VBRoaDjpAGO4HjbErZUNQtg 1ba3Ce5CFwI0A1TMSIT6+Qox0RGIm5VHSOL7CzvIIeE7ynczWORILFmP8DY3WA1W4R+E CkAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=KTx04IA4zQY+eFah2k4dRUsNGDL/wmZQDz/NOIKUL1s=; b=hd9Wtpps/eu0n1NNykRZZP3xQ6Wd8sEHil2km37DvXQpyfVSKolHZMs5d2aBu4tGtI Uz5kyJLmV89BYH79kKZOYAUTT69WMgZchiyqeHgLwlVYT6RyOUtgIqsdVoi6KdvpU+Po knBd7Q8Xqy2T6Huw1hzZh/Xso1i5ndi3Ly4lKGuc5BI1rzgZ0qSD7awE7Tk2x/Ojd7pU QyWJwwu4eP/VnXnc4s3NBuvvvsCEtedSFiUQ/ET6nTz9x4KmXljG2ceWQhXTT+iYogMr MEqA8fZEIN/gJeGTP7/EjsFMVackqKvp00fTPPCybTLMccqPDSU6uD4TGGCwDhpHdL/e pAuw== X-Gm-Message-State: AElRT7H5yg8ZEULDkbgUYPvtxNg8cKFYfFy+pnmjLIO7pL31e28Z769t LvxZg1k+V0ifYJypJH00EmF0BZL1 X-Google-Smtp-Source: AIpwx49Su7tcz8f2Ot3WIWlhJvpphXsAW3MsP3ETNyenOfExkIp7ryb+yvNtiH6spEBOubWeKWzv9Q== X-Received: by 10.223.166.179 with SMTP id t48mr2019720wrc.161.1522506252859; Sat, 31 Mar 2018 07:24:12 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:11 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:23:59 +0200 Message-Id: <20180331142407.9522-5-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 05/13] pkg-{download, generic}: use new $($(PKG)_DL_DIR) X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Let the infrastructure use the new variable $(PKG)_DL_DIR Signed-off-by: Maxime Hadjinlian Reviewed-by: "Yann E. MORIN" --- package/pkg-download.mk | 2 +- package/pkg-generic.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package/pkg-download.mk b/package/pkg-download.mk index 14ea4ff361..0717943bb0 100644 --- a/package/pkg-download.mk +++ b/package/pkg-download.mk @@ -95,7 +95,7 @@ define DOWNLOAD -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ -n $($(PKG)_RAW_BASE_NAME) \ -N $($(PKG)_RAWNAME) \ - -o $(DL_DIR)/$(notdir $(1)) \ + -o $($(PKG)_DL_DIR)/$(notdir $(1)) \ $(if $($(PKG)_GIT_SUBMODULES),-r) \ $(DOWNLOAD_URIS) \ $(QUIET) \ diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 6d82f7027e..7587324368 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -609,7 +609,7 @@ $(2)_TARGET_DIRCLEAN = $$($(2)_DIR)/.stamp_dircleaned # default extract command $(2)_EXTRACT_CMDS ?= \ - $$(if $$($(2)_SOURCE),$$(INFLATE$$(suffix $$($(2)_SOURCE))) $$(DL_DIR)/$$($(2)_SOURCE) | \ + $$(if $$($(2)_SOURCE),$$(INFLATE$$(suffix $$($(2)_SOURCE))) $$($(2)_DL_DIR)/$$($(2)_SOURCE) | \ $$(TAR) --strip-components=$$($(2)_STRIP_COMPONENTS) \ -C $$($(2)_DIR) \ $$(foreach x,$$($(2)_EXCLUDES),--exclude='$$(x)' ) \ From patchwork Sat Mar 31 14:24:00 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893791 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.136; helo=silver.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="biotRgdq"; dkim-atps=neutral Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D12h1pQsz9rxs for ; Sun, 1 Apr 2018 01:24:28 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id B0555309A3; Sat, 31 Mar 2018 14:24:26 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UgtwsqP8ApLH; Sat, 31 Mar 2018 14:24:26 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 280652264A; Sat, 31 Mar 2018 14:24:25 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 6EEA31C16D3 for ; Sat, 31 Mar 2018 14:24:16 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 6BECA89FDF for ; Sat, 31 Mar 2018 14:24:16 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ir1UQQaw0aAT for ; Sat, 31 Mar 2018 14:24:16 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f196.google.com (mail-wr0-f196.google.com [209.85.128.196]) by whitealder.osuosl.org (Postfix) with ESMTPS id A995689F2E for ; Sat, 31 Mar 2018 14:24:15 +0000 (UTC) Received: by mail-wr0-f196.google.com with SMTP id y55so10028811wry.3 for ; Sat, 31 Mar 2018 07:24:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=LtZnlsxOEdD4HWKnqSnY7pH/JBcyuVVawxISApoungw=; b=biotRgdqojPCJOArWw3JHuP3j+4tTvd9sEPL2y5uDulE9OOVyNioFQTKoOzLCbHWMp FccqLfLPMh/YeD3A++FnKSL72slbVUuWS5rJ0+SL9tu+kcj/lT0O7WnFDRBikt2vFB4S BZZMe6LelsrcZ4WgFeUGGB2flUWJjgjPZWKkKGD4z5dRpnGZBE4+OU5LqQP9vh7Ivsqj PKmCxsmPXtZ/Y4GQVt/djXif2yp8R98jt5Tcwc9Zf0ZrZ8Jpc3Xgp5omBf5i322ilEE0 H3QfZQI8BoSB7w1NHClmcvgSipO8CR6vnk5NT0ur8MH2uDsXidb6vdSlm68lzWdUwdVF XA/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=LtZnlsxOEdD4HWKnqSnY7pH/JBcyuVVawxISApoungw=; b=lTU/Km29z8Vr6Y746kTFhNsbxpwSjO+73EXTvKZ34hS91ISDOsVJPk2x99HFNns6jQ Z0enerNsG9TC6967nvJ1AsAUsUBWpR76WAYcl/T2Du8QcjaCeokozgTeBprf+95Dkw19 QVKoPLu25p4jA+W3O4Ij+NS9TkFWRx3ddmbp04Y7HQZZDHnHcfN27+aaQ4Mdz9xcwncf b0PEvZpO1fWkBMK1Hws5nsxZEpVWmX5J9/mFBlzqOUBBHRCbtMhdtv5O36zYq1QTDN7C 8DY9FBheHadYq6PbM8T3aUA4bej0w3jDdAP3GlNw8mvwhEUf2mcX5it+ahJUh2nvswqJ 0wuw== X-Gm-Message-State: AElRT7G2eCfMX4UfHVHMpYvGMmpbecik6ZnUXqeKH2I5xcPnvFl09bx7 8x2eQpLHkSuKxtwVMnGnB/3Sj9Ua X-Google-Smtp-Source: AIpwx49BV6jPbkV4QcxHOWjCaaxZmKLuvM/nT8syM/xLqwXFnp1grD1NyHxB2GP10QeOOgA3VvBENQ== X-Received: by 10.223.176.98 with SMTP id g31mr1989907wra.256.1522506253906; Sat, 31 Mar 2018 07:24:13 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.12 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:13 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:00 +0200 Message-Id: <20180331142407.9522-6-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 06/13] support/download: make sure the download folder is created X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" At the moment, it means that we make sure that BR2_DL_DIR is created, in the future, it will make sure that BR2_DL_DIR/PKG_NAME/ is created. Signed-off-by: Maxime Hadjinlian --- support/download/dl-wrapper | 1 + 1 file changed, 1 insertion(+) diff --git a/support/download/dl-wrapper b/support/download/dl-wrapper index 67e9742767..49caf3717b 100755 --- a/support/download/dl-wrapper +++ b/support/download/dl-wrapper @@ -50,6 +50,7 @@ main() { if [ -z "${output}" ]; then error "no output specified, use -o\n" fi + mkdir -p "$(dirname "${output}")" # If the output file already exists and: # - there's no .hash file: do not download it again and exit promptly From patchwork Sat Mar 31 14:24:01 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893796 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.136; helo=silver.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="lR22oTB/"; dkim-atps=neutral Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D1354MsCz9rxs for ; Sun, 1 Apr 2018 01:24:49 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id DD034309A5; Sat, 31 Mar 2018 14:24:47 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zhzQrmk3f32l; Sat, 31 Mar 2018 14:24:44 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 20F4B309A7; Sat, 31 Mar 2018 14:24:27 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id A75541C16D3 for ; Sat, 31 Mar 2018 14:24:18 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id A49EE8937E for ; Sat, 31 Mar 2018 14:24:18 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lmzB3cslYFxb for ; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f195.google.com (mail-wr0-f195.google.com [209.85.128.195]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 2A2E189351 for ; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) Received: by mail-wr0-f195.google.com with SMTP id o8so10057619wra.1 for ; Sat, 31 Mar 2018 07:24:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=iLfB7MP7hSE73HMH0CWE7vw03EYawaCARmpZPEgpHFk=; b=lR22oTB/wP6HY8grTQ8E9Hf+z4cFtAspTZ6/dCxIMt0rvxD6d2fH9njl6XGUQ5SbWk AoLeFew0AVGlLeLK5cakFbrMQGvn3M1ITyWXAFDC7wo/sCO4zuFiah3gVTPDf4HY/hRQ e6R8pd41NhGE84g++I4sa1fobHom3hMs2EcRYfPW10nZJSvJp/OcxEGgF1u3wkCBfSVH /30Wbi+3q7UwXB7Myj9II3jhOc7P4+DF+iVo6ajx6cf/cRfDwEmR+FHaAH/e06v3U2i9 B8QO7yc3UVaoN2+hWQX00FF74dKe7EQBA87vgqeRKGRrzCcpH5lw9hkWXVjL0C2RXq9G zKdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=iLfB7MP7hSE73HMH0CWE7vw03EYawaCARmpZPEgpHFk=; b=bd8x+J1/QGspva0y4wt43SHP8+V4pOtalOlAXJo/lKHe75cV/0YpQLsY+sng+NXAlE q2Lnma3fjU2h4rnn5Tuus8KEzLqomA5EBuuUfft/22H+SH6waIjd56dFOeiKnmkslCtO qI0A475CTLG2vkt98UBEGPNuq0axr3Zh83LtGAeX7ULRVB+WhezhS0Nzd+JjX2o2Ozn9 CtmN6VmSEBKKpvcHOmhZX6ljcWMDYZD3DfvLO1sjk7rNRNgbZ3rW8PXtvG9u1lqqajbE ti+Ep2dvsNIINXlzYcSqFQ1ugdhHbdPgiMxjqa4khRC/ShlHJ1WqyQLiPyoo8SWVL8cr GdpQ== X-Gm-Message-State: AElRT7E5y61WcE7WbuZNZEDW0/XRUi4wJUG0GXfA5NexO0OqaK+KARbh HO5yOAG1HDLWDXS74rQTmQGBJDGj X-Google-Smtp-Source: AIpwx4/lSnuENMPaomj+rRg97WouZCGOl82DyXU3637jsmV6qBQZqzcYmTNOiCs4NV1DnbO7lvlqYA== X-Received: by 10.223.164.26 with SMTP id d26mr1961250wra.199.1522506255132; Sat, 31 Mar 2018 07:24:15 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:14 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:01 +0200 Message-Id: <20180331142407.9522-7-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 07/13] pkg-generic: add a subdirectory to the DL_DIR X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" With all the previous changes, we are now ready to add a subdirectory to the DL_DIR. The structure will now be DL_DIR/PKG_NAME/{FILE1,FILE2} This is needed for multiple reasons: - Avoid patches with name like SHA1.patch laying flat in DL_DIR, which makes it hard to know to which packages they apply - Avoid possible collisions if two releases have the same name (e.g: v01.tar) - Allow the possibility to handle a git cache per package in the newly created subdirectory. Signed-off-by: Maxime Hadjinlian Reviewed-by: "Yann E. MORIN" --- package/pkg-generic.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 7587324368..b1342228c8 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -428,7 +428,7 @@ endif $(2)_BASE_NAME = $$(if $$($(2)_VERSION),$(1)-$$($(2)_VERSION),$(1)) $(2)_RAW_BASE_NAME = $$(if $$($(2)_VERSION),$$($(2)_RAWNAME)-$$($(2)_VERSION),$$($(2)_RAWNAME)) -$(2)_DL_DIR = $$(DL_DIR) +$(2)_DL_DIR = $$(DL_DIR)/$$($(2)_RAWNAME) $(2)_DIR = $$(BUILD_DIR)/$$($(2)_BASE_NAME) ifndef $(2)_SUBDIR From patchwork Sat Mar 31 14:24:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893798 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="cIFMKC0k"; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D13J467pz9rxs for ; Sun, 1 Apr 2018 01:25:00 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 602BE8A196; Sat, 31 Mar 2018 14:24:58 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hFkdNgD-DJku; Sat, 31 Mar 2018 14:24:52 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 6B5528A18B; Sat, 31 Mar 2018 14:24:26 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id 868AB1C16D3 for ; Sat, 31 Mar 2018 14:24:18 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 817938AE82 for ; Sat, 31 Mar 2018 14:24:18 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2yFj+TUBRTWS for ; Sat, 31 Mar 2018 14:24:18 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f194.google.com (mail-wr0-f194.google.com [209.85.128.194]) by hemlock.osuosl.org (Postfix) with ESMTPS id BFC738AAA7 for ; Sat, 31 Mar 2018 14:24:17 +0000 (UTC) Received: by mail-wr0-f194.google.com with SMTP id 80so10056735wrb.2 for ; Sat, 31 Mar 2018 07:24:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=qsjUOBR8kxz9CQwvHi4IA6jvgliUPyTOXQhcnFgMPcg=; b=cIFMKC0kUSjum9AVaAIaJK2+7aViaKErnwOwsCFJUpJlEk3xKGOeYj0v3nwE5ChYKo j0+QyIzcjRV7Y4umGdTvs1Ua9AYGjJyvhcyGVpulo9d8uaLHBkebeNv55VQAaa6yma8Q V2SfMIYEFiQGPdYY9/hbFELtk7u3g1OMeYq+XxHoyMRziLXAei38vtVxwADUOHs8/yl6 ashcoZwX3nfcm31wVVBR4TH0qxVQKu4CS0v3gZTAD8Y6uD7wH59W6LCX/uTTN0Mqb9va pHxL+72HmYTr3QVtoFwCXe20Mh1sK/L0V5F9JObcVfNn2R7/0op7yr9zkrYrSjYboF6b ofRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=qsjUOBR8kxz9CQwvHi4IA6jvgliUPyTOXQhcnFgMPcg=; b=H41e4HZB4c6ADsC1jDu3CEKEkLshSt8DIHDdLqgyX+D+QiNSTS7DCz9ImWX/nfEnfZ Ufmn7JNgZVRIgZe93PtVZ//j57QPOqCBf75CBxG31oYCfDtPTmb35YbrEzgoTFPHcov6 kXakDhFVkBAMMrlljB+i3/k+tspQ8dxzUR57n0Sy33JY8alNcQ6CgVguSb39kYQ+o+zm ry5jGsNTCiRr8gMLyR68SXMqIrpo+gRR93b/7MpLe1eyVLWtpuQ0x8MYs76TFsmFijOC TkvWHcsZTMZKQxqoRgVSs5MDX1H+wbU5XsM6Hoaom7SvjVUjYS/6aVoiFlbViWchx70z wYzA== X-Gm-Message-State: AElRT7EEkfmFqZaLrRRcpVjzeqKxUvQ/8NnGcwH2MwfJs9qahB+U0YBL saiSnsutHYDi/INxhxYoWD8MXwVj X-Google-Smtp-Source: AIpwx49L1unbHdFQY6LrU/8enboFKZaC21eRxz24yvAlamH9kFfNyMV9zUPWUjpldXMfZeAvfuxYrg== X-Received: by 10.223.135.140 with SMTP id b12mr1962336wrb.80.1522506255916; Sat, 31 Mar 2018 07:24:15 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:15 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:02 +0200 Message-Id: <20180331142407.9522-8-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 08/13] pkg-download: support new subdir for mirrors X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Since we introduced subdirectory to the DL_DIR, we need to support them in the PRIMARY and BACKUP mirror as they evolve to the new tree structure. We check first the new URI (with the subdir), and in case of failure, we go check without. By checking both URIs, we ensure that old mirror are usable. Signed-off-by: Maxime Hadjinlian Reviewed-by: "Yann E. MORIN" --- package/pkg-download.mk | 2 ++ 1 file changed, 2 insertions(+) diff --git a/package/pkg-download.mk b/package/pkg-download.mk index 0717943bb0..23f3403098 100644 --- a/package/pkg-download.mk +++ b/package/pkg-download.mk @@ -75,6 +75,7 @@ export BR_NO_CHECK_HASH_FOR = ifneq ($(call qstrip,$(BR2_PRIMARY_SITE)),) DOWNLOAD_URIS += \ + -u $(call getschemeplusuri,$(BR2_PRIMARY_SITE)/$(notdir $($(PKG)_DL_DIR)),urlencode) \ -u $(call getschemeplusuri,$(BR2_PRIMARY_SITE),urlencode) endif @@ -83,6 +84,7 @@ DOWNLOAD_URIS += \ -u $($(PKG)_SITE_METHOD)+$(dir $(1)) ifneq ($(call qstrip,$(BR2_BACKUP_SITE)),) DOWNLOAD_URIS += \ + -u $(call getschemeplusuri,$(BR2_BACKUP_SITE)/$(notdir $($(PKG)_DL_DIR)),urlencode) \ -u $(call getschemeplusuri,$(BR2_BACKUP_SITE),urlencode) endif endif From patchwork Sat Mar 31 14:24:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893794 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="FaJuTxkP"; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D12s5Qf5z9rxs for ; Sun, 1 Apr 2018 01:24:37 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 687338AEB3; Sat, 31 Mar 2018 14:24:33 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aOi7L4-CTMLt; Sat, 31 Mar 2018 14:24:31 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 6D8AE8AEB5; Sat, 31 Mar 2018 14:24:30 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 214311C16D3 for ; Sat, 31 Mar 2018 14:24:22 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 1AC0E8A152 for ; Sat, 31 Mar 2018 14:24:22 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SXEu2rYp1Ukh for ; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f196.google.com (mail-wr0-f196.google.com [209.85.128.196]) by whitealder.osuosl.org (Postfix) with ESMTPS id 780E18A181 for ; Sat, 31 Mar 2018 14:24:18 +0000 (UTC) Received: by mail-wr0-f196.google.com with SMTP id f14so10016586wre.8 for ; Sat, 31 Mar 2018 07:24:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=ygPiKzpy190AK2Pg6CcidBwPDB+Ux4qhPkrQydLL8qA=; b=FaJuTxkPkP4HEcNQPLNZ0+Xn372vSVHqWwqJwkdEMjE1v0b5saz8G6jRtgqSqYcerv ONflhxOZqVdN+oNuTWPtOUBQgEBC0GRW0NUHZsSb41HIXoYMtgfSun9OJ8b6om0tjKIS HBqnkC15W5i3Ocn/hv9anC1UDQpBGpFerW6hsvonFugKBT44xCJiOPhtfr88v1evbiMe yIBWFQLwIwOn9WDthZarcG4bA2lYssaaGn5nhggWNhoSxVQXJjdeQWZx4gAcrIWLv/Fu DL/4G3gPyHUdFAlQtE58eCpuzpBjIjQCwNP3d63cia4aj6/oVdUEPdTx8GXa+PO1DLxc P6eg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=ygPiKzpy190AK2Pg6CcidBwPDB+Ux4qhPkrQydLL8qA=; b=FC0kiWcXMy7s1yJ9IsZu9bVk0mlwpueL0HRYpSmZ6HNIOGihxSrAKl8XEZOsR+D64L 1vDQJSIz6K5BNv83JLSuVwFak5AKQE7GGYJP934E3CAx2S7YkLK+1oD5ZYMH3R91G4f3 96sjiBQgoxvRhONCFJM/+16VbtFz6CC/7hx9jXFRF632YeNZZQ01Sq9/hv4EP6kmcym7 fbG9EYhQKxWPGLTIoP1LWd5pYtX2ZrteLSRZWj1vQkQZNL8381UQPUyzs7o048I+uEJU Iftd14F3K04oZcCgbkexsnLM9zu5CuYcocEBQibtCXIu1Bllg7LMgapM0EsdAKqFZG0V oIDw== X-Gm-Message-State: AElRT7FCuX7kVeWXknacjBItZALYNF6tLkzucNOqOC4WBdDbs1NxxUjt GXILtoOsrv1poXn8AJ2+riXVzuYd X-Google-Smtp-Source: AIpwx4+jQHbOym+TlgSz4ZNcynmZICk7JbBcC7I+PsDT184golw09gmIyyESTseOcPij1JViDQjLnw== X-Received: by 10.223.175.211 with SMTP id y19mr2159943wrd.139.1522506256596; Sat, 31 Mar 2018 07:24:16 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:16 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:03 +0200 Message-Id: <20180331142407.9522-9-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 09/13] pkg-generic: introduce _SAME_SOURCE_AS X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" This per package variable can be used to specify that a package shares the same sources as another package. The use case here is for example linux-headers and linux, which share the same sources (because they are the same upstream project), so we don't want to download twice the kernel, nor store it multiple times either. Make will automatically try to help by introducing leading and trailing spaces when replacing a line-continuation '\', so we need to call $(strip) on the variable. Signed-off-by: Maxime Hadjinlian --- package/pkg-generic.mk | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index b1342228c8..f3829e9912 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -428,7 +428,9 @@ endif $(2)_BASE_NAME = $$(if $$($(2)_VERSION),$(1)-$$($(2)_VERSION),$(1)) $(2)_RAW_BASE_NAME = $$(if $$($(2)_VERSION),$$($(2)_RAWNAME)-$$($(2)_VERSION),$$($(2)_RAWNAME)) -$(2)_DL_DIR = $$(DL_DIR)/$$($(2)_RAWNAME) +$(2)_DL_DIR = $$(strip $$(if $$($(2)_SAME_SOURCE_AS), \ + $$($$(call UPPERCASE,$$($(2)_SAME_SOURCE_AS))_DL_DIR), \ + $$(DL_DIR)/$$($(2)_RAWNAME))) $(2)_DIR = $$(BUILD_DIR)/$$($(2)_BASE_NAME) ifndef $(2)_SUBDIR From patchwork Sat Mar 31 14:24:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893799 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="QhEy5yxX"; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D13K4rc1z9s2R for ; Sun, 1 Apr 2018 01:25:01 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 1AFA58A18C; Sat, 31 Mar 2018 14:25:00 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id bk3czrre0bFh; Sat, 31 Mar 2018 14:24:56 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 430188A19B; Sat, 31 Mar 2018 14:24:32 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 36F731C16D3 for ; Sat, 31 Mar 2018 14:24:23 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 310B18A152 for ; Sat, 31 Mar 2018 14:24:23 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PuJqjQkjUzlY for ; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by whitealder.osuosl.org (Postfix) with ESMTPS id 166ED8A183 for ; Sat, 31 Mar 2018 14:24:19 +0000 (UTC) Received: by mail-wr0-f193.google.com with SMTP id c24so10035322wrc.6 for ; Sat, 31 Mar 2018 07:24:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=nfJo/5OiRWWi9M58WY6b2uBd/cEUo3+ZpYMr35oY02s=; b=QhEy5yxXp6Otn5FSqhg8P0Mzdx0VsRk74FtTcpluiJDhOyeUMJeY6BryhPUcVasLGJ 4v3xOnc7hkqr++y8Xmk311dDUEUXBRHeznsEyB909eLZbePvKoO4fOyhj8Ro5zfanZhm FE4YpWIcocCH40iCxMT3TR2jliJqfqsr4OK8DX8zgbZBgMKulXukgxG5loWovudl3rqw eKUcMILxaegFDrPxXtbLe/zECFptPOWPvHQPyT6teiOVPG//jk//dXBFVSbcHhkFXIyO Uh1kK8YbEEHiCSfxMO5tVaTIc4oQNRNbLf1918S2SGpaQnLfnjs/LU9+3bNAeUwfjvol 2F9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=nfJo/5OiRWWi9M58WY6b2uBd/cEUo3+ZpYMr35oY02s=; b=h7O+ZFqJZjEVipbOJKDDn059gdYO0W7xdwO8bimU0ZxJ4np8u7FEwm45F2SpnMwXmm fBbZhE9PLszfM/bnd8uQWJaCosxj2f4zt4VLkjZ7PxzOwkuF740dkQe5nOPZgrw21ONh xh/Mfg0W6JF8BTMDuOnXnZZUDk4yF7cUSLW8rV6Pe8ywSI+7V6QR8db6CjZs9gzai1Ca kc6c8PtGcTV1RxvGv4vPBiDmJnbB4po+6q136GdPIb/I8Q7e5x2CNmSwpyYPmXlRoUEp DI3+Uyv09y9VdZ1Svpo4y7qwLC8cuZykpN9kVyiSsSNWDFNHo/Ge4khYbRHJdVUMqOxa mBAw== X-Gm-Message-State: AElRT7GKJFqteK6axBJtBFSVLWk2M1Uj04foGkN3pBl4ndPWdtoUEcrS pPSEc00gb37qvnGMFAHuEZQ7csGj X-Google-Smtp-Source: AIpwx482Mt4UKfjGla5U6LBrTBb1Oy5umcQofb7mOZFTrYgMST+6b0mgrJAvvvW3Xaq31xejohr+0A== X-Received: by 10.223.191.7 with SMTP id p7mr2200161wrh.147.1522506257202; Sat, 31 Mar 2018 07:24:17 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:16 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:04 +0200 Message-Id: <20180331142407.9522-10-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 10/13] package: share downloaded files for big packages X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Petazzoni , "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" From: "Yann E. MORIN" Signed-off-by: "Yann E. MORIN" Cc: Maxime Hadjinlian Cc: Thomas Petazzoni --- package/gcc/gcc-initial/gcc-initial.mk | 5 +++++ package/linux-headers/linux-headers.mk | 3 +++ package/mesa3d-headers/mesa3d-headers.mk | 1 + 3 files changed, 9 insertions(+) diff --git a/package/gcc/gcc-initial/gcc-initial.mk b/package/gcc/gcc-initial/gcc-initial.mk index c476b2faeb..07da50afa8 100644 --- a/package/gcc/gcc-initial/gcc-initial.mk +++ b/package/gcc/gcc-initial/gcc-initial.mk @@ -8,6 +8,11 @@ GCC_INITIAL_VERSION = $(GCC_VERSION) GCC_INITIAL_SITE = $(GCC_SITE) GCC_INITIAL_SOURCE = $(GCC_SOURCE) +# We do not have a 'gcc' package per-se; we only have two incarnations, +# gcc-initial and gcc-final. gcc-initial is just am internal step that +# users should not care about, while gcc-final is the one they shall see. +HOST_GCC_INITIAL_SAME_SOURCE_AS = host-gcc-final + HOST_GCC_INITIAL_DEPENDENCIES = $(HOST_GCC_COMMON_DEPENDENCIES) HOST_GCC_INITIAL_EXCLUDES = $(HOST_GCC_EXCLUDES) diff --git a/package/linux-headers/linux-headers.mk b/package/linux-headers/linux-headers.mk index f1e3790608..6f4071c61a 100644 --- a/package/linux-headers/linux-headers.mk +++ b/package/linux-headers/linux-headers.mk @@ -82,6 +82,9 @@ endif endif # ! BR2_KERNEL_HEADERS_AS_KERNEL +# linux-headers really is the same as the linux package +LINUX_HEADERS_SAME_SOURCE_AS = linux + LINUX_HEADERS_LICENSE = GPL-2.0 LINUX_HEADERS_LICENSE_FILES = COPYING diff --git a/package/mesa3d-headers/mesa3d-headers.mk b/package/mesa3d-headers/mesa3d-headers.mk index b48d965d8a..39a25270db 100644 --- a/package/mesa3d-headers/mesa3d-headers.mk +++ b/package/mesa3d-headers/mesa3d-headers.mk @@ -15,6 +15,7 @@ endif MESA3D_HEADERS_VERSION = 18.0.0 MESA3D_HEADERS_SOURCE = mesa-$(MESA3D_HEADERS_VERSION).tar.xz MESA3D_HEADERS_SITE = https://mesa.freedesktop.org/archive +MESA3D_HEADERS_SAME_SOURCE_AS = mesa3d MESA3D_HEADERS_LICENSE = MIT, SGI, Khronos MESA3D_HEADERS_LICENSE_FILES = docs/license.html From patchwork Sat Mar 31 14:24:05 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893797 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.136; helo=silver.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="sWuASHF5"; dkim-atps=neutral Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D13B6FMNz9rxs for ; Sun, 1 Apr 2018 01:24:54 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 36DFC309B5; Sat, 31 Mar 2018 14:24:51 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eBN5S7cFC-Mt; Sat, 31 Mar 2018 14:24:48 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 60ADB30999; Sat, 31 Mar 2018 14:24:28 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 870E71C16D3 for ; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 80C978938F for ; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id G0Jgg_p_2MOk for ; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wm0-f65.google.com (mail-wm0-f65.google.com [74.125.82.65]) by fraxinus.osuosl.org (Postfix) with ESMTPS id C169589394 for ; Sat, 31 Mar 2018 14:24:19 +0000 (UTC) Received: by mail-wm0-f65.google.com with SMTP id x4so20470409wmh.5 for ; Sat, 31 Mar 2018 07:24:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=sg9PH8MQ6DAvmTwDmsdyM12o9sTt9bAhN6m0wWw0jUM=; b=sWuASHF5H/aJoV/B7FkXdyzcM7WI6+1wzsaT53otLgkfDF4qj8dbYjktkN9qsqOLVb k5ehcSGce8/OZOQUR/E2yJtLond7lRHOraEpkyJkz2wE3fZObmTz38QmzRwSi7ZJkzvJ qKJLIQZ4JJlZ7JZRnU2Wc9Nm++xSGD/MWSwqSnwo+3Hw1JmYX5qYusc5o5uSf8cqiUxZ RBgkyEo/h100FtZfzpyu4hTr1lj7471OwAQcDH+6F92kGQ74bRYIvGkXdy981TFbOuzA OgABhrqa8+fmwERwF+mnILtXBkbO/lhx7pSRRMC+Z3HofOyRwbhQ9d2bt81Q6Pga+J6j xZ1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=sg9PH8MQ6DAvmTwDmsdyM12o9sTt9bAhN6m0wWw0jUM=; b=V/M+isb0RNYr/u6wAdyR3fJ6bF79XMVP2XQd49offXLrnliyrOlk4C6Lxpj+GZaOEu AsHahH4ztt+0Rvx9B2MTS+4Y7pTPOlrtaFWyRZ5wgZhUwSToOv29WfBY4puE2Mb5jgtN uFQ+xttWGfc2nzs7LsKfnRc472NpE2tefKXoZ0qBn9S+h4ljt55CN1Bx57Jrhm8o19Ml X9cfw2ndQVukBLbiVIuGDAFBn+KwTlKTr0VrkkmNBQcm3WnpKF/9x/4/4cWLDBc37GBH 2acjTPcozyjM4cISMirva6UeJtBVcJitRmcCFPMsVkGEPR3Aa4hio0YuucitGN8RuZat Tbpw== X-Gm-Message-State: AElRT7G2IWiEhNo9AxKwwFicYsnkbHBfGiRK1F2k8BqK4Rj+NSa5eZ9U y8HGISPmUl21h+OyWmjNh6vUGM7C X-Google-Smtp-Source: AIpwx4+2uDLvdZKRvcsmE/DQmAKfQHmVRTDuQA89+0Wu2mHfaTsYkfLHYe8Fc9xBlv5BWHLuKMjnQg== X-Received: by 10.28.5.198 with SMTP id 189mr4575299wmf.155.1522506257844; Sat, 31 Mar 2018 07:24:17 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:17 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:05 +0200 Message-Id: <20180331142407.9522-11-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 11/13] help/manual: update help about the new $(LIBFOO_DL_DIR) X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Signed-off-by: Maxime Hadjinlian --- Config.in | 3 +++ docs/manual/adding-packages-generic.txt | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Config.in b/Config.in index a74b24ae45..55b6e5e2a1 100644 --- a/Config.in +++ b/Config.in @@ -200,6 +200,9 @@ config BR2_DL_DIR If the Linux shell environment has defined the BR2_DL_DIR environment variable, then this overrides this configuration item. + The directory is organized with a subdirectory for each package. + Each package has its own $(LIBFOO_DL_DIR) variable that can be used + to find the correct path. The default is $(TOPDIR)/dl diff --git a/docs/manual/adding-packages-generic.txt b/docs/manual/adding-packages-generic.txt index 9d1428ad40..a7578a782d 100644 --- a/docs/manual/adding-packages-generic.txt +++ b/docs/manual/adding-packages-generic.txt @@ -263,7 +263,7 @@ information is (assuming the package name is +libfoo+) : the file using this URL. Otherwise, Buildroot will assume the file to be downloaded is located at +LIBFOO_SITE+. Buildroot will not do anything with those additional files, except download them: it will - be up to the package recipe to use them from +$(DL_DIR)+. + be up to the package recipe to use them from +$(LIBFOO_DL_DIR)+. * +LIBFOO_SITE_METHOD+ determines the method used to fetch or copy the package source code. In many cases, Buildroot guesses the method @@ -554,8 +554,8 @@ In the action definitions, you can use the following variables: * +$(@D)+, which contains the directory in which the package source code has been uncompressed. -* +$(DL_DIR)+ contains the path to the directory where all the downloads made - by Buildroot are stored. +* +$(LIBFOO_DL_DIR)+ contains the path to the directory where all the downloads + made by Buildroot are stored. * +$(TARGET_CC)+, +$(TARGET_LD)+, etc. to get the target cross-compilation utilities From patchwork Sat Mar 31 14:24:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893792 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="djK01p76"; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D12p0Ph4z9rxs for ; Sun, 1 Apr 2018 01:24:33 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 502C08AEC8; Sat, 31 Mar 2018 14:24:31 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jo2XjzF9Z1oZ; Sat, 31 Mar 2018 14:24:29 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id A515A8AC22; Sat, 31 Mar 2018 14:24:29 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 3CBB11C16D3 for ; Sat, 31 Mar 2018 14:24:21 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 33A308938F for ; Sat, 31 Mar 2018 14:24:21 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O1pETZM5DSkP for ; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wm0-f47.google.com (mail-wm0-f47.google.com [74.125.82.47]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 6F47C8938A for ; Sat, 31 Mar 2018 14:24:20 +0000 (UTC) Received: by mail-wm0-f47.google.com with SMTP id h76so19228660wme.4 for ; Sat, 31 Mar 2018 07:24:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=/cgqDEWbv3zFBYuAIsaUNuPGNV4yHTygxNYODjRZzKg=; b=djK01p76hY8fb3cM2BEKhnQ+aMnrCHlhnHYniSydx60tTuZLbP3lck+Xiog1cweSNy QJ4u7wehSIE+Cn31I2oJwmn2lbYqrVOXJDgMF5GGR5usiBxaSiJW5CRtpqSDw1zeH07R 30rxHtpAUwwHCf3pXXEX5VW0umwcVDXnJAJ4k9CrLf0j5gQR5NRVRtZi4/Cj/WBgOuGe 4fvWWbSCKmnexbbuiC4eVlMJCvVuHbxbUOHGptovhs8iUh9bzAQDRHmHwQDT5Z88cJrF xFQhGWjrzIIQQvl5ECKstSgqY/0uBP0Pqhsc2Ogw2kmtGhbLkdvcVLxLEYLwyTAqmIxh jIcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=/cgqDEWbv3zFBYuAIsaUNuPGNV4yHTygxNYODjRZzKg=; b=gOtXEftRk6FW+n9qMUeUyBQb8xL1wSX+cU1Epn8Do3HbYownlAUctjxqHRAjuJJcnj 3do2TayyNgfmXDGaXlrvf/WDOElgFXRMJuvv+QQJ2KG4/GuVgIp5g2tThW7QrRrLdRiQ b7WmvH0e0I1xm+mzMZ8gk6ucnLkpODsi6pXt4ya0SlhtQrSuCGTKtA48LJxm589HAahO rO53K9Qeil/swljwibv2I/HN8042eIgUefEdCFTUWY5CT3uu/UVVWLAernCWTn/et6pY N4Lax1vwlT7uL4bY8FwoYSlohyP3SuCgGLzMmP1mj7R2M1lQe3f1LTY6a0Z308GGJ7s+ eusQ== X-Gm-Message-State: AElRT7FuOhHIAKXYq0NYOgTnTozh689j7+0DWXYBsnodessdLNWC1dkM C5n3aJLF/5aX6md/OcK/vvZ2OqO/ X-Google-Smtp-Source: AIpwx49BMIXtf7y+ncmKEm1EaK4wCKRSNfcdN798sVrdHiE9qD/oil1a3leSiwt4n+GhxNGQQAk6qA== X-Received: by 10.28.213.139 with SMTP id m133mr1069002wmg.144.1522506258524; Sat, 31 Mar 2018 07:24:18 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:18 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:06 +0200 Message-Id: <20180331142407.9522-12-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 12/13] download: add flock call before dl-wrapper X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" In order to introduce the cache mechanisms, we need to have a lock on the $(LIBFOO_DL_DIR), otherwise it would be impossible to do parallel download (a shared DL_DIR for two buildroot instances). To make sure the directory exists, the mkdir call has been removed from the dl-wrapper and put in the infrastructure. Signed-off-by: Maxime Hadjinlian --- package/pkg-download.mk | 4 +++- support/download/dl-wrapper | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package/pkg-download.mk b/package/pkg-download.mk index 23f3403098..dff52007e6 100644 --- a/package/pkg-download.mk +++ b/package/pkg-download.mk @@ -19,6 +19,7 @@ SSH := $(call qstrip,$(BR2_SSH)) export LOCALFILES := $(call qstrip,$(BR2_LOCALFILES)) DL_WRAPPER = support/download/dl-wrapper +FLOCK = flock $($(PKG)_DL_DIR)/ # DL_DIR may have been set already from the environment ifeq ($(origin DL_DIR),undefined) @@ -91,7 +92,8 @@ endif define DOWNLOAD $(Q)$(if $(filter bzr cvs hg svn,$($(PKG)_SITE_METHOD)),BR_NO_CHECK_HASH_FOR=$(notdir $(1));) \ - $(EXTRA_ENV) $(DL_WRAPPER) \ + $(Q)mkdir -p $($(PKG)_DL_DIR)/ + $(EXTRA_ENV) $(FLOCK) $(DL_WRAPPER) \ -c $($(PKG)_DL_VERSION) \ -f $(notdir $(1)) \ -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ diff --git a/support/download/dl-wrapper b/support/download/dl-wrapper index 49caf3717b..67e9742767 100755 --- a/support/download/dl-wrapper +++ b/support/download/dl-wrapper @@ -50,7 +50,6 @@ main() { if [ -z "${output}" ]; then error "no output specified, use -o\n" fi - mkdir -p "$(dirname "${output}")" # If the output file already exists and: # - there's no .hash file: do not download it again and exit promptly From patchwork Sat Mar 31 14:24:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Hadjinlian X-Patchwork-Id: 893793 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="G9WzYl+i"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40D12q4bFXz9rxs for ; Sun, 1 Apr 2018 01:24:35 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 106A989394; Sat, 31 Mar 2018 14:24:34 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4wzEME4BPdPy; Sat, 31 Mar 2018 14:24:31 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id A2AC689395; Sat, 31 Mar 2018 14:24:31 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id A8D9E1C16D3 for ; Sat, 31 Mar 2018 14:24:22 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id A63ED25F2A for ; Sat, 31 Mar 2018 14:24:22 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JPm83aYe5Ip0 for ; Sat, 31 Mar 2018 14:24:21 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wm0-f68.google.com (mail-wm0-f68.google.com [74.125.82.68]) by silver.osuosl.org (Postfix) with ESMTPS id 122DD25D87 for ; Sat, 31 Mar 2018 14:24:21 +0000 (UTC) Received: by mail-wm0-f68.google.com with SMTP id x4so20470447wmh.5 for ; Sat, 31 Mar 2018 07:24:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=m8kLcTP5gJRqueCIWkgFFUfmpT67G5ke1601c+ZvDi8=; b=G9WzYl+ioTRjrlio1WjMJBK/X/orM0J+3/TobUmnO2UGUCpAK8eN4ajFsWGMRDrCrj icprI+o6cSMxI0zHFUk02MfobawPZ4IwpgM2lNqAWJQwhQK7J+2QJAwph4zlsk5AoUMH 9faehHhz8azeOUn/J44U6pqzG+z3HhNbsn440s3xrKTOCuO31L/5iZkABzbM+336okRi HPriQ8ybzDKoMxMxRok6Kkq5b+33GVKoqBkJA/3e8RBeZ93HZg1uemiJroP87U4ZUwC0 GmVrf1FKVNbUgNLVQul6yoDFQFXut1M5ORDKk30tlMcwRLzg5DJaW8NThFaDW8C5upnl yDNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=m8kLcTP5gJRqueCIWkgFFUfmpT67G5ke1601c+ZvDi8=; b=BSVF+nTrEVOVhFzm0VshxdJMYUYLew3QgTtfKCK9Uujl9Td34NziSWdNWAlXyPvbbP Ux2p2Gype0KEy0ZjV6vwjNzNR3JgXjj2EI+2Fu4FzvLXmDonvIZLSzyPiY0oE7jmVWS5 +fJTcKQPQH6pr2ELP/WFCsDAO3lB4xhaelUyzGvCi4DuRl7k0PIqvd0ZmTRak13oSNZV jeZk8jjwXqH4VH1ANGScca2rmGA9sHr5laQnWVmHa9CXG/K7LVquI/dL1uM/SxEuxpp3 jKwy6CBfoGn1AM6HrhvSR7p9Uwb/lKegUBt3msRtaPra8gDj3Tr0Aq6guUitaZNVlQgI 5R0w== X-Gm-Message-State: AElRT7EdwOT3WWVsXMFlOx9meK60H9UkxF9Xgva6M/aroKxjkaqODV8M 6g+F9kIWXN76ovqOfzuCI1WHCekW X-Google-Smtp-Source: AIpwx496594aaWP0dxbmpOzmETKV10C+mAKWYezapoXoS2PjVKSNi8/rulHQpjrtptWmANzhZm9yMA== X-Received: by 10.28.137.68 with SMTP id l65mr4993680wmd.57.1522506259175; Sat, 31 Mar 2018 07:24:19 -0700 (PDT) Received: from cerise.online.net ([195.154.228.195]) by smtp.gmail.com with ESMTPSA id o88sm11394409wrb.44.2018.03.31.07.24.18 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 31 Mar 2018 07:24:18 -0700 (PDT) From: Maxime Hadjinlian To: buildroot@buildroot.org Date: Sat, 31 Mar 2018 16:24:07 +0200 Message-Id: <20180331142407.9522-13-maxime.hadjinlian@gmail.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> References: <20180331142407.9522-1-maxime.hadjinlian@gmail.com> Subject: [Buildroot] [v3 13/13] download: git: introduce cache feature X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . Morin" , Maxime Hadjinlian MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Now we keep the git clone that we download and generates our tarball from there. The main goal here is that if you change the version of a package (say Linux), instead of cloning all over again, you will simply 'git fetch' from the repo the missing objects, then generates the tarball again. This should speed the 'source' part of the build significantly. The drawback is that the DL_DIR will grow much larger; but time is more important than disk space nowadays. Signed-off-by: Maxime Hadjinlian --- v1 -> v2: - Fix bad regex in the 'transform' option of tar (found by Peter Seiderer) v2 -> v3: - Change git fetch origin to use the uri of the package instead of the name of the default remote 'origin' (Thomas Petazzoni) --- support/download/git | 70 ++++++++++++++++++++++++++++++---------------------- 1 file changed, 40 insertions(+), 30 deletions(-) diff --git a/support/download/git b/support/download/git index 58a2c6ad9d..301f7e792a 100755 --- a/support/download/git +++ b/support/download/git @@ -39,28 +39,34 @@ _git() { eval ${GIT} "${@}" } -# Try a shallow clone, since it is faster than a full clone - but that only -# works if the version is a ref (tag or branch). Before trying to do a shallow -# clone we check if ${cset} is in the list provided by git ls-remote. If not -# we fall back on a full clone. -# -# Messages for the type of clone used are provided to ease debugging in case of -# problems -git_done=0 -if [ -n "$(_git ls-remote "'${uri}'" "'${cset}'" 2>&1)" ]; then - printf "Doing shallow clone\n" - if _git clone ${verbose} "${@}" --depth 1 -b "'${cset}'" "'${uri}'" "'${basename}'"; then - git_done=1 - else - printf "Shallow clone failed, falling back to doing a full clone\n" +# We want to check if a cache of the git clone of this repo already exists. +git_cache="${BR2_DL_DIR}/${basename%%-*}/git" + +# If the cache directory already exists, don't try to clone. +if [ ! -d "${git_cache}" ]; then + # Try a shallow clone, since it is faster than a full clone - but that + # only works if the versionis a ref (tag or branch). Before trying to do a + # shallow clone we check if ${cset} is in the list provided by git + # ls-remote. If not we fall back on a full clone. + # + # Messages for the type of clone used are provided to ease debugging in + # case of problems + git_done=0 + if [ -n "$(_git ls-remote "'${uri}'" "'${cset}'" 2>&1)" ]; then + printf "Doing shallow clone\n" + if _git clone ${verbose} "${@}" --depth 1 -b "'${cset}'" "'${uri}'" "'${git_cache}'"; then + git_done=1 + else + printf "Shallow clone failed, falling back to doing a full clone\n" + fi + fi + if [ ${git_done} -eq 0 ]; then + printf "Doing full clone\n" + _git clone ${verbose} "${@}" "'${uri}'" "'${git_cache}'" fi -fi -if [ ${git_done} -eq 0 ]; then - printf "Doing full clone\n" - _git clone ${verbose} "${@}" "'${uri}'" "'${basename}'" fi -pushd "${basename}" >/dev/null +pushd "${git_cache}" >/dev/null # Try to get the special refs exposed by some forges (pull-requests for # github, changes for gerrit...). There is no easy way to know whether @@ -69,7 +75,7 @@ pushd "${basename}" >/dev/null # below, if there is an issue anyway. Since most of the cset we're gonna # have to clone are not such special refs, consign the output to oblivion # so as not to alarm unsuspecting users, but still trace it as a warning. -if ! _git fetch origin "'${cset}:${cset}'" >/dev/null 2>&1; then +if ! _git fetch "'${uri}'" "'${cset}:${cset}'" >/dev/null 2>&1; then printf "Could not fetch special ref '%s'; assuming it is not special.\n" "${cset}" fi @@ -86,20 +92,24 @@ if [ ${recurse} -eq 1 ]; then _git submodule update --init --recursive fi -# We do not want the .git dir; we keep other .git files, in case they -# are the only files in their directory. +# Generate the archive, sort with the C locale so that it is reproducible +# We do not want the .git dir; we keep other .git +# files, in case they are the only files in their directory. # The .git dir would generate non reproducible tarballs as it depends on # the state of the remote server. It also would generate large tarballs # (gigabytes for some linux trees) when a full clone took place. -rm -rf .git +find . -not -type d \ + -and -not -path "./.git/*" >"${BR2_DL_DIR}/${basename}.list" +LC_ALL=C sort <"${BR2_DL_DIR}/${basename}.list" >"${BR2_DL_DIR}/${basename}.list.sorted" -popd >/dev/null - -# Generate the archive, sort with the C locale so that it is reproducible -find "${basename}" -not -type d >"${basename}.list" -LC_ALL=C sort <"${basename}.list" >"${basename}.list.sorted" # Create GNU-format tarballs, since that's the format of the tarballs on # sources.buildroot.org and used in the *.hash files -tar cf - --numeric-owner --owner=0 --group=0 --mtime="${date}" --format=gnu \ - -T "${basename}.list.sorted" >"${output}.tar" +tar cf - --transform="s/^\.$/${basename}/" \ + --numeric-owner --owner=0 --group=0 --mtime="${date}" --format=gnu \ + -T "${BR2_DL_DIR}/${basename}.list.sorted" >"${output}.tar" gzip -6 -n <"${output}.tar" >"${output}" + +rm -f "${BR2_DL_DIR}/${basename}.list" +rm -f "${BR2_DL_DIR}/${basename}.list.sorted" + +popd >/dev/null