diff --git a/mxe.github.mk b/mxe.github.mk index ef91e29d..654381b0 100644 --- a/mxe.github.mk +++ b/mxe.github.mk @@ -10,10 +10,11 @@ # Release: # Manually uploaded distribution tarballs, especially useful for # autotools packages with generated sources. No universal convention, -# but generally: -# url = //releases/downloads//-.tar.[bz2,gz,xz,...] +# but the default is: +# url = //releases/downloads//-.[archive extension] | tar.gz # dir = - # +# # Tarball: # url = //tarball//output-file.tar.gz # dir = -- @@ -51,7 +52,7 @@ GITHUB_SHA_LENGTH := 7 # a version string and bypass `sort -V` # # Track releases - Release API -# GH_CONF := owner/repo/releases[/latest], tag prefix, tag suffix, tag filter-out, version separator +# GH_CONF := owner/repo/releases[/latest], tag prefix, tag suffix, tag filter-out, version separator, archive extension # updates can optionally use the latest non-prerelease with /latest # or manually specify version numbering based on: # /./version> @@ -85,6 +86,7 @@ GH_TAG_PREFIX = $(subst $(__gmsl_aa_magic),,$(word 1,$(GH_TAG_VARS))) GH_TAG_SUFFIX = $(subst $(__gmsl_aa_magic),,$(word 2,$(GH_TAG_VARS))) GH_TAG_FILTER = $(subst $(__gmsl_aa_magic),,$(word 3,$(GH_TAG_VARS))) GH_VERSION_SEP = $(subst $(__gmsl_aa_magic),,$(word 4,$(GH_TAG_VARS))) +GH_ARCHIVE_EXT = $(subst $(__gmsl_aa_magic),,$(word 5,$(GH_TAG_VARS))) define MXE_SETUP_GITHUB $(PKG)_GH_OWNER := $(GH_OWNER) @@ -96,7 +98,8 @@ define MXE_SETUP_GITHUB $(PKG)_TAG_SUFFIX := $(GH_TAG_SUFFIX) $(PKG)_TAG_FILTER := $(GH_TAG_FILTER) $(PKG)_VERSION_SEP := $(or $(GH_VERSION_SEP),.) - $(PKG)_FILE := $(or $($(PKG)_FILE),$(PKG)-$$(filter-out $$(PKG)-,$$($$(PKG)_TAG_PREFIX))$($(PKG)_VERSION)$$($$(PKG)_TAG_SUFFIX).tar.gz) + $(PKG)_ARCHIVE_EXT := $(or $(GH_ARCHIVE_EXT),.tar.gz) + $(PKG)_FILE := $(or $($(PKG)_FILE),$(PKG)-$$(filter-out $$(PKG)-,$$($$(PKG)_TAG_PREFIX))$($(PKG)_VERSION)$$($$(PKG)_TAG_SUFFIX)$$($$(PKG)_ARCHIVE_EXT)) $(if $(and $(GH_BRANCH),$(GH_TAG_VARS)),\ $(error $(newline) $(PKG) specifies both branch and tag variables $(newline))) $(if $(filter-out $(GH_APIS),$(GH_API))$(filter x,x$(GH_API)),\ @@ -114,7 +117,7 @@ endef define MXE_SETUP_GITHUB_RELEASES $(PKG)_SUBDIR := $(or $($(PKG)_SUBDIR),$($(PKG)_GH_REPO)-$(if $(call sne,v,$($(PKG)_TAG_PREFIX)),$($(PKG)_TAG_PREFIX))$(subst .,$($(PKG)_VERSION_SEP),$($(PKG)_VERSION))$($(PKG)_TAG_SUFFIX)) $(PKG)_TAG_REF := $(or $($(PKG)_TAG_REF),$($(PKG)_TAG_PREFIX)$(subst .,$($(PKG)_VERSION_SEP),$($(PKG)_VERSION))$($(PKG)_TAG_SUFFIX)) - $(PKG)_URL := $(or $($(PKG)_URL),https://github.com/$($(PKG)_GH_OWNER)/$($(PKG)_GH_REPO)/releases/download/$($(PKG)_TAG_REF)/$($(PKG)_SUBDIR).tar.gz) + $(PKG)_URL := $(or $($(PKG)_URL),https://github.com/$($(PKG)_GH_OWNER)/$($(PKG)_GH_REPO)/releases/download/$($(PKG)_TAG_REF)/$($(PKG)_SUBDIR)$($(PKG)_ARCHIVE_EXT)) $(PKG)_URL_2 := $(or $($(PKG)_URL_2),https://github.com/$($(PKG)_GH_OWNER)/$($(PKG)_GH_REPO)/archive/$($(PKG)_TAG_REF).tar.gz) $(PKG)_UPDATE := $(or $($(PKG)_UPDATE),$(call MXE_GET_GH_RELEASE,$($(PKG)_GH_OWNER)/$($(PKG)_GH_REPO)/releases$($(PKG)_GH_LATEST),$($(PKG)_TAG_PREFIX),$($(PKG)_TAG_SUFFIX),$(or $($(PKG)_TAG_FILTER),$(GITHUB_TAG_FILTER)),$($(PKG)_VERSION_SEP))) endef