numpy provides a get_include() function, which returns the path to the directory containing numpy header files that you might want to compile against. We call numpy.get_include() in the natcap.invest setup.py in order to pass that include directory to the compiler.
We're now doing a similar thing with pygeoprocessing, compiling against ManagedRaster, which currently looks like os.path.join(pygeoprocessing.__path__[0], 'extensions'). It would be nice if pygeoprocessing provided its own get_include function so that other libraries don't need to know anything about pygeoprocessing's directory structure.
Time estimate 1 - 3 hours.
numpyprovides aget_include()function, which returns the path to the directory containing numpy header files that you might want to compile against. We callnumpy.get_include()in thenatcap.investsetup.py in order to pass that include directory to the compiler.We're now doing a similar thing with
pygeoprocessing, compiling againstManagedRaster, which currently looks likeos.path.join(pygeoprocessing.__path__[0], 'extensions'). It would be nice if pygeoprocessing provided its ownget_includefunction so that other libraries don't need to know anything about pygeoprocessing's directory structure.Time estimate 1 - 3 hours.