Tarantool development patches archive
 help / color / mirror / Atom feed
From: "Alexander V. Tikhonov" <avtikhon@tarantool.org>
To: Oleg Piskunov <o.piskunov@tarantool.org>,
	Sergey Bronnikov <sergeyb@tarantool.org>,
	Alexander Turenko <alexander.turenko@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org
Subject: [Tarantool-patches] [PATCH v1 0/4] implement OOS build
Date: Fri, 22 May 2020 15:49:47 +0300	[thread overview]
Message-ID: <cover.1590151460.git.avtikhon@tarantool.org> (raw)

1) gitlab-ci: add out-of-source build
    
Implemented out-of-source build at cmake files.
Added out of source build make targets and added
test job to gitlab-ci.
    
Skipped failing test app-tap/http_client.test.lua
from out-of-source build. Left #4258 issue opened
till it will be fixed.
    
Temporary added branch in curl repository
with fix for out-of-source build.
    
2) build: port autoconf to cmake in curl build
    
Changed autoconf tools in Curl build to cmake use for builds where
cmake major starts from 3. It was made so because cmake in curl
build works only with 3.0 version and above, the following issue
found on:
  CentOS 6,7
  Ubuntu 14.04
  
Issue with curl cmake based build with cmake before 3.0 version:
  CMake Error at CMakeLists.txt:41 (cmake_minimum_required):
    CMake 3.0 or higher is required.  You are running version 2.8.12.2

For curl cmake buld all autoconf options were ported to cmake
configuration call.
    
Also found that CURL cmake configuration file:
  third_party/curl/lib/CMakeLists.txt
    
has installation part for built libcurl.a library:
  install(TARGETS ${LIB_NAME}
    EXPORT ${TARGETS_EXPORT_NAME}
      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
    
where it changes CMAKE_INSTALL_LIBDIR to appropriate name with
  suffix of the architecture, like:
    lib
    lib64
    x86_64
    
Found that find_library routine from the file:
  cmake/FindLibCURL.cmake
    
returns only 'lib' value and it breaks the building of the depends
binaries. To avoid of it the CMAKE_INSTALL_LIBDIR option was set to
cmake call:
  -DCMAKE_INSTALL_LIBDIR=lib
    
Closes #4874
Closes #4968

---

Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-4874-out-of-source-build-full-ci
Issue: https://github.com/tarantool/tarantool/issues/4968
Issue: https://github.com/tarantool/tarantool/issues/4874

Alexander V. Tikhonov (4):
  build: port autoconf to cmake in curl build
  Fix curl repository for out-of-source build
  Skip failing test from out-of-source build
  gitlab-ci: add out-of-source build

 .gitlab-ci.yml                    |   7 +
 .travis.mk                        |  26 ++++
 cmake/BuildLibCURL.cmake          | 240 +++++++++++++++++-------------
 cmake/utils.cmake                 |   4 +-
 src/box/CMakeLists.txt            |   1 +
 test/app-tap/http_client.skipcond |   5 +
 third_party/curl                  |   2 +-
 7 files changed, 180 insertions(+), 105 deletions(-)

-- 
2.17.1

             reply	other threads:[~2020-05-22 12:49 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-22 12:49 Alexander V. Tikhonov [this message]
2020-05-22 12:49 ` [Tarantool-patches] [PATCH v1 1/4] build: port autoconf to cmake in curl build Alexander V. Tikhonov
2020-05-22 12:49 ` [Tarantool-patches] [PATCH v1 2/4] Fix curl repository for out-of-source build Alexander V. Tikhonov
2020-05-22 12:49 ` [Tarantool-patches] [PATCH v1 3/4] Skip failing test from " Alexander V. Tikhonov
2020-05-22 12:49 ` [Tarantool-patches] [PATCH v1 4/4] gitlab-ci: add " Alexander V. Tikhonov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1590151460.git.avtikhon@tarantool.org \
    --to=avtikhon@tarantool.org \
    --cc=alexander.turenko@tarantool.org \
    --cc=o.piskunov@tarantool.org \
    --cc=sergeyb@tarantool.org \
    --cc=tarantool-patches@dev.tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH v1 0/4] implement OOS build' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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