Commit f4526c05 authored by Yann E. MORIN's avatar Yann E. MORIN Committed by Peter Korsgaard
Browse files

pkg-infra: move the cvs download helper to a script



Maintaining the download helpers in the Makefile has proved to be a bit
complex, so move it to a shell script.

Signed-off-by: default avatar"Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: default avatarSamuel Martin <s.martin49@gmail.com>
Signed-off-by: default avatarPeter Korsgaard <peter@korsgaard.com>
parent daf034f8
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@
# Download method commands
WGET := $(call qstrip,$(BR2_WGET)) $(QUIET)
export SVN := $(call qstrip,$(BR2_SVN))
CVS := $(call qstrip,$(BR2_CVS))
export CVS := $(call qstrip,$(BR2_CVS))
BZR := $(call qstrip,$(BR2_BZR))
export GIT := $(call qstrip,$(BR2_GIT))
HG := $(call qstrip,$(BR2_HG)) $(QUIET)
@@ -114,12 +114,9 @@ endef

define DOWNLOAD_CVS
	test -e $(DL_DIR)/$($(PKG)_SOURCE) || \
	(pushd $(DL_DIR) > /dev/null && \
	$(CVS) -z3 -d:pserver:anonymous@$(call stripurischeme,$(call qstrip,$($(PKG)_SITE))) \
		co -d $($(PKG)_BASE_NAME) -r :$($(PKG)_DL_VERSION) -P $($(PKG)_RAWNAME) && \
	$(TAR) czf $($(PKG)_SOURCE) $($(PKG)_BASE_NAME)/ && \
	rm -rf $($(PKG)_DL_DIR) && \
	popd > /dev/null)
	$(EXTRA_ENV) support/download/cvs $(call stripurischeme,$(call qstrip,$($(PKG)_SITE))) \
					  $($(PKG)_DL_VERSION) $($(PKG)_RAWNAME) \
					  $($(PKG)_BASE_NAME) $(DL_DIR)/$($(PKG)_SOURCE)
endef

# Not all CVS servers support ls/rls, use login to see if we can connect

support/download/cvs

0 → 100755
+27 −0
Original line number Diff line number Diff line
#!/bin/bash

# We want to catch any command failure, and exit immediately
set -e

# Download helper for cvs
# Call it with:
#   $1: cvs repo
#   $2: cvs revision
#   $3: package's name (eg. foobar)
#   $4: package's basename (eg. foobar-1.2.3)
#   $5: output file
# And this environment:
#   CVS       : the cvs command to call
#   BR2_DL_DIR: path to Buildroot's download dir

repo="${1}"
rev="${2}"
rawname="${3}"
basename="${4}"
output="${5}"

cd "${BR2_DL_DIR}"
${CVS} -z3 -d":pserver:anonymous@${repo}" \
       co -d "${basename}" -r ":${rev}" -P "${rawname}"
tar czf "${output}" "${basename}"
rm -rf "${basename}"