Coming from sysutils/mdprint I want ordinary distfiles handling. Since we have more than one port using RPM files, here is a straight forward diff to unify each of their quirky handling.
Less code, no plist change and we can use EXTRACT_FILES if need be. OK? Index: infrastructure/mk/bsd.port.mk =================================================================== RCS file: /cvs/ports/infrastructure/mk/bsd.port.mk,v retrieving revision 1.1542 diff -u -p -r1.1542 bsd.port.mk --- infrastructure/mk/bsd.port.mk 26 Jun 2020 11:51:16 -0000 1.1542 +++ infrastructure/mk/bsd.port.mk 9 Jan 2021 21:04:00 -0000 @@ -1385,6 +1385,11 @@ PATCH_CASES += *.bz2) \ ${BZIP2} -d <$$patchfile | ${PATCH} ${PATCH_DIST_ARGS};; .endif +.if !empty(_LIST_EXTRACTED:M*.rpm) +BUILD_DEPENDS += converters/rpm2cpio +EXTRACT_CASES += *.rpm) \ + cd ${WRKDIR} && rpm2cpio ${FULLDISTDIR}/$$archive | cpio -id -- ${EXTRACT_FILES};; +.endif _PERL_FIX_SHAR ?= perl -ne 'print if $$s || ($$s = m:^\#(\!\s*/bin/sh\s*| This is a shell archive):)' Index: sysutils/mdprint/Makefile =================================================================== RCS file: /cvs/ports/sysutils/mdprint/Makefile,v retrieving revision 1.5 diff -u -p -r1.5 Makefile --- sysutils/mdprint/Makefile 28 Dec 2020 04:01:48 -0000 1.5 +++ sysutils/mdprint/Makefile 9 Jan 2021 21:11:03 -0000 @@ -17,9 +17,6 @@ PERMIT_PACKAGE = Yes MASTER_SITES = https://yum.oracle.com/repo/OracleLinux/OL6/latest/source/getPackageSource/ EXTRACT_SUFX = .el6.src.rpm -EXTRACT_ONLY = # empty - -BUILD_DEPENDS = converters/rpm2cpio MODULES = lang/python MODPY_VERSION = ${MODPY_DEFAULT_VERSION_3} @@ -31,9 +28,7 @@ NO_TEST = Yes # the SRC RPM contains a SPEC file and the actual uncompressed source tarball post-extract: - cd ${WRKDIR} && rpm2cpio ${FULLDISTDIR}/${DISTFILES} | \ - cpio -i ${DISTNAME}.tar - ${TAR} -C${WRKDIR} -xf${WRKDIR}/${DISTNAME}.tar ${DISTNAME}/${MDPRINT} + cd ${WRKDIR} && ${TAR} -xf./${DISTNAME}.tar do-build: 2to3-${MODPY_VERSION} --no-diffs -W ${WRKSRC}/${MDPRINT} Index: mail/kopano/webapp/Makefile =================================================================== RCS file: /cvs/ports/mail/kopano/webapp/Makefile,v retrieving revision 1.21 diff -u -p -r1.21 Makefile --- mail/kopano/webapp/Makefile 30 May 2020 08:50:13 -0000 1.21 +++ mail/kopano/webapp/Makefile 9 Jan 2021 21:18:51 -0000 @@ -24,19 +24,19 @@ MINOR= 2765 RPMVER= 1630.1 PKGNAME= kopano-webapp-${WAPP_VERSION}.${MINOR} -EXTRACT_SUFX= # empty +EXTRACT_SUFX= .noarch.rpm # https://download.kopano.io/community/webapp%3A/webapp-4.1.2765%2B1630.1.dbabb97-RHEL_7-noarch.tar.gz .for _dfile in ${PLUGINS} -EDISTFILES+= kopano-webapp-plugin-${_dfile}.noarch.rpm +EDISTFILES+= kopano-webapp-plugin-${_dfile}${EXTRACT_SUFX} .endfor -EDISTFILES+= kopano-webapp-lang-${WAPP_VERSION}.${MINOR}-${RPMVER}.noarch.rpm +EDISTFILES+= kopano-webapp-lang-${WAPP_VERSION}.${MINOR}-${RPMVER}${EXTRACT_SUFX} EXTRACT_ONLY= ${EDISTFILES:C/:[0-9]$//} -DISTFILES+= kopano-webapp-${WAPP_VERSION}.${MINOR}-${RPMVER}.noarch.rpm -DISTFILES+= kopano-webapp-plugin-files-3.0.0.42-362.1.noarch.rpm \ - kopano-webapp-plugin-filesbackend-owncloud-3.0.0.15-115.1.noarch.rpm \ - kopano-webapp-plugin-filesbackend-smb-3.0.0.14-82.1.noarch.rpm +DISTFILES+= kopano-webapp-${WAPP_VERSION}.${MINOR}-${RPMVER}${EXTRACT_SUFX} +DISTFILES+= kopano-webapp-plugin-files-3.0.0.42-362.1${EXTRACT_SUFX} \ + kopano-webapp-plugin-filesbackend-owncloud-3.0.0.15-115.1${EXTRACT_SUFX} \ + kopano-webapp-plugin-filesbackend-smb-3.0.0.14-82.1${EXTRACT_SUFX} DISTFILES+= ${EDISTFILES} @@ -49,7 +49,6 @@ MODULES= lang/php MODPHP_BUILDDEP=No MODPHP_RUNDEP= No -BUILD_DEPENDS= converters/rpm2cpio RUN_DEPENDS= mail/kopano/core,-mapi # php-mapi NO_BUILD= Yes