Tarantool development patches archive
 help / color / mirror / Atom feed
* [Tarantool-patches] [PATCH v1] build: fix static build w/ dockerfile with cmake
@ 2020-06-29 13:23 Alexander V. Tikhonov
  2020-07-03 11:32 ` Alexander Turenko
  0 siblings, 1 reply; 3+ messages in thread
From: Alexander V. Tikhonov @ 2020-06-29 13:23 UTC (permalink / raw)
  To: Kirill Yukhin, Alexander Turenko; +Cc: tarantool-patches

Building the image got the issue:

  [  1%] Performing configure step for 'bundled-libcurl-project'
  CMake Warning at CMakeLists.txt:50 (message):
    the curl cmake build system is poorly maintained.  Be aware

  -- curl version=[7.66.0-DEV]
  -- Found c-ares: /tarantool/build/ares/dest/lib/libcares.a
  Found *nroff option: -- -man
  CMake Error at /usr/share/cmake/Modules/FindOpenSSL.cmake:278 (list):
    list GET given empty list
  Call Stack (most recent call first):
    CMakeLists.txt:347 (find_package)

Root cause of the issue that Dockerfile uses globaly
installed openSSL with:

  cmake ... -DOPENSSL_ROOT_DIR=/usr/local ...

Its cmake build file:

  /usr/share/cmake/Modules/FindOpenSSL.cmake

fails on parsing the SSL version:

it has:
       REGEX "^#define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x([0-9a-fA-F])+.*")

but it should to use:
       REGEX "^#[\t ]*define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x([0-9a-fA-F])+.*")

Closes #5019
---

Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-5019-findopenssl-dockerfile
Issue: https://github.com/tarantool/tarantool/issues/5019

 Dockerfile.staticbuild | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Dockerfile.staticbuild b/Dockerfile.staticbuild
index 253f2d5e9..cb6c12e94 100644
--- a/Dockerfile.staticbuild
+++ b/Dockerfile.staticbuild
@@ -86,6 +86,8 @@ RUN set -x && \
          -DOPENSSL_USE_STATIC_LIBS=ON \
          -DOPENSSL_ROOT_DIR=/usr/local \
          . && \
+    sed 's%#define%#[\\t ]*define%g' -i \
+        /usr/share/cmake/Modules/FindOpenSSL.cmake && \
     make -j && make install
 
 ARG RUN_TESTS
-- 
2.17.1

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Tarantool-patches] [PATCH v1] build: fix static build w/ dockerfile with cmake
  2020-06-29 13:23 [Tarantool-patches] [PATCH v1] build: fix static build w/ dockerfile with cmake Alexander V. Tikhonov
@ 2020-07-03 11:32 ` Alexander Turenko
  2020-07-10  9:26   ` Alexander V. Tikhonov
  0 siblings, 1 reply; 3+ messages in thread
From: Alexander Turenko @ 2020-07-03 11:32 UTC (permalink / raw)
  To: Alexander V. Tikhonov; +Cc: tarantool-patches

> Closes #5019

Since it is now out of the patchset, where curl is build using cmake, it
should be clarified that the problem only appears after switching curl
to build using cmake.

> ---
> 
> Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-5019-findopenssl-dockerfile
> Issue: https://github.com/tarantool/tarantool/issues/5019
> 
>  Dockerfile.staticbuild | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/Dockerfile.staticbuild b/Dockerfile.staticbuild
> index 253f2d5e9..cb6c12e94 100644
> --- a/Dockerfile.staticbuild
> +++ b/Dockerfile.staticbuild
> @@ -86,6 +86,8 @@ RUN set -x && \
>           -DOPENSSL_USE_STATIC_LIBS=ON \
>           -DOPENSSL_ROOT_DIR=/usr/local \
>           . && \
> +    sed 's%#define%#[\\t ]*define%g' -i \
> +        /usr/share/cmake/Modules/FindOpenSSL.cmake && \
>      make -j && make install

In fact it means that we'll not actually support cmake 2.8, not even
3.0 / 3.1, but only cmake since v3.1.1-1-gc5d9a8283c.

Can we pass custom CMAKE_MODULE_PATH with our cmake/ directory to curl?

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Tarantool-patches] [PATCH v1] build: fix static build w/ dockerfile with cmake
  2020-07-03 11:32 ` Alexander Turenko
@ 2020-07-10  9:26   ` Alexander V. Tikhonov
  0 siblings, 0 replies; 3+ messages in thread
From: Alexander V. Tikhonov @ 2020-07-10  9:26 UTC (permalink / raw)
  To: Alexander Turenko; +Cc: tarantool-patches

Hi Alexander, you are right, CMAKE_MODULE_PATH customization helped with
the issue. So the fix is moving to curl cmake build update.

On Fri, Jul 03, 2020 at 02:32:30PM +0300, Alexander Turenko wrote:
> > Closes #5019
> 
> Since it is now out of the patchset, where curl is build using cmake, it
> should be clarified that the problem only appears after switching curl
> to build using cmake.
> 
> > ---
> > 
> > Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-5019-findopenssl-dockerfile
> > Issue: https://github.com/tarantool/tarantool/issues/5019
> > 
> >  Dockerfile.staticbuild | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/Dockerfile.staticbuild b/Dockerfile.staticbuild
> > index 253f2d5e9..cb6c12e94 100644
> > --- a/Dockerfile.staticbuild
> > +++ b/Dockerfile.staticbuild
> > @@ -86,6 +86,8 @@ RUN set -x && \
> >           -DOPENSSL_USE_STATIC_LIBS=ON \
> >           -DOPENSSL_ROOT_DIR=/usr/local \
> >           . && \
> > +    sed 's%#define%#[\\t ]*define%g' -i \
> > +        /usr/share/cmake/Modules/FindOpenSSL.cmake && \
> >      make -j && make install
> 
> In fact it means that we'll not actually support cmake 2.8, not even
> 3.0 / 3.1, but only cmake since v3.1.1-1-gc5d9a8283c.
> 
> Can we pass custom CMAKE_MODULE_PATH with our cmake/ directory to curl?

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-07-10  9:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-29 13:23 [Tarantool-patches] [PATCH v1] build: fix static build w/ dockerfile with cmake Alexander V. Tikhonov
2020-07-03 11:32 ` Alexander Turenko
2020-07-10  9:26   ` Alexander V. Tikhonov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox