Islands in the byte stream

Technical notes by a software engineer

cmake-js があれば node-gyp に依存せず NodeJS native addon を作れそう

github.com

cmake-js という cmake のラッパーを使うと、 node-gyp を使わずに NodeJS native addon を作れるみたいです。 node-gyp は Python 2.x に依存しているのが嫌なので、 node-gyp 依存をなくせるというだけで個人的にはけっこう嬉しかったりします。

ついでに NodeJS native addon の新しい C++ API であるところの N-API もちょっと試してみました (src/hello.cc)。これは、 NodeJS のJSエンジンである V8 API を抽象化して、V8 API のバージョンごとの差異を吸収する API layer です。N-API 登場以前の NodeJS native addon は NodeJS / V8 のアップデートですぐビルドできなくなっていたものですが、 N-API を使うようにすることで複数の NodeJS バージョンに対応することが容易になりそうです。

cmake-js + N-API で NodeJS native addon がかなり開発しやすくなりましたね。NodeJS はスクリプト言語としては十分に高速なので速度のために native addon を開発する必要はほとんどないのですが、既存の資産 の活用はもっと気軽にできていいので、native addon を開発しやすくなるのはありがたいです。