Bug #97278 MySQL 5.7.28 debuild fails because of embedded -DWITH_SSL= build host path
Submitted: 18 Oct 2019 5:45 Modified: 15 Apr 2021 13:13
Reporter: Kentaro Hayashi Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Packaging Severity:S3 (Non-critical)
Version:5.7.28 OS:Ubuntu (Ubuntu 16.04.6 LTS)
Assigned to: Lars Tangvald CPU Architecture:Any

[18 Oct 2019 5:45] Kentaro Hayashi
Description:
-DWITH_SSL option is hardcoded in debian/rules, so package rebuild has failed because of embedded build host path.

Here is the last result of debuild.

-- 
Wrong option or path for WITH_SSL=/export/home/pb2/build/sb_0-36131509-1569568392.28/dep2.
Make sure you have specified a supported SSL version. 
Valid options are : 
system (use the OS openssl library), 
yes (synonym for system), 
</path/to/custom/openssl/installation>

CMake Error at cmake/ssl.cmake:66 (MESSAGE):
  Please install the appropriate openssl developer package.

Call Stack (most recent call first):
  cmake/ssl.cmake:265 (FATAL_SSL_NOT_FOUND_ERROR)
  CMakeLists.txt:573 (MYSQL_CHECK_SSL)

-- Configuring incomplete, errors occurred!

This is caused by the following line:

override_dh_auto_configure:
        @echo "RULES.$@"

        
        mkdir debug && cd debug && \
        cmake .. \
     -DWITH_BOOST=/usr/global/share -DWITH_GMOCK=/usr/global/share \
                -DBUILD_CONFIG=mysql_release \
                -DCMAKE_INSTALL_PREFIX=/usr \
                -DCMAKE_BUILD_TYPE=Debug \
                -DINSTALL_DOCDIR=share/mysql/docs \
                -DINSTALL_DOCREADMEDIR=share/mysql \
                -DINSTALL_INCLUDEDIR=include/mysql \
                -DINSTALL_INFODIR=share/mysql/docs \
                -DINSTALL_LIBDIR=lib/$(DEB_HOST_MULTIARCH) \
                -DINSTALL_MANDIR=share/man \
                -DINSTALL_MYSQLSHAREDIR=share/mysql \
                -DINSTALL_MYSQLTESTDIR=lib/mysql-test \
                -DINSTALL_PLUGINDIR=lib/mysql/plugin \
                -DINSTALL_SBINDIR=sbin \
                -DINSTALL_SUPPORTFILESDIR=share/mysql \
                -DSYSCONFDIR=/etc/mysql \
                -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \
-DWITH_SSL=/export/home/pb2/build/sb_0-36131509-1569568392.28/dep2 \
                -DWITH_INNODB_MEMCACHED=1 \
                -DWITH_MECAB=system \
                -DWITH_NUMA=ON \
                -DCOMPILATION_COMMENT="MySQL Community Server (GPL)" \
                -DINSTALL_LAYOUT=DEB \
                -DDEB_PRODUCT=community \

How to repeat:

$ apt source mysql-community-server
$ cd mysql-community-5.7.28
$ vi debian/rules (Enable -DDOWNLOAD_BOOST=1)
$ debuild

Suggested fix:
Just remove -DWITH_SSL=/export/home/pb2/build/sb_0-36131509-1569568392.28/dep2 or fix to appropriate path.
[21 Oct 2019 8:49] Lars Tangvald
This is a consequence of our builds using a set, statically linked OpenSSL, but it should be possible to change it to seamlessly use the system version instead.
[15 Apr 2021 13:13] Terje Røsten
This was fixed some time ago by:

 https://github.com/mysql/mysql-server/commit/d39d6a51dac0f49196e4e280e0105f23db452812#diff...
[15 Apr 2021 13:15] Terje Røsten
Posted by developer:
 
Fixed by WL#13289, this commit:

 https://github.com/mysql/mysql-server/commit/d39d6a51dac0f49196e4e280e0105f23db452812#diff...