Closed GretaCB closed 6 years ago
👍 I'll note that currently we already demonstrate some of the "how" because we:
What is missing is:
protozero
is not actually used in the code (so we are missing automatic testing that the build works and an example of #include
usage of an external dependency).install_deps.sh
script and then it will be automatically found. However a mason dependency package that includes a pre-compiled library will not automatically work. Without any changes its headers will be found, but the build would fail at link time if the code is needed. So a doc should explain that the library will need to be added to the libraries
section like https://github.com/mapbox/node-fontnik/blob/f327e89be3a4611090505211d336b46b732cda13/binding.gyp#L61. And that some custom header paths might be needed for particular deps (like freetype https://github.com/mapbox/node-fontnik/blob/f327e89be3a4611090505211d336b46b732cda13/binding.gyp#L10).protozero is not actually used in the code (so we are missing automatic testing that the build works and an example of #include usage of an external dependency).
Note: to be able to test the mason-js branch, I advised @millzpaugh to add back the protozero
include such that it can confirm that the include paths are working. https://github.com/mapbox/node-cpp-skel/commit/6c2033ef6aef15752ab368600f10d3a6dbeb8595#diff-1b31e01fc4cb7e539d3902c07dcbee31R6
This can eventually be replaced by gzip-hpp.
Per voice with @GretaCB - I'm going to take this task next (integrating gzip-hpp) since I've got some gzip-hpp API ideas in a gzip-hpp branch that will allow use to integrate gzip-hpp with https://github.com/mapbox/node-cpp-skel/issues/69. So I will put up a first PR and then get review from @GretaCB and @flippmoke. Hold tight.
gzip-hpp API ideas in a gzip-hpp branch that will allow use to integrate gzip-hpp with #69
This is at https://github.com/mapbox/gzip-hpp/pull/22
I'm going to take this task next (integrating gzip-hpp)
This is next in Jan using https://github.com/mapbox/gzip-hpp/pull/22
With the port to #111, we now have mason involved. I'm no longer seeing a need to integrate gzip-hpp specifically, especially since https://github.com/mapbox/vtcomposite and https://github.com/mapbox/vtquery demonstrate gzip-hpp usage nicely.
Demonstrate how to add header-only dependencies from mason.
Next Actions
cc @springmeyer @mapsam