Skip to content
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

Revert "sqlite{,-analyzer}: use the same src (#40945)" #41128

Merged
merged 1 commit into from May 27, 2018

Conversation

dtzWill
Copy link
Member

@dtzWill dtzWill commented May 27, 2018

This reverts commit e28a586.

autoconf doesn't set things the same way,
and as a result it seems that Nix built against this
is prone to crashing.

Quick comparison of the build logs and output artifacts:

on master (and after this PR):

  • -D_REENTRANT=1
  • references __assert_fail so asserts are probably enabled.
    • (good thing IMO)
  • references posix_fallocate64, strerror_r (glibc variant, and happily the posix/xsi variant as provided by musl)
  • Nix built against it no longer crashes \o/

current staging (without this PR):

  • nicer expression
  • picks up malloc_usable_size, strchrnul, utime
  • Nix built against this crashes

It's likely we can get the "best of both" with some effort/investigation,
but for now I suggest reverting this so it builds a working Nix again :).

  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@dtzWill
Copy link
Member Author

dtzWill commented May 27, 2018

Hmm...

@xeji
Copy link
Contributor

xeji commented May 27, 2018

According to https://www.sqlite.org/download.html , sqlite-src is a copy of the raw source tree, sqlite-autoconf and sqlite-amalgamation contain a pre-processed source that essentially puts everything into a single big .c file, which results in better runtime performance (see https://www.sqlite.org/amalgamation.html). But it looks like sqlite_analyzer cannot be build from the "amalgamated" source, so besides the issues with nix, we lose that performance gain if we build everything from the raw source tree.

cc @yegortimoshenko

@lukateras lukateras merged commit dac633f into NixOS:staging May 27, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants