diff --git a/devel/libgit2/Makefile b/devel/libgit2/Makefile index 74929659f01e..efe68f658583 100644 --- a/devel/libgit2/Makefile +++ b/devel/libgit2/Makefile @@ -1,55 +1,56 @@ # Also update devel/libgit2-glib, devel/py-pygit2 # Make sure you bump revision of depending ports, if SONAME changes # objdump -p libgit2.so |grep SONAME # Tools/scripts/search_lib_depends_and_bump.sh devel/libgit2 PORTNAME= libgit2 DISTVERSIONPREFIX= v DISTVERSION= 1.9.2 +PORTREVISION= 1 CATEGORIES= devel MAINTAINER= mfechner@FreeBSD.org COMMENT= Portable, pure C implementation of the Git core WWW= https://libgit2.org \ https://github.com/libgit2/libgit2 LICENSE= GPLv2 LIB_DEPENDS= libpcre2-8.so:devel/pcre2 \ libllhttp.so:www/llhttp USES= cmake:testing cpe localbase:ldflags pathfix pkgconfig \ python:test ssl PATHFIX_CMAKELISTSTXT= PkgBuildConfig.cmake USE_GITHUB= yes USE_LDCONFIG= yes CMAKE_ARGS= -DREGEX_BACKEND=pcre2 \ -DUSE_HTTP_PARSER=llhttp \ -DCMAKE_CTEST_ARGUMENTS="-E;'online|gitdaemon|ssh|proxy|auth_clone'" \ -DOPENSSL_ROOT_DIR=${OPENSSLBASE} \ -DOPENSSL_ENGINES_DIR=${ENGINESDIR} CMAKE_OFF= BUILD_TESTS CMAKE_TESTING_ON= BUILD_TESTS PLIST_SUB= DISTVERSION=${DISTVERSION} \ SHLIB_VER=${DISTVERSION:R} OPTIONS_DEFINE= SSH OPTIONS_DEFAULT=SSH SSH_DESC= Enable SSH support through libssh2 SSH_LIB_DEPENDS= libssh2.so:security/libssh2 SSH_CMAKE_ON= -DUSE_SSH=libssh2 .include .if ${SSL_DEFAULT} == base post-patch: @${REINPLACE_CMD} -e "/LIBGIT2_PC_REQUIRES.*openssl/ d" \ ${WRKSRC}/cmake/SelectHTTPSBackend.cmake .endif .include diff --git a/devel/opendht/Makefile b/devel/opendht/Makefile index d04c4e9c95cc..bf52f546a1d1 100644 --- a/devel/opendht/Makefile +++ b/devel/opendht/Makefile @@ -1,61 +1,61 @@ PORTNAME= opendht DISTVERSIONPREFIX= v DISTVERSION= 3.3.1 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= devel net MAINTAINER= yuri@FreeBSD.org COMMENT= Lightweight Distributed Hash Table implementation WWW= https://github.com/savoirfairelinux/opendht/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/include/asio.hpp:net/asio \ boost-libs>0:devel/boost-libs \ msgpack-cxx>0:devel/msgpack-cxx \ restinio>0:www/restinio LIB_DEPENDS= libargon2.so:security/libargon2 \ libfmt.so:devel/libfmt \ libhttp_parser.so:www/http-parser \ libjsoncpp.so:devel/jsoncpp \ libllhttp.so:www/llhttp \ libnettle.so:security/nettle \ libgnutls.so:security/gnutls RUN_DEPENDS= msgpack-cxx>0:devel/msgpack-cxx TEST_DEPENDS= cppunit>0:devel/cppunit USES= cmake:testing compiler:c++17-lang localbase ncurses pathfix pkgconfig readline ssl USE_GITHUB= yes GH_ACCOUNT= savoirfairelinux USE_LDCONFIG= yes LDFLAGS+= -lcrypto CMAKE_OFF= OPENDHT_STATIC BUILD_TESTING OPENDHT_TESTS_NETWORK CMAKE_TESTING_ON= BUILD_TESTING OPENDHT_TESTS_NETWORK # tests Tests assert and crash, see https://github.com/savoirfairelinux/opendht/issues/696 OPTIONS_DEFINE= INDEX PROXY_CLIENT PROXY_SERVER PUSH_NOTIFICATIONS DOCS OPTIONS_DEFAULT= INDEX PROXY_CLIENT PROXY_SERVER PUSH_NOTIFICATIONS DOCS INDEX_DESC= Build DHT indexation feature INDEX_CMAKE_BOOL= OPENDHT_INDEX PROXY_CLIENT_DESC= Enable DHT proxy client PROXY_CLIENT_CMAKE_BOOL= OPENDHT_PROXY_CLIENT PROXY_SERVER_DESC= Enable DHT proxy server PROXY_SERVER_CMAKE_BOOL= OPENDHT_PROXY_SERVER PROXY_SERVER_LIB_DEPENDS= libjsoncpp.so:devel/jsoncpp \ librestbed.so:www/restbed PUSH_NOTIFICATIONS_DESC= Enable push notifications support PUSH_NOTIFICATIONS_CMAKE_BOOL= OPENDHT_PUSH_NOTIFICATIONS PORTDOCS= * # several tests fail, see https://github.com/savoirfairelinux/opendht/issues/721 # tests throw exceptions, see https://github.com/savoirfairelinux/opendht/issues/751 .include diff --git a/editors/vscode/Makefile b/editors/vscode/Makefile index f910989f65e0..c0383663bdea 100644 --- a/editors/vscode/Makefile +++ b/editors/vscode/Makefile @@ -1,395 +1,396 @@ PORTNAME= vscode DISTVERSION= ${VSCODE_VERSION} +PORTREVISION= 1 CATEGORIES= editors MASTER_SITES= https://github.com/tagattie/FreeBSD-VSCode/releases/download/${DISTVERSION}/:node_modules DISTFILES= vscode-node-modules-${DISTVERSION}${EXTRACT_SUFX}:node_modules \ vscode-marketplace-exts-${DISTVERSION}${EXTRACT_SUFX}:node_modules DIST_SUBDIR= ${PORTNAME} MAINTAINER= tagattie@FreeBSD.org COMMENT= Visual Studio Code - Open Source ("Code - OSS") WWW= https://code.visualstudio.com/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.txt ONLY_FOR_ARCHS= amd64 EXTRACT_DEPENDS=jq:textproc/jq \ node${NODEJS_VERSION}>0:www/node${NODEJS_VERSION} BUILD_DEPENDS= zip:archivers/zip \ typescript-go>=7.0.0.g20260408:lang/typescript-go \ jq:textproc/jq \ rg:textproc/ripgrep LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libasound.so:audio/alsa-lib \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libsndio.so:audio/sndio \ libdbus-1.so:devel/dbus \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libnotify.so:devel/libnotify \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libpcre2-8.so:devel/pcre2 \ libre2.so:devel/re2 \ liblcms2.so:graphics/lcms2 \ libdrm.so:graphics/libdrm \ libpng.so:graphics/png \ libwayland-client.so:graphics/wayland \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libvpx.so:multimedia/libvpx \ libopenh264.so:multimedia/openh264 \ libpipewire-0.3.so:multimedia/pipewire \ libcups.so:print/cups \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence \ libfontconfig.so:x11-fonts/fontconfig RUN_DEPENDS= xdg-open:devel/xdg-utils \ bash:shells/bash TEST_DEPENDS= bash:shells/bash USES= cargo desktop-file-utils display:test electron:39,build,test \ gl gmake gnome gssapi:mit iconv:wchar_t jpeg localbase:ldflags \ nodejs:22,build pkgconfig python:build shebangfix xorg USE_GITHUB= yes GH_ACCOUNT= microsoft # See ${WRKSRC}/node_modules/@github/copilot/clipboard/node_modules/@teddyzhu/clipboard/package.json for node-clipboard-rs version GH_TUPLE= Teddy-Zhu:node-clipboard-rs:v0.0.5:node_clipboard_rs/node-clipboard-rs # See ${WRKSRC}/build/rspack/node_modules/@rspack/binding/package.json for rspack version GH_TUPLE+= web-infra-dev:rspack:v1.7.10:rspack/rspack CARGO_CARGOTOML_CLIPBOARD= ${WRKSRC}/node-clipboard-rs/Cargo.toml CARGO_CARGOLOCK_CLIPBOARD= ${WRKSRC}/node-clipboard-rs/Cargo.lock CARGO_CARGOTOML_RSPACK= ${WRKSRC}/rspack/Cargo.toml CARGO_CARGOLOCK_RSPACK= ${WRKSRC}/rspack/Cargo.lock CARGO_CARGOTOML= ${CARGO_CARGOTOML_CLIPBOARD} CARGO_CARGOLOCK= ${CARGO_CARGOLOCK_CLIPBOARD} CARGO_BUILD= no CARGO_INSTALL= no CARGO_TEST= no BINARY_ALIAS= python=${PYTHON_CMD} USE_XORG= x11 xcb xcomposite xcursor xdamage xext xfixes xi xkbfile \ xrandr xrender xscrnsaver xtst USE_GL= gbm gl glesv2 USE_GNOME= atk cairo pango gdkpixbuf gtk30 libxml2 libxslt USE_ELECTRON= npm:npm SHEBANG_REGEX= ./(extensions|node_modules|resources|scripts|src)/.*(\.(pl|py|sh)|makeBlacker|makeFF)$$ PATHFIX_FILES= src/vs/workbench/contrib/debug/node/terminals.ts DATADIR= ${PREFIX}/share/code-oss TMPDIR= ${WRKDIR} BUNDLE_LIBS= yes MAKE_ENV+= BUILD_SOURCEVERSION=${SOURCE_COMMIT_HASH} \ VSCODE_QUALITY=stable # Don't create __pycache__ directory when executing node-gyp # This is a workaround to avoid filesystem violations during poudriere build MAKE_ENV+= PYTHONDONTWRITEBYTECODE=1 TEST_ENV= ${MAKE_ENV:C/TMPDIR=.*//} \ VSCODE_SKIP_PRELAUNCH=1 UPSTREAM_ELECTRON_VER= ${ELECTRON_VER} .include "Makefile.version" .include NODEJS_DIR= ${.CURDIR:H:H}/www/node${NODEJS_VERSION} .include "${NODEJS_DIR}/Makefile.version" pre-everything:: @${ECHO_MSG} "" @${ECHO_MSG} "The limit imposed by poudriere(8) for the maximum number of files allowed to be" @${ECHO_MSG} "opened by a jail (default 1024) is exceeded during the build of ${PORTNAME}." @${ECHO_MSG} "To successfully build ${PORTNAME} with poudriere(8), you must add the following" @${ECHO_MSG} "line to poudriere.conf:" @${ECHO_MSG} "MAX_FILES_${PORTNAME}=8192" @${ECHO_MSG} "" post-extract: @${CP} ${WRKSRC}/build/.moduleignore.linux \ ${WRKSRC}/build/.moduleignore.freebsd @${ECHO_MSG} "===> Installing node modules in ${WRKSRC}" @${TAR} -xzf ${WRKDIR}/vscode-.-node-modules${EXTRACT_SUFX} -C ${WRKSRC} @for dir in `node --input-type=module -e "console.log(JSON.stringify((await import('${WRKSRC}/build/npm/dirs.ts')).dirs))" | jq -r '.[]'`; do \ if [ -f ${WRKDIR}/vscode-`echo $${dir} | tr _ __ | tr / _`-node-modules${EXTRACT_SUFX} ]; then \ ${ECHO_MSG} "===> Installing node modules in ${WRKSRC}/$${dir}"; \ ${TAR} -xzf ${WRKDIR}/vscode-`echo $${dir} | tr _ __ | tr / _`-node-modules${EXTRACT_SUFX} -C ${WRKSRC}/$${dir}; \ fi; \ done post-patch: @${REINPLACE_CMD} -E 's|^(target=").*(")$$|\1${ELECTRON_VER}\2|' \ ${WRKSRC}/.npmrc @${REINPLACE_CMD} -E 's|^(target=").*(")$$|\1${NODEJS_PORTVERSION}\2|' \ ${WRKSRC}/remote/.npmrc @${REINPLACE_CMD} -e 's/%%DISTVERSION%%/${DISTVERSION}/g' \ ${WRKSRC}/build/gulpfile.reh.ts \ ${WRKSRC}/build/gulpfile.vscode.ts @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \ ${WRKSRC}/node_modules/@typescript/native-preview/lib/getExePath.js @(cd ${WRKSRC} && \ ${FIND} -E . -type f -iregex '${SHEBANG_REGEX}' \ -exec ${SED} -i '' -e "s|/usr/bin/pgrep|/bin/pgrep|g" {} ';') @(cd ${WRKSRC} && \ ${FIND} ${PATHFIX_FILES} -type f \ -exec ${SED} -i '' -e "s|/usr/bin/pgrep|/bin/pgrep|g" {} ';') @${REINPLACE_CMD} -e 's/@@NAME_LONG@@/Code - OSS/; \ s/@@NAME_SHORT@@/Code - OSS/; \ s/@@PRODNAME@@/Code - OSS/; \ s/@@NAME@@/code-oss/g; \ s|@@EXEC@@|${PREFIX}/bin/code-oss|; \ s/@@ICON@@/com.visualstudio.code.oss/; \ s/@@URLPROTOCOL@@/code-oss/; \ s/@@LICENSE@@/MIT/; \ s/@@APPNAME@@/code-oss/g; \ s|/usr/share|${PREFIX}/share|' \ ${WRKSRC}/resources/completions/bash/code \ ${WRKSRC}/resources/completions/zsh/_code \ ${WRKSRC}/resources/linux/bin/code.sh \ ${WRKSRC}/resources/linux/code.appdata.xml \ ${WRKSRC}/resources/linux/code.desktop \ ${WRKSRC}/resources/linux/code-url-handler.desktop @(cd ${WRKDIR}/builtInExtensions && \ ${FIND} . -type f -name '*.sh' \ -exec ${SED} -i '' -e "s|/usr/bin/pgrep|/bin/pgrep|g" \ -e 's|#!/bin/bash|#!${LOCALBASE}/bin/bash|' {} ';') @${SETENV} FILESDIR=${FILESDIR} \ ${SH} ${FILESDIR}/update-product-json.sh ${WRKSRC} pre-build: # rebuild native node modules in top directory @for subdir in `${FIND} ${WRKSRC}/node_modules -type f -name binding.gyp -exec ${DIRNAME} {} ';'`; do \ ${ECHO_MSG} "===> Rebuilding native modules in $${subdir}"; \ cd $${subdir} && \ ${SETENV} ${MAKE_ENV} \ npm_config_runtime=electron \ npm_config_target=${ELECTRON_VER} \ npm_config_nodedir=${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR}/node_headers \ node-gyp --userconfig=${WRKSRC}/.npmrc rebuild; \ done # rebuild native node modules in subdirectories @for dir in `node --input-type=module -e "console.log(JSON.stringify((await import('${WRKSRC}/build/npm/dirs.ts')).dirs))" | jq -r '.[]'`; do \ for subdir in `${FIND} ${WRKSRC}/$${dir}/node_modules -type f -name binding.gyp -exec ${DIRNAME} {} ';' 2> /dev/null`; do \ ${ECHO_MSG} "===> Rebuilding native modules in $${subdir}"; \ if [ "`${ECHO_CMD} $${subdir} | ${GREP} /build/`" ]; then \ cd $${subdir} && \ ${SETENV} ${MAKE_ENV} \ npm_config_runtime=node \ npm_config_target=${NODEJS_PORTVERSION} \ npm_config_nodedir=${LOCALBASE} \ node-gyp --userconfig=${WRKSRC}/build/.npmrc rebuild; \ elif [ "`${ECHO_CMD} $${subdir} | ${GREP} /remote/`" ]; then \ cd $${subdir} && \ ${SETENV} ${MAKE_ENV} \ npm_config_runtime=node \ npm_config_target=${NODEJS_PORTVERSION} \ npm_config_nodedir=${LOCALBASE} \ node-gyp --userconfig=${WRKSRC}/remote/.npmrc rebuild; \ else \ cd $${subdir} && \ ${SETENV} ${MAKE_ENV} \ npm_config_runtime=electron \ npm_config_target=${ELECTRON_VER} \ npm_config_nodedir=${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR}/node_headers \ node-gyp --userconfig=${WRKSRC}/.npmrc rebuild; \ fi; \ done; \ done # build native node module for @teddyzhu/clipboard @${CARGO_CARGO_RUN} build \ --manifest-path ${CARGO_CARGOTOML_CLIPBOARD} \ --verbose --verbose \ ${CARGO_BUILD_ARGS} ${CP} ${CARGO_TARGET_DIR}/*/libclipboard.so \ ${WRKSRC}/node_modules/@github/copilot/clipboard/node_modules/@teddyzhu/clipboard/clipboard.freebsd-${ELECTRON_ARCH}.node ${CP} ${CARGO_TARGET_DIR}/*/libclipboard.so \ ${WRKSRC}/remote/node_modules/@github/copilot/clipboard/node_modules/@teddyzhu/clipboard/clipboard.freebsd-${ELECTRON_ARCH}.node # # build native node module for @rspack/binding # @${CARGO_CARGO_RUN} build \ # --manifest-path ${CARGO_CARGOTOML_RSPACK} \ # --verbose --verbose \ # ${CARGO_BUILD_ARGS} # ${CP} ${CARGO_TARGET_DIR}/*/librspack.so \ # ${WRKSRC}/build/rspack/node_modules/@rspack/binding/rspack.freebsd-${ELECTRON_ARCH}.node # copy rg binary file to @vscode/ripgrep node module directory @${MKDIR} ${WRKSRC}/node_modules/@vscode/ripgrep/bin \ ${WRKSRC}/build/node_modules/@vscode/ripgrep/bin \ ${WRKSRC}/remote/node_modules/@vscode/ripgrep/bin ${CP} ${LOCALBASE}/bin/rg ${WRKSRC}/node_modules/@vscode/ripgrep/bin ${CP} ${LOCALBASE}/bin/rg ${WRKSRC}/build/node_modules/@vscode/ripgrep/bin ${CP} ${LOCALBASE}/bin/rg ${WRKSRC}/remote/node_modules/@vscode/ripgrep/bin # copy rg binary file to @github/copilot node modules directory @${MKDIR} ${WRKSRC}/node_modules/@github/copilot/ripgrep/bin/freebsd-${ELECTRON_ARCH} \ ${WRKSRC}/node_modules/@github/copilot-sdk/node_modules/@github/copilot/ripgrep/bin/freebsd-${ELECTRON_ARCH} \ ${WRKSRC}/remote/node_modules/@github/copilot/ripgrep/bin/freebsd-${ELECTRON_ARCH} ${CP} ${LOCALBASE}/bin/rg \ ${WRKSRC}/node_modules/@github/copilot/ripgrep/bin/freebsd-${ELECTRON_ARCH} ${CP} ${LOCALBASE}/bin/rg \ ${WRKSRC}/node_modules/@github/copilot-sdk/node_modules/@github/copilot/ripgrep/bin/freebsd-${ELECTRON_ARCH} ${CP} ${LOCALBASE}/bin/rg \ ${WRKSRC}/remote/node_modules/@github/copilot/ripgrep/bin/freebsd-${ELECTRON_ARCH} # copy keytar.node binary file to @github/copilot node modules directory @${MKDIR} ${WRKSRC}/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} \ ${WRKSRC}/node_modules/@github/copilot-sdk/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} \ ${WRKSRC}/remote/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} ${CP} ${WRKSRC}/node_modules/keytar/build/Release/keytar.node \ ${WRKSRC}/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} ${CP} ${WRKSRC}/node_modules/keytar/build/Release/keytar.node \ ${WRKSRC}/node_modules/@github/copilot-sdk/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} ${CP} ${WRKSRC}/node_modules/keytar/build/Release/keytar.node \ ${WRKSRC}/remote/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} # copy pty.node binary file to @github/copilot node modules directory ${CP} ${WRKSRC}/node_modules/node-pty/build/Release/pty.node \ ${WRKSRC}/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} ${CP} ${WRKSRC}/node_modules/node-pty/build/Release/pty.node \ ${WRKSRC}/node_modules/@github/copilot-sdk/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} ${CP} ${WRKSRC}/node_modules/node-pty/build/Release/pty.node \ ${WRKSRC}/remote/node_modules/@github/copilot/prebuilds/freebsd-${ELECTRON_ARCH} do-build: # remove backup files so that they are not included in the package @${FIND} ${WRKSRC} -type f \( -name '*.bak' -o -name '*.orig' -o -name '*~' \) -delete # build and package vscode cd ${WRKSRC} && \ ${SETENV} ${MAKE_ENV} \ npm_config_runtime=electron \ npm_config_target=${ELECTRON_VER} \ npm_config_nodedir=${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR}/node_headers \ npm --userconfig=${WRKSRC}/.npmrc run compile && \ ${SETENV} ${MAKE_ENV} \ npm_config_runtime=electron \ npm_config_target=${ELECTRON_VER} \ npm_config_nodedir=${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR}/node_headers \ npm --userconfig=${WRKSRC}/.npmrc run gulp vscode-linux-${ELECTRON_ARCH}-min # move marketplace extensions @${MV} ${WRKDIR}/builtInExtensions/* ${WRKDIR}/VSCode-linux-${ELECTRON_ARCH}/resources/app/extensions do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d ${INSTALL_DATA} ${WRKSRC}/resources/completions/bash/code \ ${STAGEDIR}${PREFIX}/etc/bash_completion.d/code-oss @${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions ${INSTALL_DATA} ${WRKSRC}/resources/completions/zsh/_code \ ${STAGEDIR}${PREFIX}/share/zsh/site-functions/_code-oss @${MKDIR} ${STAGEDIR}${PREFIX}/share/appdata ${INSTALL_DATA} ${WRKSRC}/resources/linux/code.appdata.xml \ ${STAGEDIR}${PREFIX}/share/appdata/code-oss.appdata.xml @${MKDIR} ${STAGEDIR}${PREFIX}/share/applications .for f in code.desktop code-url-handler.desktop ${INSTALL_DATA} ${WRKSRC}/resources/linux/${f} \ ${STAGEDIR}${PREFIX}/share/applications/${f:S/code/code-oss/} .endfor @${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps ${INSTALL_DATA} ${WRKSRC}/resources/linux/code.png \ ${STAGEDIR}${PREFIX}/share/pixmaps/com.visualstudio.code.oss.png @${MKDIR} ${STAGEDIR}${DATADIR} ${TAR} -cf - -C ${WRKDIR}/VSCode-linux-${ELECTRON_ARCH} . | \ ${TAR} -xf - -C ${STAGEDIR}${DATADIR} @${FIND} ${STAGEDIR}${DATADIR}/resources/app -type f -exec ${FILE} {} ';' | \ ${GREP} 'ELF.*FreeBSD' | ${AWK} -F ': ' '{print $$1}' | ${XARGS} ${STRIP_CMD} .for f in chromedriver mksnapshot v8_context_snapshot_generator @${RM} ${STAGEDIR}${DATADIR}/${f} .endfor @${RM} -r ${STAGEDIR}${DATADIR}/gen @${RM} -r ${STAGEDIR}${DATADIR}/node_headers @${RM} -r ${STAGEDIR}${DATADIR}/resources/completions ${RLN} ${STAGEDIR}${DATADIR}/bin/code-oss ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${FILESDIR}/wrapper.sh ${STAGEDIR}${PREFIX}/bin/${PORTNAME} pre-test: # setup electron dependency for unit tests @${MKDIR} ${WRKSRC}/.build/electron @${TAR} -cf - -C ${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR} . | \ ${TAR} -xf - -C ${WRKSRC}/.build/electron @cd ${WRKSRC}/.build/electron && ${MV} -f electron code-oss do-test: # unit tests cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ./scripts/test.sh || ${TRUE} # UI smoke tests cd ${WRKSRC} && ${SETENV} ${TEST_ENV} npm run smoketest build-remote-extension-host: configure pre-build # setup download cache for node @${MKDIR} ${WRKSRC}/.build/node/v${NODEJS_PORTVERSION}/linux-${ELECTRON_ARCH} @${CP} ${LOCALBASE}/bin/node ${WRKSRC}/.build/node/v${NODEJS_PORTVERSION}/linux-${ELECTRON_ARCH} # build vscode remote extension host cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \ npm_config_runtime=node \ npm_config_target=${NODEJS_PORTVERSION} \ npm_config_nodedir=${LOCALBASE} \ npm --userconfig=${WRKSRC}/remote/.npmrc run gulp vscode-reh-linux-${ELECTRON_ARCH}-min @${MKDIR} ${WRKDIR}/vscode-reh/bin/${SOURCE_COMMIT_HASH} ${TAR} -cf - -C ${WRKDIR}/vscode-reh-linux-${ELECTRON_ARCH} . | \ ${TAR} -xf - -C ${WRKDIR}/vscode-reh/bin/${SOURCE_COMMIT_HASH} @${FIND} ${WRKDIR}/vscode-reh -type f -exec ${FILE} {} ';' | \ ${GREP} 'ELF.*FreeBSD' | ${AWK} -F ': ' '{print $$1}' | ${XARGS} ${STRIP_CMD} ${TAR} -czf ${WRKDIR}/vscode-reh-${DISTVERSION}-${OPSYS:tl}${OSREL:R}-${ARCH}.tar.gz -C ${WRKDIR}/vscode-reh . # cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} npm run gulp vscode-reh-web-linux-${ELECTRON_ARCH}-min ### targets for port maintainer(s) patch-package-json: extract # add node module for signature verification of extensions from Open VSX Registry @${PATCH} -s -p0 -d ${WRKSRC} < ${FILESDIR}/patch-package.json make-node-modules-archive: extract patch-package-json @${ECHO_MSG} "===> Fetching and installing node modules in ${WRKSRC}" @cd ${WRKSRC} && \ ${SETENV} ${MAKE_ENV} npm install \ --ignore-scripts --no-progress --no-audit --no-fund --no-update-notifier && \ ${TAR} -czf ${WRKDIR}/vscode-.-node-modules${EXTRACT_SUFX} node_modules @for dir in `node --input-type=module -e "console.log(JSON.stringify((await import('${WRKSRC}/build/npm/dirs.ts')).dirs))" | jq -r '.[]'`; do \ cd ${WRKSRC}/$${dir} && \ ${ECHO_MSG} "===> Fetching and installing node modules in ${WRKSRC}/$${dir}" && \ ${SETENV} ${MAKE_ENV} npm install \ --ignore-scripts --no-progress --no-audit --no-fund --no-update-notifier && \ if [ -d node_modules ]; then \ ${TAR} -czf ${WRKDIR}/vscode-`echo $${dir} | tr _ __ | tr / _`-node-modules${EXTRACT_SUFX} node_modules; \ fi; \ done @cd ${WRKDIR} && \ ${TAR} -czf vscode-node-modules-${DISTVERSION}${EXTRACT_SUFX} vscode-*-node-modules.tar.gz make-marketplace-exts-archive: extract @${RM} -r ${WRKSRC}/.build/builtInExtensions @cd ${WRKSRC} && \ ${SETENV} ${MAKE_ENV} npm run download-builtin-extensions @${TAR} -czf ${WRKDIR}/vscode-marketplace-exts-${DISTVERSION}${EXTRACT_SUFX} -C ${WRKSRC}/.build builtInExtensions cargo-crates-from-multiple-lockfiles: extract @set -- ${CARGO_CARGOTOML_CLIPBOARD} \ ${CARGO_CARGOLOCK_CLIPBOARD} \ ${CARGO_CARGOTOML_RSPACK} \ ${CARGO_CARGOLOCK_RSPACK}; \ while [ $$# -gt 0 ]; do \ tf=$$1; \ lf=$$2; \ if [ ! -r $${lf} ]; then \ cd `${DIRNAME} $${lf}` && \ ${_CARGO_RUN} generate-lockfile --manifest-path $${tf} --quiet; \ fi; \ shift 2; \ done @for lf in ${CARGO_CARGOLOCK_CLIPBOARD} ${CARGO_CARGOLOCK_RSPACK}; do \ ${_CARGO_AWK} ${SCRIPTSDIR}/cargo-crates.awk $${lf}; \ done | \ ${SED} -E 's/^CARGO_CRATES=\t+/\t\t/; s/ \\$$//' | \ ${SORT} -u | \ ${SED} -e '1s/^\t\t/CARGO_CRATES=\t/; s/$$/ \\/' | \ ${SED} -e '$$s/ \\//' .include diff --git a/misc/github-copilot-cli/Makefile b/misc/github-copilot-cli/Makefile index 578c547fa850..886368d9e47a 100644 --- a/misc/github-copilot-cli/Makefile +++ b/misc/github-copilot-cli/Makefile @@ -1,227 +1,228 @@ PORTNAME= github-copilot-cli DISTVERSION= 1.0.35-6 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= misc # machine-learning DISTFILES= ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX} DIST_SUBDIR= ${PORTNAME}-x # -x is to see if it would fix checksum errors MAINTAINER= yuri@FreeBSD.org COMMENT= GitHub Copilot CLI brings the power of the coding agent to terminal WWW= https://github.com/github/copilot-cli FLAVORS= script binary FLAVOR?= ${FLAVORS:[1]} script_PKGNAMESUFFIX= binary_PKGNAMESUFFIX= -bin binary_COMMENT= GitHub Copilot CLI - standalone binary (no npm dependencies) binary_PLIST= ${.CURDIR}/pkg-plist.binary FETCH_DEPENDS= flock:sysutils/flock \ npm:www/npm \ jq:textproc/jq \ ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss WRKSRC= ${WRKDIR}/copilot-${DISTVERSION} PACKAGE_NAME= @github/copilot DD= ${DISTDIR}/${DIST_SUBDIR} FETCH_SCRIPT= ${PORTSDIR}/Tools/scripts/npmjs-fetch-with-dependencies.sh FETCH_LOCKFILE= ${DD}/fetch.lock .if ${FLAVOR} == script DISTFILES+= ${NODE_HEADERS}${EXTRACT_SUFX} BUILD_DEPENDS= npm:www/npm \ libsecret>0:security/libsecret \ vips>=8.17.2:graphics/vips RUN_DEPENDS= libsecret>0:security/libsecret \ rg:textproc/ripgrep \ vips>=8.17.2:graphics/vips USES= nodejs:run pkgconfig python:build .elif ${FLAVOR} == binary BROKEN= See if the binary flavor somehow causes fetch failures DISTFILES+= ${NODE_HEADERS}${EXTRACT_SUFX} BUILD_DEPENDS= npm:www/npm \ libsecret>0:security/libsecret \ vips>=8.17.2:graphics/vips # The node binary is bundled inside the port binary; its shared libraries # must still be present at runtime so they are listed here. LIB_DEPENDS= libada.so:devel/libada \ libbrotlidec.so:archivers/brotli \ libcares.so:dns/c-ares \ libgtest.so:devel/googletest \ libhdr_histogram.so:graphics/hdr_histogram \ libicui18n.so:devel/icu \ libllhttp.so:www/llhttp \ libmerve.so:devel/merve \ libnbytes.so:www/nbytes \ libnghttp2.so:www/libnghttp2 \ libnghttp3.so:www/libnghttp3 \ libngtcp2.so:net/libngtcp2 \ libsimdjson.so:devel/simdjson \ libsimdutf.so:converters/simdutf \ libsqlite3.so:databases/sqlite3 \ libuv.so:devel/libuv \ libuvwasi.so:devel/uvwasi \ libzstd.so:archivers/zstd RUN_DEPENDS= libsecret>0:security/libsecret \ vips>=8.17.2:graphics/vips USES= nodejs:build pkgconfig python:build .endif # FLAVOR NODE_HEADERS= node-v22.19.0-headers NODE_ARCH= ${ARCH:S/amd64/x64/:S/aarch64/arm64/:S/i386/ia32/:S/powerpc64le/ppc64le/:S/powerpc64/ppc64/:C/armv[67]/arm/} # modeled after electron.mk PLIST_SUB= NODE_ARCH=${NODE_ARCH} DEP_MODULES= pty sharp keytar node_addon_api dep_pty_npm_name= @devm33/node-pty dep_pty_version= 1.0.9 dep_sharp_npm_name= sharp dep_sharp_version= 0.34.4 dep_keytar_npm_name= keytar dep_keytar_version= 7.9.0 dep_node_addon_api_npm_name= node-addon-api dep_node_addon_api_version= 8.5.0 .for dep in ${DEP_MODULES} DISTFILES+= ${dep:S/_/-/g}-${dep_${dep}_version}${EXTRACT_SUFX} .endfor do-fetch: @${MKDIR} ${DD} @exec 9>${FETCH_LOCKFILE} && flock -x 9 && \ if ! [ -f ${DD}/${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX} ]; then \ ${ECHO} "====> Fetching ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX}" && \ ${SETENV} TMPDIR=${WRKDIR} LOCALBASE=${LOCALBASE} ${FETCH_SCRIPT} \ ${PACKAGE_NAME} ${DISTVERSION} \ ${FILESDIR}/package-lock.json \ ${DD}/${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX}; \ fi && \ if ! [ -f ${DD}/${NODE_HEADERS}${EXTRACT_SUFX} ]; then \ ${ECHO} "====> Fetching ${NODE_HEADERS}${EXTRACT_SUFX}" && \ ${FETCH_CMD} -q https://nodejs.org/download/release/v22.19.0/${NODE_HEADERS}${EXTRACT_SUFX} \ -o ${DD}/${NODE_HEADERS}${EXTRACT_SUFX}; \ fi && \ if ! [ -f ${DD}/pty-${dep_pty_version}${EXTRACT_SUFX} ]; then \ ${ECHO} "====> Fetching dependency pty" && \ ${SETENV} TMPDIR=${WRKDIR} LOCALBASE=${LOCALBASE} ${FETCH_SCRIPT} \ ${dep_pty_npm_name} ${dep_pty_version} \ ${FILESDIR}/package-lock-pty.json \ ${DD}/pty-${dep_pty_version}${EXTRACT_SUFX}; \ fi && \ if ! [ -f ${DD}/sharp-${dep_sharp_version}${EXTRACT_SUFX} ]; then \ ${ECHO} "====> Fetching dependency sharp" && \ ${SETENV} TMPDIR=${WRKDIR} LOCALBASE=${LOCALBASE} ${FETCH_SCRIPT} \ ${dep_sharp_npm_name} ${dep_sharp_version} \ ${FILESDIR}/package-lock-sharp.json \ ${DD}/sharp-${dep_sharp_version}${EXTRACT_SUFX}; \ fi && \ if ! [ -f ${DD}/keytar-${dep_keytar_version}${EXTRACT_SUFX} ]; then \ ${ECHO} "====> Fetching dependency keytar" && \ ${SETENV} TMPDIR=${WRKDIR} LOCALBASE=${LOCALBASE} ${FETCH_SCRIPT} \ ${dep_keytar_npm_name} ${dep_keytar_version} \ ${FILESDIR}/package-lock-keytar.json \ ${DD}/keytar-${dep_keytar_version}${EXTRACT_SUFX}; \ fi && \ if ! [ -f ${DD}/node-addon-api-${dep_node_addon_api_version}${EXTRACT_SUFX} ]; then \ ${ECHO} "====> Fetching dependency node-addon-api" && \ ${SETENV} TMPDIR=${WRKDIR} LOCALBASE=${LOCALBASE} ${FETCH_SCRIPT} \ ${dep_node_addon_api_npm_name} ${dep_node_addon_api_version} \ ${FILESDIR}/package-lock-node-addon-api.json \ ${DD}/node-addon-api-${dep_node_addon_api_version}${EXTRACT_SUFX}; \ fi post-extract: # Extract node-addon-api and install into sharp/node_modules # the tarball has a nested structure, so we need to move the inner directory @${MV} \ ${WRKDIR}/${dep_node_addon_api_npm_name}-${dep_node_addon_api_version}/node_modules/${dep_node_addon_api_npm_name} \ ${WRKDIR}/${dep_sharp_npm_name}-${dep_sharp_version}/node_modules/${dep_sharp_npm_name}/node_modules/node-addon-api post-patch: # set version ${REINPLACE_CMD} -i '' \ -e 's|qg.default.createElement(U,{color:e.MUTED},"v",t)|qg.default.createElement(U,{color:e.MUTED},"v","${PORTVERSION}")|g' \ ${WRKSRC}/node_modules/@github/copilot/index.js do-build: # Create directory for FreeBSD prebuilds @${MKDIR} ${WRKSRC}/node_modules/${PACKAGE_NAME}/prebuilds/freebsd-x64 @${ECHO_MSG} "====> Building pty..." @cd ${WRKDIR}/node-pty-${dep_pty_version}/node_modules/${dep_pty_npm_name} && \ ${SETENV} HOME=${WRKDIR} CFLAGS="-I${LOCALBASE}/include" CXXFLAGS="-I${LOCALBASE}/include" \ npm rebuild --nodedir=${LOCALBASE} && \ ${CP} build/Release/pty.node ${WRKSRC}/node_modules/${PACKAGE_NAME}/prebuilds/freebsd-x64/ @${ECHO_MSG} "====> Building sharp..." @cd ${WRKDIR}/sharp-${dep_sharp_version}/node_modules/${dep_sharp_npm_name}/src && \ ${SETENV} HOME=${WRKDIR} PYTHON=${PYTHON_CMD} CXXFLAGS="-I${LOCALBASE}/include" \ node-gyp configure build --nodedir=${WRKDIR}/node-v22.19.0 && \ ${MKDIR} ${WRKSRC}/node_modules/${PACKAGE_NAME}/node_modules/@img/sharp-freebsd-${NODE_ARCH} && \ ${CP} build/Release/sharp-freebsd-${NODE_ARCH}.node ${WRKSRC}/node_modules/${PACKAGE_NAME}/node_modules/@img/sharp-freebsd-${NODE_ARCH}/sharp.node @${ECHO_MSG} "====> Building keytar..." @cd ${WRKDIR}/keytar-${dep_keytar_version}/node_modules/${dep_keytar_npm_name} && \ ${SETENV} HOME=${WRKDIR} CFLAGS="-I${LOCALBASE}/include" CXXFLAGS="-I${LOCALBASE}/include" \ npm rebuild --nodedir=${LOCALBASE} && \ ${CP} build/Release/keytar.node ${WRKSRC}/node_modules/${PACKAGE_NAME}/prebuilds/freebsd-x64/ .if ${FLAVOR} == binary @${ECHO_MSG} "====> Creating copilot bundle (includes node runtime)..." # Embed the node runtime so it runs without a system node installation @${CP} ${LOCALBASE}/bin/node ${WRKSRC}/node_modules/${PACKAGE_NAME}/node @cd ${WRKSRC}/node_modules/${PACKAGE_NAME} && \ ${TAR} --exclude=./ripgrep --exclude=./sharp \ --exclude=./changelog.json --exclude=./npm-loader.js.orig \ -cJf ${WRKSRC}/copilot_bundle.txz . @${ECHO_MSG} "====> Building copilot launcher..." @${PRINTF} '\t.global _binary_copilot_bundle_txz_start\n\t.global _binary_copilot_bundle_txz_end\n_binary_copilot_bundle_txz_start:\n\t.incbin "%s"\n_binary_copilot_bundle_txz_end:\n' \ "${WRKSRC}/copilot_bundle.txz" > ${WRKSRC}/blob.s @${CC} -c ${WRKSRC}/blob.s -o ${WRKSRC}/blob.o @${CC} ${CFLAGS} \ -DPREFIX='"${PREFIX}"' \ -DPORTVERSION='"${PORTVERSION}"' \ -c ${FILESDIR}/launcher.c -o ${WRKSRC}/launcher.o @${CC} ${LDFLAGS} -o ${WRKSRC}/copilot ${WRKSRC}/launcher.o ${WRKSRC}/blob.o @${STRIP_CMD} ${WRKSRC}/copilot .endif # FLAVOR == binary do-install: .if ${FLAVOR} == script # install files cd ${WRKSRC} && \ ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib # remove *.node files for other OSes @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -name "*\\.node" | \ ${GREP} -v freebsd | \ ${XARGS} ${RM} # remove files for other OSes @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -name "*linux*" | ${XARGS} ${RM} -r @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -name "*win32*" | ${XARGS} ${RM} -r @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -name "*darwin*" | ${XARGS} ${RM} -r # remove unnecessary files @${FIND} ${STAGEDIR}${PREFIX}/lib -type f -and -name "*package*.json" -delete @${FIND} ${STAGEDIR}${PREFIX}/lib -type f -and -name "README.md" -delete @${FIND} ${STAGEDIR}${PREFIX}/lib -type f -and -name "LICENSE.md" -delete # update shebang to use system node @${REINPLACE_CMD} -i '' \ -e "s|#!/usr/bin/env node|#!${PREFIX}/bin/node|" \ ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME}/index.js # set exec bit @${CHMOD} +x ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME}/npm-loader.js # create symlink in bin @${RLN} -s ${STAGEDIR}${PREFIX}/lib/node_modules/.bin/copilot ${STAGEDIR}${PREFIX}/bin/copilot # strip binaries @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -path "*/build/*" -name *.node | ${XARGS} ${STRIP_CMD} .elif ${FLAVOR} == binary ${INSTALL_PROGRAM} ${WRKSRC}/copilot ${STAGEDIR}${PREFIX}/bin/copilot .endif # FLAVOR .include diff --git a/security/tang/Makefile b/security/tang/Makefile index 07c203503ed8..a6427a6584a7 100644 --- a/security/tang/Makefile +++ b/security/tang/Makefile @@ -1,28 +1,29 @@ PORTNAME= tang DISTVERSION= 15 +PORTREVISION= 1 CATEGORIES= security MASTER_SITES= https://github.com/latchset/${PORTNAME}/releases/download/v${DISTVERSION}/ MAINTAINER= hdholm@alumni.iastate.edu COMMENT= Tang is a small daemon for binding data to the presence of a network WWW= https://github.com/latchset/tang LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libllhttp.so:www/llhttp \ libjansson.so:devel/jansson \ libjose.so:net/jose BUILD_DEPENDS= a2x:textproc/asciidoc \ ${LOCALBASE}/libdata/pkgconfig/jose.pc:net/jose \ socat:net/socat \ curl:ftp/curl USES= compiler:c11 cpe meson pkgconfig tar:xz CPE_VENDOR= tang_project post-install: ${MKDIR} -m 0700 ${STAGEDIR}/var/db/tang .include diff --git a/www/llhttp/Makefile b/www/llhttp/Makefile index d43b066139b0..c77f0e317793 100644 --- a/www/llhttp/Makefile +++ b/www/llhttp/Makefile @@ -1,29 +1,29 @@ PORTNAME= llhttp -PORTVERSION= 9.3.1 +PORTVERSION= 9.4.1 DISTVERSIONPREFIX= release/v CATEGORIES= www MAINTAINER= sunpoet@FreeBSD.org COMMENT= Port of http_parser to llparse WWW= https://llhttp.org/ \ https://github.com/nodejs/llhttp LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE-MIT USES= cmake cpe CMAKE_ON= LLHTTP_BUILD_SHARED_LIBS PLIST_SUB= PORTVERSION=${PORTVERSION} USE_GITHUB= yes GH_ACCOUNT= nodejs OPTIONS_DEFINE= STATIC OPTIONS_DEFAULT=STATIC OPTIONS_SUB= yes STATIC_CMAKE_BOOL= LLHTTP_BUILD_STATIC_LIBS .include diff --git a/www/llhttp/distinfo b/www/llhttp/distinfo index d20d7bb45564..332bf59c8ccf 100644 --- a/www/llhttp/distinfo +++ b/www/llhttp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1771421490 -SHA256 (nodejs-llhttp-release-v9.3.1_GH0.tar.gz) = c14a93f287d3dbd6580d08af968294f8bcc61e1e1e3c34301549d00f3cf09365 -SIZE (nodejs-llhttp-release-v9.3.1_GH0.tar.gz) = 39211 +TIMESTAMP = 1777572492 +SHA256 (nodejs-llhttp-release-v9.4.1_GH0.tar.gz) = 86a8c16759fdcc7aa2c9841fbe8ba2e77ea98be7d5d45615f2604776d0ff78c7 +SIZE (nodejs-llhttp-release-v9.4.1_GH0.tar.gz) = 40396 diff --git a/www/llhttp/pkg-plist b/www/llhttp/pkg-plist index b233872aece6..6d79dd6d4860 100644 --- a/www/llhttp/pkg-plist +++ b/www/llhttp/pkg-plist @@ -1,8 +1,10 @@ include/llhttp.h -lib/cmake/llhttp/llhttp-config-%%CMAKE_BUILD_TYPE%%.cmake -lib/cmake/llhttp/llhttp-config.cmake +lib/cmake/llhttp/llhttp-targets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/llhttp/llhttp-targets.cmake +lib/cmake/llhttp/llhttpConfig.cmake +lib/cmake/llhttp/llhttpConfigVersion.cmake %%STATIC%%lib/libllhttp.a lib/libllhttp.so -lib/libllhttp.so.9.3 +lib/libllhttp.so.9.4 lib/libllhttp.so.%%PORTVERSION%% libdata/pkgconfig/libllhttp.pc diff --git a/www/node20/Makefile b/www/node20/Makefile index 6f0d6be99e28..a236d9923f00 100644 --- a/www/node20/Makefile +++ b/www/node20/Makefile @@ -1,115 +1,115 @@ PORTNAME= node PORTVERSION= ${NODEJS_PORTVERSION} DISTVERSIONPREFIX= v -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MASTER_SITES= https://nodejs.org/dist/v${PORTVERSION}/ PKGNAMESUFFIX= ${PORTVERSION:R:R} MAINTAINER= sunpoet@FreeBSD.org COMMENT= V8 JavaScript for client and server WWW= https://nodejs.org/ \ https://github.com/nodejs/node LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_SSL= libressl libressl-devel BROKEN_SSL_REASON= Node.js ${PORTVERSION:R:R}.x requires OpenSSL or the BUNDLED_SSL option enabled DEPRECATED= Node.js 20.* has reached its EoL on 2026-04-30. Use Node.js 24.* (www/node24) instead EXPIRATION_DATE=2026-05-31 ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le BUILD_DEPENDS= objdump:devel/binutils LIB_DEPENDS= libbrotlidec.so:archivers/brotli \ libcares.so:dns/c-ares \ libicui18n.so:devel/icu \ libllhttp.so:www/llhttp \ libnghttp2.so:www/libnghttp2 \ libnghttp3.so:www/libnghttp3 \ libngtcp2.so:net/libngtcp2 \ libsimdjson.so:devel/simdjson \ libuv.so:devel/libuv RUN_DEPENDS= corepack>=0:www/corepack USES= compiler:c++20-lang gmake localbase pkgconfig python:build shebangfix tar:xz CONFIGURE_ARGS= --prefix=${PREFIX:S|^${DESTDIR}||} \ --shared-brotli \ --shared-cares \ --shared-http-parser \ --shared-http-parser-libname=llhttp \ --shared-libuv \ --shared-nghttp2 \ --shared-nghttp3 \ --shared-ngtcp2 \ --shared-simdjson \ --shared-zlib \ --with-intl=system-icu \ --without-corepack \ --without-npm CXXFLAGS_powerpc64= -mpower8-vector HAS_CONFIGURE= yes MAKE_ENV= CC.host="${CCACHE_BIN} ${CC}" \ CFLAGS.host="${CFLAGS}" \ CXX.host="${CCACHE_BIN} ${CXX}" \ CXXFLAGS.host="${CXXFLAGS}" \ LDFLAGS.host="${LDFLAGS}" \ LINK.host="${CXX}" REINPLACE_ARGS= -i '' CONFLICTS_INSTALL= node[0-9][0-9] SHEBANG_FILES= deps/v8/third_party/inspector_protocol/*.py \ deps/v8/tools/*.py \ tools/*.py \ tools/inspector_protocol/*.py OPTIONS_DEFINE= BUNDLED_SSL DOCS JIT OPTIONS_DEFAULT=JIT OPTIONS_SUB= yes BUNDLED_SSL_DESC= Use bundled OpenSSL implementation from node.js JIT_DESC= Use Just In Time compiler BUNDLED_SSL_CONFIGURE_OFF= --openssl-use-def-ca-store --shared-openssl BUNDLED_SSL_USES_OFF= ssl JIT_CONFIGURE_OFF= --v8-lite-mode .include "Makefile.version" .include .if ${PORT_OPTIONS:MBUNDLED_SSL} && ${ARCH} != amd64 CONFIGURE_ARGS+=--openssl-no-asm .endif post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/tools/v8_gypfiles/v8.gyp # Clean up bundled libraries @${RM} -r ${WRKSRC}/deps/brotli/ @${RM} -r ${WRKSRC}/deps/cares/ @${RM} -r ${WRKSRC}/deps/corepack/ @${RM} -r ${WRKSRC}/deps/icu-small/ @${RM} -r ${WRKSRC}/deps/llhttp/ @${RM} -r ${WRKSRC}/deps/nghttp2/ @${RM} -r ${WRKSRC}/deps/ngtcp2/ @${RM} -r ${WRKSRC}/deps/npm/ @${RM} -r ${WRKSRC}/deps/simdjson/ @${RM} -r ${WRKSRC}/deps/uv/ @${RM} -r ${WRKSRC}/deps/zlib/ post-configure: # Post-process Makefile and *.mk files created by node-gyp and remove # all occurrences of -I${LOCALBASE}/include. C*FLAGS include this # before all -I../deps/* for bundled code. This can cause build # breakages if the dependency is installed in ${LOCALBASE}. The # USES+=localbase above will ensure that we pick up includes for real # external dependencies. @${FIND} ${WRKSRC}/out -type f -print0 | ${XARGS} -0 ${REINPLACE_CMD} -e "s|-I${LOCALBASE}/include||g" post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/node post-install-BUNDLED_SSL-on: cd ${STAGEDIR}${PREFIX} && ${FIND} include/node/openssl/ -type f >> ${TMPPLIST} .include diff --git a/www/node22/Makefile b/www/node22/Makefile index d2fcd9c82edd..cc85599f1610 100644 --- a/www/node22/Makefile +++ b/www/node22/Makefile @@ -1,125 +1,125 @@ PORTNAME= node PORTVERSION= ${NODEJS_PORTVERSION} DISTVERSIONPREFIX= v -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MASTER_SITES= https://nodejs.org/dist/v${PORTVERSION}/ PKGNAMESUFFIX= ${PORTVERSION:R:R} MAINTAINER= sunpoet@FreeBSD.org COMMENT= V8 JavaScript for client and server WWW= https://nodejs.org/ \ https://github.com/nodejs/node LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_SSL= libressl libressl-devel BROKEN_SSL_REASON= Node.js ${PORTVERSION:R:R}.x requires OpenSSL or the BUNDLED_SSL option enabled ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le BUILD_DEPENDS= objdump:devel/binutils LIB_DEPENDS= libada.so:devel/libada \ libbrotlidec.so:archivers/brotli \ libcares.so:dns/c-ares \ libicui18n.so:devel/icu \ libllhttp.so:www/llhttp \ libnghttp2.so:www/libnghttp2 \ libnghttp3.so:www/libnghttp3 \ libngtcp2.so:net/libngtcp2 \ libsimdjson.so:devel/simdjson \ libuv.so:devel/libuv \ libuvwasi.so:devel/uvwasi \ libzstd.so:archivers/zstd RUN_DEPENDS= corepack>=0:www/corepack USES= compiler:c++20-lang gmake localbase pkgconfig python:build shebangfix sqlite tar:xz CONFIGURE_ARGS= --prefix=${PREFIX:S|^${DESTDIR}||} \ --shared-ada \ --shared-brotli \ --shared-cares \ --shared-http-parser \ --shared-http-parser-libname=llhttp \ --shared-libuv \ --shared-nghttp2 \ --shared-nghttp3 \ --shared-ngtcp2 \ --shared-simdjson \ --shared-sqlite \ --shared-uvwasi \ --shared-uvwasi-includes=${LOCALBASE}/include \ --shared-zlib \ --shared-zstd \ --with-intl=system-icu \ --without-corepack \ --without-npm CXXFLAGS_powerpc64= -mpower8-vector HAS_CONFIGURE= yes MAKE_ENV= CC.host="${CCACHE_BIN} ${CC}" \ CFLAGS.host="${CFLAGS}" \ CXX.host="${CCACHE_BIN} ${CXX}" \ CXXFLAGS.host="${CXXFLAGS}" \ LDFLAGS.host="${LDFLAGS}" \ LINK.host="${CXX}" REINPLACE_ARGS= -i '' CONFLICTS_INSTALL= node[0-9][0-9] SHEBANG_FILES= deps/v8/third_party/inspector_protocol/*.py \ deps/v8/tools/*.py \ tools/*.py \ tools/inspector_protocol/*.py OPTIONS_DEFINE= BUNDLED_SSL DOCS JIT OPTIONS_DEFAULT=JIT OPTIONS_SUB= yes BUNDLED_SSL_DESC= Use bundled OpenSSL implementation from node.js JIT_DESC= Use Just In Time compiler BUNDLED_SSL_CONFIGURE_OFF= --openssl-use-def-ca-store --shared-openssl BUNDLED_SSL_USES_OFF= ssl JIT_CONFIGURE_OFF= --v8-lite-mode .include "Makefile.version" .include .if ${PORT_OPTIONS:MBUNDLED_SSL} && ${ARCH} != amd64 CONFIGURE_ARGS+=--openssl-no-asm .endif post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/tools/v8_gypfiles/v8.gyp # Clean up bundled libraries @${RM} -r ${WRKSRC}/deps/ada/ @${RM} -r ${WRKSRC}/deps/brotli/ @${RM} -r ${WRKSRC}/deps/cares/ @${RM} -r ${WRKSRC}/deps/corepack/ @${RM} -r ${WRKSRC}/deps/icu-small/ @${RM} -r ${WRKSRC}/deps/llhttp/ @${RM} -r ${WRKSRC}/deps/nghttp2/ @${RM} -r ${WRKSRC}/deps/ngtcp2/ @${RM} -r ${WRKSRC}/deps/npm/ @${RM} -r ${WRKSRC}/deps/simdjson/ @${RM} -r ${WRKSRC}/deps/sqlite/ @${RM} -r ${WRKSRC}/deps/uv/ @${RM} -r ${WRKSRC}/deps/uvwasi/ @${RM} -r ${WRKSRC}/deps/zlib/ @${RM} -r ${WRKSRC}/deps/zstd/ post-configure: # Post-process Makefile and *.mk files created by node-gyp and remove # all occurrences of -I${LOCALBASE}/include. C*FLAGS include this # before all -I../deps/* for bundled code. This can cause build # breakages if the dependency is installed in ${LOCALBASE}. The # USES+=localbase above will ensure that we pick up includes for real # external dependencies. @${FIND} ${WRKSRC}/out -type f -print0 | ${XARGS} -0 ${REINPLACE_CMD} -e 's|-I${LOCALBASE}/include||g' post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/node post-install-BUNDLED_SSL-on: cd ${STAGEDIR}${PREFIX} && ${FIND} include/node/openssl/ -type f >> ${TMPPLIST} .include diff --git a/www/node24/Makefile b/www/node24/Makefile index 9a6f3776bc4c..9a6790b75a70 100644 --- a/www/node24/Makefile +++ b/www/node24/Makefile @@ -1,135 +1,136 @@ PORTNAME= node PORTVERSION= ${NODEJS_PORTVERSION} DISTVERSIONPREFIX= v +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= https://nodejs.org/dist/v${PORTVERSION}/ PKGNAMESUFFIX= ${PORTVERSION:R:R} MAINTAINER= sunpoet@FreeBSD.org COMMENT= V8 JavaScript for client and server WWW= https://nodejs.org/ \ https://github.com/nodejs/node LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_SSL= libressl libressl-devel BROKEN_SSL_REASON= Node.js ${PORTVERSION:R:R}.x requires OpenSSL or the BUNDLED_SSL option enabled ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le BUILD_DEPENDS= objdump:devel/binutils LIB_DEPENDS= libada.so:devel/libada \ libbrotlidec.so:archivers/brotli \ libcares.so:dns/c-ares \ libgtest.so:devel/googletest \ libhdr_histogram.so:graphics/hdr_histogram \ libicui18n.so:devel/icu \ libllhttp.so:www/llhttp \ libmerve.so:devel/merve \ libnbytes.so:www/nbytes \ libnghttp2.so:www/libnghttp2 \ libnghttp3.so:www/libnghttp3 \ libngtcp2.so:net/libngtcp2 \ libsimdjson.so:devel/simdjson \ libuv.so:devel/libuv \ libuvwasi.so:devel/uvwasi \ libzstd.so:archivers/zstd RUN_DEPENDS= corepack>=0:www/corepack USES= compiler:c++20-lang gmake localbase pkgconfig python:build shebangfix sqlite tar:xz CONFIGURE_ARGS= --prefix=${PREFIX:S|^${DESTDIR}||} \ --shared-ada \ --shared-brotli \ --shared-cares \ --shared-gtest \ --shared-hdr-histogram \ --shared-http-parser \ --shared-libuv \ --shared-merve \ --shared-nbytes \ --shared-nghttp2 \ --shared-nghttp3 \ --shared-ngtcp2 \ --shared-simdjson \ --shared-sqlite \ --shared-uvwasi \ --shared-uvwasi-includes=${LOCALBASE}/include \ --shared-zlib \ --shared-zstd \ --with-intl=system-icu \ --without-corepack \ --without-npm CXXFLAGS_powerpc64= -mpower8-vector HAS_CONFIGURE= yes MAKE_ENV= CC.host="${CCACHE_BIN} ${CC}" \ CFLAGS.host="${CFLAGS}" \ CXX.host="${CCACHE_BIN} ${CXX}" \ CXXFLAGS.host="${CXXFLAGS}" \ LDFLAGS.host="${LDFLAGS}" \ LINK.host="${CXX}" REINPLACE_ARGS= -i '' CONFLICTS_INSTALL= node[0-9][0-9] SHEBANG_FILES= deps/v8/third_party/inspector_protocol/*.py \ deps/v8/tools/*.py \ tools/*.py \ tools/inspector_protocol/*.py OPTIONS_DEFINE= BUNDLED_SSL DOCS JIT OPTIONS_DEFAULT=JIT OPTIONS_SUB= yes BUNDLED_SSL_DESC= Use bundled OpenSSL implementation from node.js JIT_DESC= Use Just In Time compiler BUNDLED_SSL_CONFIGURE_OFF= --openssl-use-def-ca-store --shared-openssl BUNDLED_SSL_USES_OFF= ssl JIT_CONFIGURE_OFF= --v8-lite-mode .include "Makefile.version" .include .if ${PORT_OPTIONS:MBUNDLED_SSL} && ${ARCH} != amd64 CONFIGURE_ARGS+=--openssl-no-asm .endif post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/tools/v8_gypfiles/v8.gyp # Clean up bundled libraries @${RM} -r ${WRKSRC}/deps/ada/ @${RM} -r ${WRKSRC}/deps/brotli/ @${RM} -r ${WRKSRC}/deps/cares/ @${RM} -r ${WRKSRC}/deps/corepack/ @${RM} -r ${WRKSRC}/deps/googletest/ @${RM} -r ${WRKSRC}/deps/histogram/ @${RM} -r ${WRKSRC}/deps/icu-small/ @${RM} -r ${WRKSRC}/deps/llhttp/ @${RM} -r ${WRKSRC}/deps/merve/ @${RM} -r ${WRKSRC}/deps/nbytes/ @${RM} -r ${WRKSRC}/deps/nghttp2/ @${RM} -r ${WRKSRC}/deps/ngtcp2/ @${RM} -r ${WRKSRC}/deps/npm/ @${RM} -r ${WRKSRC}/deps/simdjson/ @${RM} -r ${WRKSRC}/deps/sqlite/ @${RM} -r ${WRKSRC}/deps/uv/ @${RM} -r ${WRKSRC}/deps/uvwasi/ @${RM} -r ${WRKSRC}/deps/zlib/ @${RM} -r ${WRKSRC}/deps/zstd/ post-configure: # Post-process Makefile and *.mk files created by node-gyp and remove # all occurrences of -I${LOCALBASE}/include. C*FLAGS include this # before all -I../deps/* for bundled code. This can cause build # breakages if the dependency is installed in ${LOCALBASE}. The # USES+=localbase above will ensure that we pick up includes for real # external dependencies. @${FIND} ${WRKSRC}/out -type f -print0 | ${XARGS} -0 ${REINPLACE_CMD} -e 's|-I${LOCALBASE}/include||g' post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/node post-install-BUNDLED_SSL-on: cd ${STAGEDIR}${PREFIX} && ${FIND} include/node/openssl/ -type f >> ${TMPPLIST} .include diff --git a/www/node25/Makefile b/www/node25/Makefile index 88a165d4bf52..efa5eaeec7d2 100644 --- a/www/node25/Makefile +++ b/www/node25/Makefile @@ -1,137 +1,137 @@ PORTNAME= node PORTVERSION= ${NODEJS_PORTVERSION} DISTVERSIONPREFIX= v -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MASTER_SITES= https://nodejs.org/dist/v${PORTVERSION}/ PKGNAMESUFFIX= ${PORTVERSION:R:R} MAINTAINER= sunpoet@FreeBSD.org COMMENT= V8 JavaScript for client and server WWW= https://nodejs.org/ \ https://github.com/nodejs/node LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_SSL= libressl libressl-devel BROKEN_SSL_REASON= Node.js ${PORTVERSION:R:R}.x requires OpenSSL or the BUNDLED_SSL option enabled ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le BUILD_DEPENDS= objdump:devel/binutils LIB_DEPENDS= libada.so:devel/libada \ libbrotlidec.so:archivers/brotli \ libcares.so:dns/c-ares \ libgtest.so:devel/googletest \ libhdr_histogram.so:graphics/hdr_histogram \ libicui18n.so:devel/icu \ libLIEF.so:devel/lief \ libllhttp.so:www/llhttp \ libmerve.so:devel/merve \ libnbytes.so:www/nbytes \ libnghttp2.so:www/libnghttp2 \ libnghttp3.so:www/libnghttp3 \ libngtcp2.so:net/libngtcp2 \ libsimdjson.so:devel/simdjson \ libuv.so:devel/libuv \ libuvwasi.so:devel/uvwasi \ libzstd.so:archivers/zstd RUN_DEPENDS= corepack>=0:www/corepack USES= compiler:c++20-lang gmake localbase pkgconfig python:build shebangfix sqlite tar:xz CONFIGURE_ARGS= --prefix=${PREFIX:S|^${DESTDIR}||} \ --shared-ada \ --shared-brotli \ --shared-cares \ --shared-gtest \ --shared-hdr-histogram \ --shared-http-parser \ --shared-libuv \ --shared-lief \ --shared-merve \ --shared-nbytes \ --shared-nghttp2 \ --shared-nghttp3 \ --shared-ngtcp2 \ --shared-simdjson \ --shared-sqlite \ --shared-uvwasi \ --shared-uvwasi-includes=${LOCALBASE}/include \ --shared-zlib \ --shared-zstd \ --with-intl=system-icu \ --without-npm CXXFLAGS_powerpc64= -mpower8-vector HAS_CONFIGURE= yes MAKE_ENV= CC.host="${CCACHE_BIN} ${CC}" \ CFLAGS.host="${CFLAGS}" \ CXX.host="${CCACHE_BIN} ${CXX}" \ CXXFLAGS.host="${CXXFLAGS}" \ LDFLAGS.host="${LDFLAGS}" \ LINK.host="${CXX}" REINPLACE_ARGS= -i '' CONFLICTS_INSTALL= node[0-9][0-9] SHEBANG_FILES= deps/v8/third_party/inspector_protocol/*.py \ deps/v8/tools/*.py \ tools/*.py \ tools/inspector_protocol/*.py OPTIONS_DEFINE= BUNDLED_SSL DOCS JIT OPTIONS_DEFAULT=JIT OPTIONS_SUB= yes BUNDLED_SSL_DESC= Use bundled OpenSSL implementation from node.js JIT_DESC= Use Just In Time compiler BUNDLED_SSL_CONFIGURE_OFF= --openssl-use-def-ca-store --shared-openssl BUNDLED_SSL_USES_OFF= ssl JIT_CONFIGURE_OFF= --v8-lite-mode .include "Makefile.version" .include .if ${PORT_OPTIONS:MBUNDLED_SSL} && ${ARCH} != amd64 CONFIGURE_ARGS+=--openssl-no-asm .endif post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/tools/v8_gypfiles/v8.gyp # Clean up bundled libraries @${RM} -r ${WRKSRC}/deps/ada/ @${RM} -r ${WRKSRC}/deps/brotli/ @${RM} -r ${WRKSRC}/deps/cares/ @${RM} -r ${WRKSRC}/deps/googletest/ @${RM} -r ${WRKSRC}/deps/histogram/ @${RM} -r ${WRKSRC}/deps/icu-small/ @${RM} -r ${WRKSRC}/deps/LIEF/ @${RM} -r ${WRKSRC}/deps/llhttp/ @${RM} -r ${WRKSRC}/deps/merve/ @${RM} -r ${WRKSRC}/deps/nbytes/ @${RM} -r ${WRKSRC}/deps/nghttp2/ @${RM} -r ${WRKSRC}/deps/ngtcp2/ @${RM} -r ${WRKSRC}/deps/npm/ @${RM} -r ${WRKSRC}/deps/simdjson/ @${RM} -r ${WRKSRC}/deps/sqlite/ @${RM} -r ${WRKSRC}/deps/uv/ @${RM} -r ${WRKSRC}/deps/uvwasi/ @${RM} -r ${WRKSRC}/deps/zlib/ @${RM} -r ${WRKSRC}/deps/zstd/ post-configure: # Post-process Makefile and *.mk files created by node-gyp and remove # all occurrences of -I${LOCALBASE}/include. C*FLAGS include this # before all -I../deps/* for bundled code. This can cause build # breakages if the dependency is installed in ${LOCALBASE}. The # USES+=localbase above will ensure that we pick up includes for real # external dependencies. @${FIND} ${WRKSRC}/out -type f -print0 | ${XARGS} -0 ${REINPLACE_CMD} -e 's|-I${LOCALBASE}/include||g' post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/node post-install-BUNDLED_SSL-on: cd ${STAGEDIR}${PREFIX} && ${FIND} include/node/openssl/ -type f >> ${TMPPLIST} .include diff --git a/www/py-aiohttp/Makefile b/www/py-aiohttp/Makefile index c5b1af3d89a7..acc484d99b2d 100644 --- a/www/py-aiohttp/Makefile +++ b/www/py-aiohttp/Makefile @@ -1,69 +1,70 @@ PORTNAME= aiohttp PORTVERSION= 3.13.5 +PORTREVISION= 1 CATEGORIES= www python MASTER_SITES= PYPI \ https://github.com/aio-libs/aiohttp/releases/download/v${PORTVERSION}/ PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= sunpoet@FreeBSD.org COMMENT= Async http client/server framework (asyncio) WWW= https://docs.aiohttp.org/en/stable/ \ https://github.com/aio-libs/aiohttp LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pkgconfig>=0,1:devel/py-pkgconfig@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}setuptools>=61.0:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} LIB_DEPENDS= libllhttp.so:www/llhttp RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiohappyeyeballs>=2.5.0:net/py-aiohappyeyeballs@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}aiosignal>=1.4.0:devel/py-aiosignal@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}attrs>=17.3.0:devel/py-attrs@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}frozenlist>=1.1.1:devel/py-frozenlist@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}multidict>=4.5<7.0:www/py-multidict@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}propcache>=0.2.0:devel/py-propcache@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}yarl>=1.17.0<2.0:www/py-yarl@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiodns>=3.3.0:dns/py-aiodns@${PY_FLAVOR} \ ${PY_BACKPORTS.ZSTD} \ ${PYTHON_PKGNAMEPREFIX}brotli>=1.2:archivers/py-brotli@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}freezegun>=0:devel/py-freezegun@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}gunicorn>=0:www/py-gunicorn@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}isal>=0:devel/py-isal@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}proxy.py>=2.4.4:www/py-proxy.py@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-codspeed>=0:devel/py-pytest-codspeed@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-cov>=0:devel/py-pytest-cov@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-mock>=0:devel/py-pytest-mock@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-xdist>=0,1:devel/py-pytest-xdist@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}re-assert>=0:devel/py-re-assert@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}uvloop>=0:devel/py-uvloop@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}zlib-ng>=0:archivers/py-zlib-ng@${PY_FLAVOR} USES= cpe python USE_PYTHON= autoplist concurrent cython pep517 pytest MAKE_ENV= USE_SYSTEM_DEPS=1 CPE_VENDOR= aiohttp_project OPTIONS_DEFINE= SPEEDUPS SPEEDUPS_DESC= Performance speedups SPEEDUPS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiodns>=3.3.0:dns/py-aiodns@${PY_FLAVOR} \ ${PY_BACKPORTS.ZSTD} \ ${PYTHON_PKGNAMEPREFIX}brotli>=1.2:archivers/py-brotli@${PY_FLAVOR} .include .if ${PYTHON_REL} < 31100 RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}async_timeout>=4.0<6.0:devel/py-async_timeout@${PY_FLAVOR} .endif post-patch: # Clean up bundled libraries @${RM} -r ${WRKSRC}/vendor/ post-install: ${FIND} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} + .include diff --git a/www/restinio/Makefile b/www/restinio/Makefile index 8170a292ddbd..8f50dc80eee0 100644 --- a/www/restinio/Makefile +++ b/www/restinio/Makefile @@ -1,67 +1,68 @@ PORTNAME= restinio DISTVERSION= 0.7.8 +PORTREVISION= 1 CATEGORIES= www devel MASTER_SITES= https://github.com/Stiffstream/${PORTNAME}/releases/download/v${DISTVERSION}/ DISTNAME= ${PORTNAME}-${DISTVERSION}-full MAINTAINER= yuri@FreeBSD.org COMMENT= Asynchronous HTTP/WebSocket server C++17 library WWW= https://stiffstream.com/en/products/restinio.html \ https://github.com/Stiffstream/restinio LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/../LICENSE BUILD_DEPENDS= asio>0:net/asio \ libfmt>0:devel/libfmt \ sobjectizer>0:devel/sobjectizer LIB_DEPENDS= libboost_regex.so:devel/boost-libs \ libhttp_parser.so:www/http-parser \ libllhttp.so:www/llhttp \ libpcre2-8.so:devel/pcre2 RUN_DEPENDS= libfmt>0:devel/libfmt \ sobjectizer>0:devel/sobjectizer TEST_DEPENDS= catch2>0:devel/catch2 USES= cmake:testing compiler:c++17-lang localbase:ldflags tar:bz2 EXTRACT_AFTER_ARGS= --exclude ${PORTNAME}-${DISTVERSION}/dev/asio \ --exclude ${PORTNAME}-${DISTVERSION}/dev/asio_mxxru \ --exclude ${PORTNAME}-${DISTVERSION}/dev/catch2 \ --exclude ${PORTNAME}-${DISTVERSION}/dev/fmt \ --exclude ${PORTNAME}-${DISTVERSION}/dev/fmt_mxxru \ --exclude ${PORTNAME}-${DISTVERSION}/dev/nodejs/http_parser/http_parser.* \ --exclude ${PORTNAME}-${DISTVERSION}/dev/nodejs/http_parser_mxxru \ --exclude ${PORTNAME}-${DISTVERSION}/dev/rapidjson \ --exclude ${PORTNAME}-${DISTVERSION}/dev/rapidjson_mxxru \ --exclude ${PORTNAME}-${DISTVERSION}/dev/so_5 \ --exclude ${PORTNAME}-${DISTVERSION}/dev/timertt \ --no-same-owner --no-same-permissions WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION} WRKSRC_SUBDIR= dev CMAKE_ARGS= -DRESTINIO_USE_BOOST_ASIO=shared \ -DRESTINIO_DEP_FMT=system \ -DRESTINIO_DEP_SOBJECTIZER=find \ -DRESTINIO_DEP_CATCH2=find \ -DRESTINIO_DEP_LLHTTP=find CMAKE_ON= RESTINIO_FIND_DEPS CMAKE_OFF= RESTINIO_BENCH \ RESTINIO_INSTALL_BENCHES \ RESTINIO_TEST CMAKE_TESTING_ON= RESTINIO_TEST OPTIONS_DEFINE= SAMPLES OPTIONS_SUB= yes SAMPLES_DESC= Build and install samples SAMPLES_USES= ssl SAMPLES_CXXFLAGS+= -I${WRKSRC}/clara SAMPLES_CMAKE_BOOL= RESTINIO_SAMPLE RESTINIO_INSTALL_SAMPLES SAMPLES_VARS_OFF= NO_ARCH=yes SAMPLES_BUILD_DEPENDS= json-dto>0:devel/json-dto # tests as of 0.7.8: 78% tests passed, 143 tests failed out of 660, tests fail due to the port collition issue, see https://github.com/Stiffstream/restinio/issues/238 .include