summaryrefslogtreecommitdiff
path: root/www/yarn-node22/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'www/yarn-node22/Makefile')
-rw-r--r--www/yarn-node22/Makefile52
1 files changed, 49 insertions, 3 deletions
diff --git a/www/yarn-node22/Makefile b/www/yarn-node22/Makefile
index 53fde2b308e0..c302c2681dda 100644
--- a/www/yarn-node22/Makefile
+++ b/www/yarn-node22/Makefile
@@ -1,5 +1,51 @@
-USES= nodejs:22,run
+PORTNAME= yarn
+DISTVERSIONPREFIX= v
+PORTVERSION= 1.22.19
+CATEGORIES= www
+MASTER_SITES= https://yarnpkg.com/downloads/${PORTVERSION}/
+PKGNAMESUFFIX= ${NODEJS_SUFFIX}
-MASTERDIR= ${.CURDIR}/../yarn-node20
+MAINTAINER= pizzamig@FreeBSD.org
+COMMENT= Package manager for node, alternative to npm
+WWW= https://classic.yarnpkg.com/
-.include "${MASTERDIR}/Makefile"
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES?= nodejs:22,run
+USES+= cpe
+CPE_VENDOR= ${PORTNAME}pkg
+
+CONFLICTS_INSTALL= yarn-node[0-9][0-9]
+
+OPTIONS_DEFINE= HADOOPCOMPAT
+HADOOPCOMPAT_DESC= hadoop2 compatibility, the yarn script is excluded
+
+OPTIONS_SUB= yes
+
+HADOOPCOMPAT_CONFLICTS_INSTALL_OFF= hadoop2*
+
+NO_ARCH= yes
+NO_BUILD= yes
+
+post-patch:
+ @${RM} ${WRKSRC}/bin/*.cmd
+ @${REINPLACE_CMD} -i '' \
+ -e 's|"installationMethod": "tar"|"installationMethod": "pkg"|g' \
+ ${WRKSRC}/package.json
+ @${REINPLACE_CMD} -i '' -e 's%Linux)%Linux|FreeBSD)%g' \
+ ${WRKSRC}/bin/yarn
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/lib/node_modules/yarn
+ (cd ${WRKSRC}/ && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/node_modules/yarn)
+ ${RLN} ${STAGEDIR}${PREFIX}/lib/node_modules/yarn/bin/yarn.js \
+ ${STAGEDIR}${PREFIX}/bin/yarn.js
+ ${RLN} ${STAGEDIR}${PREFIX}/lib/node_modules/yarn/bin/yarnpkg \
+ ${STAGEDIR}${PREFIX}/bin/yarnpkg
+
+do-install-HADOOPCOMPAT-off:
+ ${RLN} ${STAGEDIR}${PREFIX}/lib/node_modules/yarn/bin/yarn \
+ ${STAGEDIR}${PREFIX}/bin/yarn
+
+.include <bsd.port.mk>