[devel] MySQL в p9 (was: I: cmake macros)

Arseny Maslennikov arseny на altlinux.org
Ср Июл 7 14:35:48 MSK 2021


On Wed, Jul 07, 2021 at 01:37:25PM +0300, Nikolai Kostrigin wrote:
> Здравствуйте!
> 
> Имеем следующую картину для "-DWITH_BOOST=boost/boost_1_73_0 \" в spec
> MySQL:
> 
> - cmake из Sisyphus (_cmake__builddir = x86_64-alt-linux) ищет и находит
> (не без помощи Вашего патча [1], конечно)
> 
> -- Local boost dir /usr/src/RPM/BUILD/MySQL-8.0.25/boost/boost_1_73_0
> -- Found
> /usr/src/RPM/BUILD/MySQL-8.0.25/boost/boost_1_73_0/boost/version.hpp
> -- BOOST_VERSION_NUMBER is #define BOOST_VERSION 107300
> -- BOOST_INCLUDE_DIR /usr/src/RPM/BUILD/MySQL-8.0.25/boost/boost_1_73_0
> 
> 
> - в то же время, для p9, c тем же спеком (_cmake__builddir = BUILD)
> 
> не находит:
> 
> -- WITH_BOOST=/usr/src/RPM/BUILD/MySQL-8.0.25/BUILD/boost/boost_1_73_0
> -- BOOST_INCLUDE_DIR
> -- LOCAL_BOOST_DIR LOCAL_BOOST_DIR-NOTFOUND
> -- LOCAL_BOOST_ZIP LOCAL_BOOST_ZIP-NOTFOUND
> -- Could not find (the correct version of) boost.
> -- MySQL currently requires boost_1_73_0
> 
> CMake Error at cmake/boost.cmake:107 (MESSAGE):
>   You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
> 
> Видим, что ищет он в BUILD/boost/boost_1_73_0, а не в
> boost/boost_1_73_0, как версия из Сизифа.
> 
> Это ожидаемое поведение и каждый должен городить костыли (чего не
> хотелось бы, конечно) или Вы поправите поведение макросов в p9?
> 

Здравствуйте!

Пробую воспроизвести описанный вами случай; взял ветку sisyphus из
git.altlinux.org/gears/M/MySQL.git и собираю в окружении p9:

% cat ~/p9-apt/apt.conf    
Dir::Etc::main "/dev/null";
Dir::Etc::parts "/var/empty";
Dir::Etc::SourceParts "/var/empty";
Dir::Etc::SourceList "/home/user/p9-apt/sources.list";
% cat ~/p9-apt/sources.list
rpm [p9] http://ftp.altlinux.org/pub/distributions/ALTLinux p9/branch/x86_64 classic
rpm [p9] http://ftp.altlinux.org/pub/distributions/ALTLinux p9/branch/noarch classic

Заканчивается сборка следующим образом:

hsh-rebuild: pkg.tar: installed source file.
hsh-rebuild: pkg.tar: fetched build dependencies.
hsh-rebuild: pkg.tar: calculated build dependencies: 
'/usr/bin/hsh-buildreq-filter' -> 'chroot/.host/hsh-buildreq-filter'
warning: Macro %cmake not found
warning: Macro %cmake_build not found
warning: Macro %cmakeinstall_std not found
hsh-rebuild: pkg.tar: fetched build dependencies.
hsh-rebuild: pkg.tar: calculated build dependencies: ccmake chrooted gcc-c++ libaio-devel libedit-devel libevent-devel liblz4-devel libncurses-devel libssl-devel zlib-devel libsystemd-devel protobuf-compiler libprotobuf-lite-devel libtirpc-devel rpcgen
hsh-install: changed working directory to `/home/user/hasher-cmake-p9'
Reading Package Lists...
Building Dependency Tree...
E: Couldn't find package rpcgen
hsh-install: Failed to calculate package file list.
hsh-install: Failed to generate package file list.
gear --hasher -- hsh --apt-config=/home/user/p9-apt/apt.conf -v --lazy-cleanup   27,45s user 18,14s system 64% cpu 1:11,09 total 750k maxrss

До rpmbuild -bb даже не доходит. Т. е. этот спек непригоден для p9 по
независимым от cmake причинам.

Если я что-то делаю не так, то подскажите, пожалуйста, что именно.

> [1]
> http://git.altlinux.org/gears/M/MySQL.git?p=MySQL.git;a=commitdiff;h=1758a2882ac622119f9bed8a2d163b2de998e26b
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 833 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20210707/bbfe1467/attachment.bin>


Подробная информация о списке рассылки Devel