Hi, This adds support for archivers/xz compressed archivers via EXTRACT_SUFX.
Comments? Ok? Index: bsd.port.mk =================================================================== RCS file: /cvs/ports/infrastructure/mk/bsd.port.mk,v retrieving revision 1.1066 diff -u -p -r1.1066 bsd.port.mk --- bsd.port.mk 14 Dec 2010 11:37:38 -0000 1.1066 +++ bsd.port.mk 17 Jan 2011 09:03:10 -0000 @@ -745,6 +745,7 @@ PATCH_DIST_ARGS += -C TAR ?= /bin/tar UNZIP ?= unzip BZIP2 ?= bzip2 +XZIP ?= xz # copy selected info from bsd.own.mk @@ -1206,8 +1207,13 @@ _USE_ZIP ?= Yes (defined(PATCHFILES) && !empty(_PATCHFILES:M*.bz2)) _USE_BZIP2 ?= Yes .endif +.if !empty(EXTRACT_ONLY:M*.tar.xz) || !empty(EXTRACT_ONLY:M*.txz) || \ + (defined(PATCHFILES) && !empty(_PATCHFILES:M*.xz)) +_USE_XZIP ?= Yes +.endif _USE_ZIP ?= No _USE_BZIP2 ?= No +_USE_XZIP ?= No EXTRACT_CASES ?= @@ -1224,6 +1230,11 @@ BUILD_DEPENDS += archivers/bzip2 EXTRACT_CASES += *.tar.bz2|*.tbz2) \ ${BZIP2} -dc ${FULLDISTDIR}/$$archive | ${TAR} xf -;; .endif +.if ${_USE_XZIP} != "no" +BUILD_DEPENDS += archivers/xz +EXTRACT_CASES += *.tar.xz|*.txz) \ + ${XZIP} -dc ${FULLDISTDIR}/$$archive | ${TAR} xf -;; +.endif EXTRACT_CASES += *.tar) \ ${TAR} xf ${FULLDISTDIR}/$$archive;; EXTRACT_CASES += *.shar.gz|*.shar.Z|*.sh.gz|*.sh.Z) \ @@ -1241,6 +1252,10 @@ PATCH_CASES ?= .if ${_USE_BZIP2:L} != "no" PATCH_CASES += *.bz2) \ ${BZIP2} -dc $$patchfile | ${PATCH} ${PATCH_DIST_ARGS};; +.endif +.if ${_USE_XZIP:L} != "no" +PATCH_CASES += *.xz) \ + ${XZIP} -dc $$patchfile | ${PATCH} ${PATCH_DIST_ARGS};; .endif PATCH_CASES += *.Z|*.gz) \ ${GZCAT} $$patchfile | ${PATCH} ${PATCH_DIST_ARGS};;