-
-
Notifications
You must be signed in to change notification settings - Fork 31k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bpo-45774: Autoconfiscate SQLite detection (GH-29507) #29507
Conversation
🤖 New build scheduled with the buildbot fleet by @erlend-aasland for commit 9bc5d7b 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
SQLite was not detected on buildbot |
@koobs where is sqlite installed on your FreeBSD buildbot? Is it in /usr/local by any chance? Would the solution https://bugs.python.org/issue45774#msg406076 work for FreeBSD? |
sqlite3-3.35.5 is installed on both FreeBSD buildbot workers in LOCALBASE ( I haven't deeply reviewed the implementation in issue 45774, but I don't see a reference to I would also caution that wherever possible when doing dependency detection and configuration, we should include the ability to pass dependency specific include/library paths and *FLAGS, because Pythons build system is particularly inconsistent and flaky with respect to passing *FLAGS globally, which downstreams often have to utilise. This can causes include ordering issues, as well as build/link time conflicts when a dependency is installed in more than one location, and both are picked up. Other than at the configure level Further Sqlite3 InformationInstalled libraries and header names:
sqlite also installed a pkg-config file:
|
Thanks @koobs ! Yes, I agree. We don't use pkg-config for sqlite3 yet. Is |
We should assume it is (and not hardcode paths, unless there's no better alternative). Right now most if not all downstreams will be passing Sorry for the non-binary answer :) |
FYI, I summarized my plan in https://bugs.python.org/issue45573#msg406084 |
FYI: Holding this until GH-29164 has landed. |
🤖 New build scheduled with the buildbot fleet by @erlend-aasland for commit 0c36ebac224953603971079cbe706a77da248d5f 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
0c36eba
to
1a33d5c
Compare
Looks good! Great job! Let's do another buildbot run. I'll merge the PR tomorrow. |
FreeBSD still emits a warning:
It also failed the configure step, but that was bco.
UPDATE 1 UPDATE 2 |
The ARM64 macOS buildbot failed at (The x86-64 macOS buildbot is fine, though.) UPDATE diff --git a/configure.ac b/configure.ac
index 88b5a18ae9..1d87235a94 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3176,8 +3176,8 @@ AS_VAR_APPEND([LIBSQLITE3_CFLAGS], [' -I$(srcdir)/Modules/_sqlite'])
AS_VAR_COPY([save_CFLAGS], [CFLAGS])
AS_VAR_COPY([save_LDFLAGS], [LDFLAGS])
-AS_VAR_COPY([CFLAGS], [LIBSQLITE3_CFLAGS])
-AS_VAR_COPY([LDFLAGS], [LIBSQLITE3_LIBS])
+CFLAGS="$LIBSQLITE3_CFLAGS $CFLAGS"
+LDFLAGS="$LIBSQLITE3_LIBS $LDFLAGS"
AC_CHECK_HEADER([sqlite3.h], [
AC_CHECK_LIB([sqlite3], [sqlite3_open_v2], [ |
You figured it out already! FreeBSD has 3rd party headers in /usr/local/include. The pre-processor does not use CFLAGS. You need CPPFLAGS here. I concur that it's safe to use CPPFLAGS instead of CFLAGS for sqlite. Most pgkconf files set -I, -D, -L, and -l. Other rare cases may need both CFLAGS and CPPFLAGS, though. |
If 41a78b5 looks ok for you (as a fix for both the FreeBSD and macOS arm issues), we'll run it through the buildbots again. |
SQLite is now detected without warnings on FreeBSD. It does however still fail bco.
UPDATE: This fails because |
|
🤖 New build scheduled with the buildbot fleet by @erlend-aasland for commit 0173b66 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tests are passing!
Finally 😆 |
Great job! |
Co-authored-by: Christian Heimes <[email protected]>
https://bugs.python.org/issue45774