More info in case anyone sees anything. My current build rule is below. I also showed some of the includes in comments as listed in the file.
cc_library(
name = "VST",
hdrs = [ # These are all referenced from the root.
"pluginterfaces/base/funknown.h",
"pluginterfaces/vst2.x/aeffect.h",
"pluginterfaces/vst2.x/aeffectx.h",
"pluginterfaces/vst2.x/vstfxstore.h",
"public.sdk/source/vst2.x/aeffeditor.h",
"public.sdk/source/vst2.x/audioeffect.h", # include listed as "pluginterfaces/vst2.x/aeffect.h"
"public.sdk/source/vst2.x/audioeffectx.h", # includes listed as "audioeffect.h" and
# "pluginterfaces/vst2.x/aeffectx.h
],
srcs = [
"public.sdk/source/vst2.x/audioeffectx.cpp",
"public.sdk/source/vst2.x/audioeffect.cpp", # includes listed as "audioeffect.h" and "aeffeditor.h"
],
includes = [
"-Ipluginterfaces/vst2.x",
"-Ipublic.sdk/source/vst2.x",
],
)
And here's my error:
ERROR: /my_WORKSPACE_directory/ThirdParty/vst_sdk/BUILD:5:1: C++ compilation of rule '//ThirdParty/vst_sdk:VST' failed: linux-sandbox failed: error executing command /home/chetgnegy/.cache/bazel/_bazel_chetgnegy/703b9800778fef35edeb624f262556cf/execroot/Source/_bin/linux-sandbox ... (remaining 53 argument(s) skipped).
In file included from ThirdParty/vst_sdk/public.sdk/source/vst2.x/audioeffectx.h:38:0,
from ThirdParty/vst_sdk/public.sdk/source/vst2.x/audioeffectx.cpp:35:
ThirdParty/vst_sdk/public.sdk/source/vst2.x/audioeffect.h:38:60: fatal error: pluginterfaces/vst2.x/aeffect.h: No such file or directory
compilation terminated.
Target //ThirdParty/vst_sdk:VST failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 0.106s, Critical Path: 0.07s
I don't really understand why it's not finding things that are referenced from the root (of the third party library, not of my WORKSPACE). I *think* it is doing ok with the unqualified relative includes. Perhaps this is resolved by doing multiple cc_libraries? I'm pretty stumped.