Add supports_interface_shared_libraries to cc_shared_library#680
Conversation
|
i could split the unix toolchain fix up but it was nice to verify with this new support |
|
this is still off by default and requires users pass |
03edcaa to
c7e4c50
Compare
|
this working on macOS depends on #675 |
|
cc @fmeum in case there was a reason not to do this originally |
|
I don't see why it shouldn't work. |
c7e4c50 to
db5bb61
Compare
|
Getting a failure in tests that are still in main Bazel repo. Investigating. |
|
Disabling interface_shared_objects in that test fixes it; that being said is the change in default behavior expected? Still waiting on additional testing to see if this breaks actual users. |
|
can you tell from the log if there's a nodeps version of that lib in there? i think disabling that feature is fine for the tests, i guess that test is using the default |
|
A |
|
yea i think that behavior is an expected change here. but if that test also works on macOS we probably still need to disable this feature for it. i think we should just disable that feature since it's unrelated to simplify |
|
Hi Keith, could you sync this PR to head again? It looks like I'll need to manually import it to double-check internal test failures, and the import fails with "Cannot find a merge reference for Pull Request 680. It might have a conflict with head." |
This also backfills tests and fixes this in the default unix toolchain
a255001 to
8ac79d4
Compare
|
rebased and green! conflicts were just adding new features in the tests in 2 prs at once |
For compatibility with bazelbuild/rules_cc#680; this change can be submitted independently. PiperOrigin-RevId: 917887818 Change-Id: I524ee5e6646eb2a4838c8d4a1ef96ef69c4d95b3
|
Looks like I missed some things after disabling interface_shared_objects specifically in the link order test; the python_test and cc_test (in the cc_shared_library builtins test) fail to load the renamed_so_file. (didn't show up in the initial failures due to happening at normal test runtime instead of at analysis test runtime) the python test tries to load the shared lib and fails. This might be a case of "we need to turn off interface shared libs for this use-case" but we'd need to communicate that. cc_shared_library_integration_test uses the cc_test as data and fails to execute that binary; this feels like something actually going wrong This one's a bit more confusing/cryptic; I'd expect more CI failures than just that if there was an issue loading shared libs. p.s. I need to give migrating those tests out of the bazel repo another shot; currently in review for that. |
This also backfills tests and fixes this in the default unix toolchain