diff options
author | Mikael Urankar <mikael@FreeBSD.org> | 2025-04-11 13:41:11 +0200 |
---|---|---|
committer | Mikael Urankar <mikael@FreeBSD.org> | 2025-04-11 14:29:15 +0200 |
commit | 7d77bc3ae640924239987e424adf2c82f86a5261 (patch) | |
tree | 92cf23c79c4ec289a200be736277442e74244b7b /security/node-sqlcipher | |
parent | devel/msp430-debug-stack: Better devd config installed as sample. (diff) |
security/node-sqlcipher: Add new port
A fast N-API-based Node.js addon wrapping sqlcipher and Signal-specific FTS5
segmenting APIs.
Diffstat (limited to 'security/node-sqlcipher')
-rw-r--r-- | security/node-sqlcipher/Makefile | 43 | ||||
-rw-r--r-- | security/node-sqlcipher/distinfo | 5 | ||||
-rw-r--r-- | security/node-sqlcipher/files/patch-binding.gyp | 14 | ||||
-rw-r--r-- | security/node-sqlcipher/files/patch-deps_sqlcipher_sqlcipher.gyp | 11 | ||||
-rw-r--r-- | security/node-sqlcipher/files/patch-src_addon.cc | 11 | ||||
-rw-r--r-- | security/node-sqlcipher/pkg-descr | 2 |
6 files changed, 86 insertions, 0 deletions
diff --git a/security/node-sqlcipher/Makefile b/security/node-sqlcipher/Makefile new file mode 100644 index 000000000000..6630bca44bda --- /dev/null +++ b/security/node-sqlcipher/Makefile @@ -0,0 +1,43 @@ +PORTNAME= node-sqlcipher +DISTVERSION= 1.0.0 +CATEGORIES= security +MASTER_SITES= https://github.com/signalapp/node-sqlcipher/archive/refs/tags/v${DISTVERSION}/:sqlcipher \ + LOCAL/mikael/signal-desktop/:npm +DISTFILES= node-sqlcipher-${DISTVERSION}.tar.gz:sqlcipher \ + node-sqlcipher-${DISTVERSION}-npm-cache.tar.gz:npm \ + +MAINTAINER= mikael@FreeBSD.org +COMMENT= Fast N-API-based Node.js addon wrapping sqlcipher and FTS5 segmenting APIs +WWW= https://github.com/signalapp/node-sqlcipher + +LICENSE= AGPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${LOCALBASE}/lib/libsignal_sqlcipher_extension.a:devel/signal-sqlcipher-extension \ + npm:www/npm${NODEJS_SUFFIX} + +USES= nodejs:20,build + +PLIST_FILES= lib/node_sqlcipher.node + +post-patch: + ${REINPLACE_CMD} "s#PREFIX#${PREFIX}#g" \ + ${WRKSRC}/deps/sqlcipher/sqlcipher.gyp \ + ${WRKSRC}/binding.gyp + +do-build: + ${ECHO_CMD} offline=true > ${WRKSRC}/.npmrc + cd ${WRKSRC} && \ + ${SETENV} ${MAKE_ENV} npm install --nodedir=${PREFIX} + +do-install: + ${INSTALL_DATA} ${WRKSRC}/build/Release/obj.target/node_sqlcipher.node ${STAGEDIR}${PREFIX}/lib/ + +create-caches-tarball: + # do some cleanup first + ${RM} -r ${WRKDIR}/.npm/_logs ${WRKDIR}/.npm/_update-notifier-last-checked + + cd ${WRKDIR} && \ + ${TAR} czf node-sqlcipher-${DISTVERSION}-npm-cache.tar.gz .npm + +.include <bsd.port.mk> diff --git a/security/node-sqlcipher/distinfo b/security/node-sqlcipher/distinfo new file mode 100644 index 000000000000..e8fc32285f1a --- /dev/null +++ b/security/node-sqlcipher/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1744363987 +SHA256 (node-sqlcipher-1.0.0-npm-cache.tar.gz) = 1fef14366dde911c77fe21131d44a81ad16e150c303f86d967dc09db9b9e6777 +SIZE (node-sqlcipher-1.0.0-npm-cache.tar.gz) = 66582106 +SHA256 (node-sqlcipher-1.0.0.tar.gz) = 5712bbfbb76739cc8a7d2ad0ce27bb60e6045203c2e24500504d0b6651314e91 +SIZE (node-sqlcipher-1.0.0.tar.gz) = 2667597 diff --git a/security/node-sqlcipher/files/patch-binding.gyp b/security/node-sqlcipher/files/patch-binding.gyp new file mode 100644 index 000000000000..36046a7c8414 --- /dev/null +++ b/security/node-sqlcipher/files/patch-binding.gyp @@ -0,0 +1,14 @@ +--- binding.gyp.orig 2025-04-10 22:01:02 UTC ++++ binding.gyp +@@ -5,10 +5,10 @@ + 'target_name': 'node_sqlcipher', + 'dependencies': [ + 'deps/sqlcipher/sqlcipher.gyp:sqlcipher', +- 'deps/extension/extension.gyp:extension', + "<!(node -p \"require('node-addon-api').targets\"):node_addon_api", + ], + 'sources': ['src/addon.cc'], ++ 'include_dirs': ['PREFIX/include'], + 'conditions': [ + ['OS=="linux"', { + 'ldflags': [ diff --git a/security/node-sqlcipher/files/patch-deps_sqlcipher_sqlcipher.gyp b/security/node-sqlcipher/files/patch-deps_sqlcipher_sqlcipher.gyp new file mode 100644 index 000000000000..b98ef27db1cb --- /dev/null +++ b/security/node-sqlcipher/files/patch-deps_sqlcipher_sqlcipher.gyp @@ -0,0 +1,11 @@ +--- deps/sqlcipher/sqlcipher.gyp.orig 2025-04-10 21:58:12 UTC ++++ deps/sqlcipher/sqlcipher.gyp +@@ -90,7 +90,7 @@ + }, { + 'link_settings': { + 'libraries': [ +- '<(SHARED_INTERMEDIATE_DIR)/libsignal_sqlcipher_extension.a', ++ 'PREFIX/lib/libsignal_sqlcipher_extension.a', + ] + }, + }], diff --git a/security/node-sqlcipher/files/patch-src_addon.cc b/security/node-sqlcipher/files/patch-src_addon.cc new file mode 100644 index 000000000000..d4134c89ef02 --- /dev/null +++ b/security/node-sqlcipher/files/patch-src_addon.cc @@ -0,0 +1,11 @@ +--- src/addon.cc.orig 2025-04-10 22:08:02 UTC ++++ src/addon.cc +@@ -7,7 +7,7 @@ + #include "addon.h" + + #include "napi.h" +-#include "signal-tokenizer.h" ++#include <signal-tokenizer.h> + #include "sqlite3.h" + + // Signal Tokenizer diff --git a/security/node-sqlcipher/pkg-descr b/security/node-sqlcipher/pkg-descr new file mode 100644 index 000000000000..2947ed68a5a2 --- /dev/null +++ b/security/node-sqlcipher/pkg-descr @@ -0,0 +1,2 @@ +A fast N-API-based Node.js addon wrapping sqlcipher and Signal-specific FTS5 +segmenting APIs. |