Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32.1k
bpo-45774: Autoconfiscate SQLite detection (GH-29507)#29507
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
bedevere-bot commentedNov 9, 2021
🤖 New build scheduled with the buildbot fleet by@erlend-aasland for commit9bc5d7b 🤖 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 solutionhttps://bugs.python.org/issue45774#msg406076 work for FreeBSD? |
koobs commentedNov 10, 2021 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
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 |
koobs commentedNov 10, 2021 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
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 inhttps://bugs.python.org/issue45573#msg406084 |
FYI: Holding this untilGH-29164 has landed. |
bedevere-bot commentedNov 15, 2021
🤖 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. |
bedevere-bot commentedNov 18, 2021
Looks good! Great job! Let's do another buildbot run. I'll merge the PR tomorrow. |
erlend-aasland commentedNov 18, 2021 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
FreeBSD still emits a warning:
It also failed the configure step, but that was bco.
UPDATE 1 UPDATE 2 |
erlend-aasland commentedNov 18, 2021 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
The ARM64 macOS buildbot failed at (The x86-64 macOS buildbot is fine, though.) UPDATE diff --git a/configure.ac b/configure.acindex 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. |
If41a78b5 looks ok for you (as a fix for both the FreeBSD and macOS arm issues), we'll run it through the buildbots again. |
bedevere-bot commentedNov 19, 2021
erlend-aasland commentedNov 19, 2021 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
SQLite is now detected without warnings on FreeBSD. It does however still fail bco.
UPDATE: This fails because |
|
bedevere-bot commentedNov 19, 2021
🤖 New build scheduled with the buildbot fleet by@erlend-aasland for commit0173b66 🤖 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 😆 |
koobs commentedNov 20, 2021
Great job! |
Co-authored-by: Christian Heimes <christian@python.org>
Uh oh!
There was an error while loading.Please reload this page.
https://bugs.python.org/issue45774