So, I've been writing a game engine for a while now alongside several hobby games. It gets developed as each game needs it to have more features. I'm now in the process of refactoring the code and cleaning up the project.
It depends on all sorts of fun things, like glew, SFML, CEGUI, and Box2D. As of now, I compile all of my dependencies with the API so as to have just one .a file to link with. I realize that doing this doesn't really dodge all of the bullets, since I still have to point to all of the headers of my dependencies.
So, my question - should I continue to compile my dependencies with my API, or should I leave it up to the user to link the dependencies?
EDIT: I'm asking about best practices, because I've seen a lot of different APIs do it both ways.