@@ -77,6 +77,10 @@ domainseparator=$(if $(1),$(1),/)
# branch). Before trying to do a shallow clone we check if $($(PKG)_DL_VERSION)
# is in the list provided by git ls-remote. If not we fall back on a full clone.
#
+# In any case we archive HEAD (and not $($(PKG)_DL_VERSION)): if VERSION is not
+# set the default branch is checked out and git-archive will fail if no refspec
+# is given. HEAD will continue to work if VERSION is set.
+#
# Messages for the type of clone used are provided to ease debugging in case of
# problems
define DOWNLOAD_GIT
@@ -88,7 +92,7 @@ define DOWNLOAD_GIT
(echo "Doing full clone" && \
$(GIT) clone --bare $($(PKG)_SITE) $($(PKG)_BASE_NAME))) && \
pushd $($(PKG)_BASE_NAME) > /dev/null && \
- $(GIT) archive --format=tar --prefix=$($(PKG)_BASE_NAME)/ $($(PKG)_DL_VERSION) | \
+ $(GIT) archive --format=tar --prefix=$($(PKG)_BASE_NAME)/ HEAD | \
gzip -c > $(DL_DIR)/$($(PKG)_SOURCE) && \
popd > /dev/null && \
rm -rf $($(PKG)_DL_DIR) && \
If a package's SITE_METHOD is set to git, but the VERSION is not set it fails to create a tar-ball, this patch is fixes this by always using HEAD as git-archive reference. HEAD will work in both cases: 1) if VERSION is set the clone's HEAD is VERSION, 2) if VERSION is not set the clone's HEAD is the default branch. Signed-off-by: Patrick Boettcher <Patrick.Boettcher@parrot.com> --- package/pkg-download.mk | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)