stan-dev / stan

Stan development repository. The master branch contains the current release. The develop branch contains the latest stable development. See the Developer Process Wiki for details.
https://mc-stan.org
BSD 3-Clause "New" or "Revised" License
2.57k stars 368 forks source link

Allow providing external dependencies #3159

Closed andrjohns closed 1 year ago

andrjohns commented 1 year ago

Submission Checklist

Summary

This PR follows the work in the Math library to allow users to provide external dependencies for Stan (instead of the bundled rapidjson and stan_math).

The PR introduces the following makeflags:

Which can be used to provide paths to external dependencies

Intended Effect

Allow for increased portability and future options for packaging with homebrew and linux repos

How to Verify

Install rapidjson:
Homebrew
brew install rapidjson
Debian/Ubuntu
sudo apt install rapidjson-dev

Add to make/local:

Homebrew
RAPIDJSON_INC = /opt/homebrew/Cellar/rapidjson/1.1.0/include
Debian/Ubuntu
RAPIDJSON_INC = /usr/include/

Side Effects

N/A

Documentation

N/A

Copyright and Licensing

Please list the copyright holder for the work you are submitting (this will be you or your assignee, such as a university or company): Andrew Johnson

By submitting this pull request, the copyright holder is agreeing to license the submitted work under the following licenses:

syclik commented 1 year ago

Maybe what the repo needs are better examples...