[tarantool-patches] Re[2]: [PATCH] build: enable bundled libyaml for all systems.
Sergey Petrenko
sergepetrenko at tarantool.org
Tue Jul 23 00:48:23 MSK 2019
Hi! Thank you for review.
>Понедельник, 22 июля 2019, 10:10 +03:00 от Alexander Turenko <alexander.turenko at tarantool.org>:
>
>We have -DBUILD_SHARED_LIBS=ON cmake option globally enabled on CentOS /
>Fedora, so libyaml is linked into src/tarantool dynamically.
>
>$ git checkout origin/sp/gh-4090-enable-bundled-libyaml-full-ci
>$ cmake . -DCMAKE_BUILD_TYPE=Debug -DENABLE_BACKTRACE=ON -DENABLE_DIST=ON -DBUILD_SHARED_LIBS=ON && make -j
>$ ldd src/tarantool | grep yaml
>libyaml.so => /home/alex/p/tarantool-meta/r/t-2/third_party/libyaml/libyaml.so (0x00007ff0c96de000)
>$ rm /home/alex/p/tarantool-meta/r/t-2/third_party/libyaml/libyaml.so
>$ ldd src/tarantool | grep yaml
>libyaml.so => /usr/lib64/libyaml.so (0x00007f6cc379e000)
>
>This means that tarantool executable cannot be relocated to another
>system w/o libyaml.so. I see no reason to build a bundled library
>dynamically, so maybe ENABLE_BUNDLED_LIBYAML should enable static build
>for libyaml and should have precedence over BUILD_SHARED_LIBS. I don't
>sure however that this is good practice, so I'll ask 2nd review from
>someone else when you'll fix this problem in this or another way.
I addressed this issue in a patch to tarantool/libyaml. Please check it out.
This patch remains intact.
>
>
>WBR, Alexander Turenko.
>
>On Sun, Jul 21, 2019 at 04:25:57PM +0300, Serge Petrenko wrote:
>> After we fixed bundled libyaml to correctly print 4-byte Unicode
>> characters, it is no longer compatible with the upstream version, so
>> enable building with bundled libyaml for every platform.
>> This way the tests will pass.
>>
>> Follow-up #4090
>> ---
>> https://github.com/tarantool/tarantool/issues/4090
>> https://github.com/tarantool/tarantool/tree/sp/gh-4090-enable-bundled-libyaml-full-ci
>>
>> apk/APKBUILD | 2 --
>> cmake/BuildLibYAML.cmake | 2 +-
>> debian/rules | 1 -
>> rpm/tarantool.spec | 1 -
>> snapcraft.yaml | 1 -
>> 5 files changed, 1 insertion(+), 6 deletions(-)
>>
>> diff --git a/apk/APKBUILD b/apk/APKBUILD
>> index e8ea5aa13..7d61aa4a5 100644
>> --- a/apk/APKBUILD
>> +++ b/apk/APKBUILD
>> @@ -23,10 +23,8 @@ build() {
>> cd "$builddir"
>>
>> cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
>> - -DENABLE_BUNDLED_LIBYAML:BOOL=OFF \
>> -DENABLE_BACKTRACE:BOOL=ON \
>> -DENABLE_DIST:BOOL=ON \
>> - -DENABLE_BUNDLED_LIBYAML:BOOL=OFF \
>> -DCMAKE_INSTALL_PREFIX=/usr \
>> -DCMAKE_INSTALL_SYSCONFDIR=/etc \
>> -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
>> diff --git a/cmake/BuildLibYAML.cmake b/cmake/BuildLibYAML.cmake
>> index 7caa1828c..95068d73a 100644
>> --- a/cmake/BuildLibYAML.cmake
>> +++ b/cmake/BuildLibYAML.cmake
>> @@ -6,7 +6,7 @@ macro(libyaml_build)
>>
>> add_subdirectory(${PROJECT_SOURCE_DIR}/third_party/libyaml EXCLUDE_FROM_ALL)
>> # See comments in BuildLibEV.cmake
>> - set_target_properties(yaml PROPERTIES COMPILE_FLAGS "-w")
>> + set_target_properties(yaml PROPERTIES COMPILE_FLAGS "-w -std=c99")
>>
>> find_package_message(LIBYAML
>> "Using bundled libyaml"
>> diff --git a/debian/rules b/debian/rules
>> index edfecfc33..904eaa719 100755
>> --- a/debian/rules
>> +++ b/debian/rules
>> @@ -15,7 +15,6 @@ DEB_CMAKE_EXTRA_FLAGS := \
>> -DCMAKE_INSTALL_LIBDIR=lib/$(DEB_HOST_MULTIARCH) \
>> -DCMAKE_INSTALL_SYSCONFDIR=/etc \
>> -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
>> - -DENABLE_BUNDLED_LIBYAML=OFF \
>> -DENABLE_DIST=ON \
>> -DWITH_SYSVINIT=ON \
>> -DWITH_SYSTEMD=$(WITH_SYSTEMD)
>> diff --git a/rpm/tarantool.spec b/rpm/tarantool.spec
>> index 8bee71ed0..002df26b1 100644
>> --- a/rpm/tarantool.spec
>> +++ b/rpm/tarantool.spec
>> @@ -124,7 +124,6 @@ C and Lua/C modules.
>> %cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo \
>> -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=%{_localstatedir} \
>> -DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \
>> - -DENABLE_BUNDLED_LIBYAML:BOOL=OFF \
>> %if %{with backtrace}
>> -DENABLE_BACKTRACE:BOOL=ON \
>> %else
>> diff --git a/snapcraft.yaml b/snapcraft.yaml
>> index a7ce540cb..48b32a890 100644
>> --- a/snapcraft.yaml
>> +++ b/snapcraft.yaml
>> @@ -25,7 +25,6 @@ parts:
>> plugin: cmake
>> configflags:
>> - -DCMAKE_BUILD_TYPE=RelWithDebInfo
>> - - -DENABLE_BUNDLED_LIBYAML=OFF
>> - -DENABLE_DIST=OFF # Disable tarantoolctl, init scripts, etc.
>> build-packages:
>> - cmake
>> --
>> 2.20.1 (Apple Git-117)
>>
--
Sergey Petrenko
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.tarantool.org/pipermail/tarantool-patches/attachments/20190723/0f7c5cbc/attachment.html>
More information about the Tarantool-patches
mailing list