diff options
author | Gleb Popov <arrowd@FreeBSD.org> | 2021-02-04 12:53:47 +0000 |
---|---|---|
committer | Gleb Popov <arrowd@FreeBSD.org> | 2021-02-04 12:53:47 +0000 |
commit | f72bdc3622ac6c62c2cee9a4f7a21c7af8623a44 (patch) | |
tree | 80b2009e4c2b11db3e646d83916e72091eeecc6b /Mk | |
parent | 2271be0bf7ea32f24ddfe00f64d93b51f03eae42 (diff) | |
download | ports-f72bdc3622ac6c62c2cee9a4f7a21c7af8623a44.tar.gz ports-f72bdc3622ac6c62c2cee9a4f7a21c7af8623a44.zip |
MFH: r560282, r560704
Uses/cabal.mk: More correct fix for EXTRACT_ONLY problem from r559679.
Uses/cabal.mk: Add "nodefault" argument.
Notes
Notes:
svn path=/branches/2021Q1/; revision=564023
Diffstat (limited to 'Mk')
-rw-r--r-- | Mk/Uses/cabal.mk | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/Mk/Uses/cabal.mk b/Mk/Uses/cabal.mk index 9b9b8e272a17..b60b1037bc6f 100644 --- a/Mk/Uses/cabal.mk +++ b/Mk/Uses/cabal.mk @@ -4,10 +4,13 @@ # # Feature: cabal # Usage: USES=cabal or USES=cabal:ARGS -# Valid ARGS: hpack +# Valid ARGS: hpack, nodefault # # hpack: The port doesn't have a .cabal file and needs devel/hs-hpack to # generate it from package.yaml file +# nodefault: Do not fetch the default distribution file from Hackage. If +# USE_GITHUB or USE_GITLAB is specified in the port, this argument +# is implied. # # Variables, which can be set by the port: # @@ -40,7 +43,7 @@ .if !defined(_INCLUDE_USES_CABAL_MK) _INCLUDE_USES_CABAL_MK= yes -_valid_ARGS= hpack +_valid_ARGS= hpack nodefault . for arg in ${cabal_ARGS} . if !${_valid_ARGS:M${arg}} @@ -74,10 +77,18 @@ LIB_DEPENDS+= libgmp.so:math/gmp \ DIST_SUBDIR?= cabal -. if !defined(USE_GITHUB) && !defined(USE_GITLAB) -MASTER_SITES?= https://hackage.haskell.org/package/${PORTNAME}-${PORTVERSION}/ \ +. if !defined(USE_GITHUB) && !defined(USE_GITLAB) && !${cabal_ARGS:Mnodefault} +MASTER_SITES= https://hackage.haskell.org/package/${PORTNAME}-${PORTVERSION}/ \ http://hackage.haskell.org/package/${PORTNAME}-${PORTVERSION}/ -DISTFILES?= ${PORTNAME}-${PORTVERSION}${CABAL_EXTRACT_SUFX} +DISTFILES+= ${PORTNAME}-${PORTVERSION}${CABAL_EXTRACT_SUFX} +EXTRACT_ONLY+= ${PORTNAME}-${PORTVERSION}${CABAL_EXTRACT_SUFX} +. else +. if defined(USE_GITHUB) && !defined(DISTFILES) && !${USE_GITHUB:Mnodefault} +EXTRACT_ONLY+= ${DISTNAME_DEFAULT}${_GITHUB_EXTRACT_SUFX} +. endif +. if defined(USE_GITLAB) && !defined(DISTFILES) && !${USE_GITLAB:Mnodefault} +EXTRACT_ONLY+= ${DISTNAME}${_GITLAB_EXTRACT_SUFX} +. endif . endif _USES_extract= 701:cabal-post-extract @@ -101,15 +112,16 @@ MASTER_SITES+= https://hackage.haskell.org/package/:${package:C/[\.-]//g} \ http://hackage.haskell.org/package/:${package:C/[\.-]//g} DISTFILES+= ${package:C/_[0-9]+//}/${package:C/_[0-9]+//}${CABAL_EXTRACT_SUFX}:${package:C/[\.-]//g} +. if !defined(CABAL_BOOTSTRAP) +EXTRACT_ONLY+= ${package:C/_[0-9]+//}/${package:C/_[0-9]+//}${CABAL_EXTRACT_SUFX} +. endif + . if ${package:C/[^_]*//:S/_//} != "" DISTFILES+= ${package:C/_[0-9]+//}/revision/${package:C/[^_]*//:S/_//}.cabal:${package:C/[\.-]//g} . endif . endfor -. if !defined(CABAL_BOOTSTRAP) -EXTRACT_ONLY= ${DISTFILES:C/:.*//:N*\.cabal} -. endif # Fetches and unpacks package source from Hackage using only PORTNAME and PORTVERSION. cabal-extract: ${WRKDIR} |