summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/libmakepkg/source.sh.in47
-rw-r--r--scripts/libmakepkg/source/bzr.sh.in5
-rw-r--r--scripts/libmakepkg/source/git.sh.in5
-rw-r--r--scripts/libmakepkg/source/hg.sh.in5
-rw-r--r--scripts/libmakepkg/source/svn.sh.in5
5 files changed, 30 insertions, 37 deletions
diff --git a/scripts/libmakepkg/source.sh.in b/scripts/libmakepkg/source.sh.in
index 198efd5e..2cb7dae1 100644
--- a/scripts/libmakepkg/source.sh.in
+++ b/scripts/libmakepkg/source.sh.in
@@ -59,26 +59,11 @@ download_sources() {
pushd "$SRCDEST" &>/dev/null
local proto=$(get_protocol "$netfile")
- case "$proto" in
- local)
- download_local "$netfile"
- ;;
- bzr)
- (( get_vcs )) && download_bzr "$netfile"
- ;;
- git)
- (( get_vcs )) && download_git "$netfile"
- ;;
- hg)
- (( get_vcs )) && download_hg "$netfile"
- ;;
- svn)
- (( get_vcs )) && download_svn "$netfile"
- ;;
- *)
- download_file "$netfile"
- ;;
- esac
+ if declare -f download_$proto > /dev/null; then
+ download_$proto "$netfile"
+ else
+ download_file "$netfile"
+ fi
popd &>/dev/null
done
@@ -92,22 +77,10 @@ extract_sources() {
for netfile in "${all_sources[@]}"; do
local file=$(get_filename "$netfile")
local proto=$(get_protocol "$netfile")
- case "$proto" in
- bzr)
- extract_bzr "$netfile"
- ;;
- git)
- extract_git "$netfile"
- ;;
- hg)
- extract_hg "$netfile"
- ;;
- svn)
- extract_svn "$netfile"
- ;;
- *)
- extract_file "$file"
- ;;
- esac
+ if declare -f extract_$proto > /dev/null; then
+ extract_$proto "$netfile"
+ else
+ extract_file "$file"
+ fi
done
}
diff --git a/scripts/libmakepkg/source/bzr.sh.in b/scripts/libmakepkg/source/bzr.sh.in
index 52193b58..d3f7db3b 100644
--- a/scripts/libmakepkg/source/bzr.sh.in
+++ b/scripts/libmakepkg/source/bzr.sh.in
@@ -29,6 +29,11 @@ source "$LIBRARY/util/pkgbuild.sh"
download_bzr() {
+ # abort early if parent says not to fetch
+ if declare -p get_vcs > /dev/null 2>&1; then
+ (( get_vcs )) || return
+ fi
+
local netfile=$1
local url=$(get_url "$netfile")
diff --git a/scripts/libmakepkg/source/git.sh.in b/scripts/libmakepkg/source/git.sh.in
index 130c11e1..497a668c 100644
--- a/scripts/libmakepkg/source/git.sh.in
+++ b/scripts/libmakepkg/source/git.sh.in
@@ -29,6 +29,11 @@ source "$LIBRARY/util/pkgbuild.sh"
download_git() {
+ # abort early if parent says not to fetch
+ if declare -p get_vcs > /dev/null 2>&1; then
+ (( get_vcs )) || return
+ fi
+
local netfile=$1
local dir=$(get_filepath "$netfile")
diff --git a/scripts/libmakepkg/source/hg.sh.in b/scripts/libmakepkg/source/hg.sh.in
index ae9aed3b..4984883e 100644
--- a/scripts/libmakepkg/source/hg.sh.in
+++ b/scripts/libmakepkg/source/hg.sh.in
@@ -29,6 +29,11 @@ source "$LIBRARY/util/pkgbuild.sh"
download_hg() {
+ # abort early if parent says not to fetch
+ if declare -p get_vcs > /dev/null 2>&1; then
+ (( get_vcs )) || return
+ fi
+
local netfile=$1
local dir=$(get_filepath "$netfile")
diff --git a/scripts/libmakepkg/source/svn.sh.in b/scripts/libmakepkg/source/svn.sh.in
index f98779f2..48f4f24e 100644
--- a/scripts/libmakepkg/source/svn.sh.in
+++ b/scripts/libmakepkg/source/svn.sh.in
@@ -29,6 +29,11 @@ source "$LIBRARY/util/pkgbuild.sh"
download_svn() {
+ # abort early if parent says not to fetch
+ if declare -p get_vcs > /dev/null 2>&1; then
+ (( get_vcs )) || return
+ fi
+
local netfile=$1
local fragment=${netfile#*#}