Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 33.9k
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 our terms of service and privacy 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
erlend-aasland commented Nov 9, 2021 • edited by bedevere-bot
Loading Uh oh!
There was an error while loading. Please reload this page.
edited by bedevere-bot
Uh oh!
There was an error while loading. Please reload this page.
bedevere-bot commented Nov 9, 2021
🤖 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. |
erlend-aasland commented Nov 9, 2021
SQLite was not detected on buildbot |
tiran commented Nov 10, 2021
@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? |
koobs commented Nov 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: |
tiran commented Nov 10, 2021
Thanks @koobs ! Yes, I agree. We don't use pkg-config for sqlite3 yet. Is |
koobs commented Nov 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 :) |
tiran commented Nov 10, 2021
FYI, I summarized my plan in https://bugs.python.org/issue45573#msg406084 |
erlend-aasland commented Nov 11, 2021
FYI: Holding this until GH-29164 has landed. |
bedevere-bot commented Nov 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. |
0c36eba to 1a33d5cComparebedevere-bot commented Nov 18, 2021
tiran commented Nov 18, 2021
Looks good! Great job! Let's do another buildbot run. I'll merge the PR tomorrow. |
erlend-aasland commented Nov 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 commented Nov 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.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], [ |
tiran commented Nov 19, 2021
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. |
erlend-aasland commented Nov 19, 2021
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. |
bedevere-bot commented Nov 19, 2021
erlend-aasland commented Nov 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 |
erlend-aasland commented Nov 19, 2021
|
bedevere-bot commented Nov 19, 2021
🤖 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. |
tiran left a comment
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!
erlend-aasland commented Nov 19, 2021
Finally 😆 |
koobs commented Nov 20, 2021
Great job! |
Co-authored-by: Christian Heimes <christian@python.org>
https://bugs.python.org/issue45774