Skip to content

Conversation

@chrisnovakovic
Copy link
Contributor

@chrisnovakovic chrisnovakovic commented Sep 25, 2025

The shared object test has dependencies on both Python and pkg-config (in order to locate libpython and Python's headers). It dates back to a time when the C/C++ and Python rules were both part of the main Please repo, but now that they live in separate plugin repos, importing the python-rules plugin (and expecting Python and pkg-config to be installed system-wide) is excessive for the sake of a single test that doesn't strictly require Python to prove that cc-rules' dynamic linking functionality works as expected.

Eliminate libpython from the ABI between the shared object and test binary. What remains is enough to prove that cc-rules is generating valid shared libraries that are loadable at run-time by dynamically-linked binaries.

The shared object test has dependencies on both Python and pkg-config
(in order to locate libpython and Python's headers). It dates back to a
time when the C/C++ and Python rules were both part of the main Please
repo, but now that they live in separate plugin repos, importing the
python-rules plugin (and expecting Python and pkg-config to be installed
system-wide) is excessive for the sake of a single test that doesn't
strictly require Python to prove that cc-rules' dynamic linking
functionality works as expected.

Eliminate libpython from the ABI between the shared object and test
binary. What remains is enough to prove that cc-rules is generating
valid shared libraies that are loadable at run-time by
dynamically-linked binaries.
#include "dolphin.hpp"

std::string Dolphin::depart() {
return "So long, and thanks for all the fish";

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❤️

@chrisnovakovic chrisnovakovic merged commit 5e32b08 into please-build:master Sep 25, 2025
14 of 28 checks passed
@chrisnovakovic chrisnovakovic deleted the remove-python-test branch September 25, 2025 12:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants