annoying-build-systems
annoying-build-systems copied to clipboard
bazel has external dependecies
I am not quite sure what "no external dependencies" means, but it likely does not apply to bazel.
(1) All of the C++ rules accept already-compiled libraries (.so and .a files). For example:
cc_library(srcs = ['libfoo.so'], hdrs = ['foo.h'])
(2) If you have files outside of your tree, you can use new_local_repository
(this can be used, for example, to read system-wide libraries form /usr/lib)
(3) And you can always just put -lfoo
into linkopts.
For python and other interpreted languages, you just need new_local_repository. I don't know abything about java.
To add to this, Bazel isn't limited to local external repos either - it can pull them from git/http.