Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 628458

Summary: dev-db/mariadb-10.2.8: fails to build due to check_systemd
Product: Gentoo Linux Reporter: Daniel M. Weeks <dan>
Component: Current packagesAssignee: Gentoo Linux MySQL bugs team <mysql-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: gentoo-bugs, ivanhoe, leonchik1976, marcan, mgorny, rose
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: fixed ebuild

Description Daniel M. Weeks 2017-08-21 03:28:37 UTC
CMake Error at cmake/systemd.cmake:77 (MESSAGE):
  Invalid value for WITH_SYSTEMD.  Must be 'yes', 'no', or 'auto'.
Call Stack (most recent call first):
  CMakeLists.txt:333 (CHECK_SYSTEMD)

It appears this option was always (recently) case-sensitive in mariadb it just had poor checking and this was "fixed" by commit 1093c0f2dd9bf44a6e89c3406c6ae4aa3f4e8fbf.

It appears based on tags that 10.1.26 may also be affected but I have not checked.

Reproducible: Always
Comment 1 Daniel M. Weeks 2017-08-21 03:30:09 UTC
For reference the ebuild currently generates -DWITH_SYSTEMD=NO or -DWITH_SYSTEMD=YES by way of usex defaults.
Comment 2 Андрей 2017-08-21 06:03:48 UTC
If you change "-DWITH_SYSTEMD = NO" to "-DWITH_SYSTEMD = no", the 24 line in mariadb-10.2.8.ebuild was compiled, but the process crashes during the installation phase. I could not decide, but maybe this information will help me find a solution(In reply to Daniel M. Weeks from comment #1)
> For reference the ebuild currently generates -DWITH_SYSTEMD=NO or
> -DWITH_SYSTEMD=YES by way of usex defaults.

If you change "-DWITH_SYSTEMD = NO" to "-DWITH_SYSTEMD = no", the 465 line in mariadb-10.2.8.ebuild, was compiled, but the process falls during the installation phase. I did not find a solution, but this information will help to find a solution

---------
* Header files have changed between ABIs.
 * --- /var/tmp/portage/dev-db/mariadb-10.2.8/temp/.multilib_header_cksum	2017-08-21 08:12:17.305475949 +0300
 * +++ /var/tmp/portage/dev-db/mariadb-10.2.8/temp/.multilib_header_cksum.new	2017-08-21 08:12:19.172442297 +0300
 * @@ -1,175 +1,275 @@
----------
* ERROR: dev-db/mariadb-10.2.8::gentoo failed (install phase):
 *   Header checksum mismatch, aborting.
Comment 3 Juergen Rose 2017-08-21 07:35:49 UTC
The same issue here.
Comment 4 Hector Martin 2017-08-21 13:05:53 UTC
The usex defaults are lowercase. The problem is line 485 which hardcodes -DWITH_SYSTEMD=NO on non-native multilib ABIs.

The header checksum mismatch issue is unrelated and apparently caused by the server build installing a bunch of extra headers.
Comment 5 Ivan Iraci 2017-08-21 13:08:26 UTC
Same problem here.
Comment 6 Hector Martin 2017-08-21 13:15:41 UTC
Created attachment 489896 [details]
fixed ebuild

Fixed ebuild attached. Basically it looks like this package was version bumped but not tested in a multilib environment, so several things were broken in that scenario.
Comment 7 Brian Evans (RETIRED) gentoo-dev 2017-08-21 17:09:23 UTC
commit 1740d628f659f14df060c62f8b06af57d70ce67a
Author: Brian Evans <grknight@gentoo.org>
Date:   Mon Aug 21 13:06:22 2017 -0400

    dev-db/mariadb: Fix bugs relating to multilib, systemd and numa

    Bug 628484 - Add USE flag numa to pull in sys-process/numactl for build/runtime
    Bug 628458 - Fix systemd case sensitivity in configure merged from 10.1 branch
    Bug 628458 - Fix multilib header file changes that lead to build failure

    Package-Manager: Portage-2.3.8, Repoman-2.3.3