Skip to content
Snippets Groups Projects
  1. Oct 25, 2018
  2. Oct 05, 2018
    • Alexander Turenko's avatar
      Add -Werror for CI (1.10 part) · da505ee7
      Alexander Turenko authored
      Added MAKE_BUILD_TYPE=RelWithDebInfoWError option, which means enabling
      -DNDEBUG=1, -O2 and -Wall -Wextra -Werror. This ensures we have clean
      release build without warnings.
      
      Fixed found -Wunused-variable and -Wunused-parameter warnings.
      
      Part of #3238.
      da505ee7
  3. Sep 20, 2018
  4. Sep 10, 2018
    • Kirill Yukhin's avatar
      Fix libgomp linking for static build · 0a3186c4
      Kirill Yukhin authored
      Since addition of -fopenmp to compiler also means
      addition of -lgomp to the link stage, pass -fno-openmp
      to the linking stage in case of static build. In that
      case OMP functions are statically linked into libmisc.
      
      Also, emit error if trying to perform static build using
      clang.
      0a3186c4
  5. Sep 06, 2018
    • Konstantin Osipov's avatar
    • Georgy Kirichenko's avatar
      Tarantool static build ability · cb1c72da
      Georgy Kirichenko authored
      A possibility to build tarantool with included library dependencies.
      Use the flag -DBUILD_STATIC=ON to build statically against curl, readline,
      ncurses, icu and z.
      Use the flag -DOPENSSL_USE_STATIC_LIBS=ON to build with static
      openssl
      
      Changes:
        * Add FindOpenSSL.cmake because some distributions do not support the use of
        openssl static libraries.
        * Find libssl before curl because of build dependency.
        * Catch all bundled libraries API and export then it in case of static
        build.
        * Rename crc32 internal functions to avoid a name clash with linked libraries.
      
      Notes:
        * Bundled libyaml is not properly exported, use the system one.
        * Dockerfile to build static with docker is included
      
      Fixes #3445
      cb1c72da
  6. Aug 21, 2018
    • Konstantin Belyavskiy's avatar
      Add FindICONV and iconv wrapper · dcac64af
      Konstantin Belyavskiy authored
      Fixing build under FreeBSD:
      Undefined symbol "iconv_open"
      Add compile time build check with FindICONV.cmake
      and a wrapper to import relevant symbol names with include file.
      
      Closes #3441
      dcac64af
  7. Aug 02, 2018
  8. Mar 01, 2018
  9. Jan 27, 2018
  10. Oct 13, 2017
    • Alexandr Lyapunov's avatar
      Fix build with old ICU library · 5e1fde37
      Alexandr Lyapunov authored
      Fast ucol_strcollUTF8 function was introduced in ICU 50. In older
      ICU versions we have to use slower ucol_strcollIter with properly
      initialized UTF8 iterators.
      
      Fix #2820
      5e1fde37
  11. Oct 09, 2017
  12. Oct 06, 2017
  13. Oct 05, 2017
  14. Sep 26, 2017
    • Alexander Turenko's avatar
      Add an option to allow using system ZStd · 664fc51e
      Alexander Turenko authored
      The option is '-DENABLE_BUNDLED_ZSTD' and defaults to ON.
      
      There are two goals of making this conditional, both related to building
      Tarantool on Gentoo Linux from an ebuild:
      
      * Avoid bundled ZStd building issue w/o pay to investivage it.
      * Allow user to choose between system and bundled library.
      664fc51e
  15. Sep 22, 2017
  16. Sep 18, 2017
  17. Sep 12, 2017
    • Roman Tsisyk's avatar
      Add FALLTHROUGH macro · 3ce62ef8
      Roman Tsisyk authored
      The fallthrough attribute with a null statement serves as a fallthrough
      statement. It hints to the compiler that a statement that falls through
      to another case label, or user-defined label in a switch statement is
      intentional and thus the -Wimplicit-fallthrough warning must not trigger.
      The fallthrough attribute may appear at most once in each attribute list,
      and may not be mixed with other attributes. It can only be used in a switch
      statement (the compiler will issue an error otherwise), after a preceding
      statement and before a logically succeeding case label, or user-defined
      label.
      
      https://developers.redhat.com/blog/2017/03/10/wimplicit-fallthrough-in-gcc-7/
      3ce62ef8
  18. Aug 22, 2017
    • Roman Tsisyk's avatar
      Replace gopt with getopt_long() · f6370335
      Roman Tsisyk authored
      getopt_long() is available on all supported platforms.
      Get rid of legacy gopt and use getopt_long().
      
      Incompatible changes:
      
       * `tarantool --version --no-such-option` printed
          "unrecognized option '--no-such-option'", now it displays version.
          `tarantool --no-such-option --version` still prints an error message.
      
      Needed for #1265
      f6370335
  19. Aug 03, 2017
    • Roman Tsisyk's avatar
      CMake: add -DLUAJIT_ENABLE_GC64 option · ee71b9f7
      Roman Tsisyk authored
      Add an option to enable LuaJIT's GC64 mode and enable this option
      by default on OS X.
      
      Closes #2643
      ee71b9f7
    • Roman Tsisyk's avatar
      CMake: fix LUAJIT_USE_XXX definitions · 8bc16692
      Roman Tsisyk authored
      LuaJIT has some configuration flags which can be switched via
      -DLUAJIT_USE_OPTION defines, e.g. USE_ASAN or USE_VALGRIND.
      Before this patch these definitions were added by CMake to XCFLAGS
      variable and passed to LuaJIT's Makefile. However, some of these
      flags also affect the content of lj_xxx.h internal header files,
      which were included by Tarantool (see utils.c) and compiled WITHOUT
      proper flags. This situation might lead to inconsistent ABI between
      compiled libluajit.a and Tarantool.
      
      This patch adds all LUAJIT_USE_XXX defines to CMake's COMPILE_FLAGS
      in order to enable these flags globally, then parses COMPILE_FLAGS
      and adds them to LuaJIT's XCFLAGS.
      
      Needed for #2643
      8bc16692
  20. Jul 28, 2017
  21. Jul 27, 2017
  22. Jul 24, 2017
  23. Jul 20, 2017
  24. Jul 10, 2017
    • alyapunov's avatar
      Use open MP sort optimisation only for huge arrays · 2e864b5a
      alyapunov authored
      Now open MP sort is used for any size of an array.
      For small arrays it's an overkill and even can cause overhead
      due to thread pool creation.
      
      Invoke open MP sort only for big arrays and use old good
      single-thread qsort for small arrays.
      
      Fix #2431
      2e864b5a
  25. May 29, 2017
  26. Mar 23, 2017
    • Roman Tsisyk's avatar
      Fix compilation warnings altogether · 512dd466
      Roman Tsisyk authored
      * Supress warnings in third-party code.
      * Fix false-positive "variable may be used uninitialized in this function"
      * Add MAYBE_UNUSED to variables used only for assertions
      * Fix compilation on GCC 6.3.0 20170205
      * Fix compilation on GCC 7.0.1 20170316
      * Fix compilation on Clang 5.0.0-svn294894-1
      512dd466
  27. Mar 14, 2017
  28. Feb 21, 2017
    • Roman Tsisyk's avatar
      Refactor pthread_attr_get_np/pthread_getattr_np usage · c66450af
      Roman Tsisyk authored
      * Move platform-specific defines to tt_pthread.h
      * Set sched.coro.stack only with ENABLE_ASAN
      
      Please note that pthread_getattr_np() + pthread_attr_destroy()
      combination is totaly broken on Glibc 2.12 (RHELL 6.x).
      
      Fixes #2085
      c66450af
  29. Feb 15, 2017
  30. Feb 13, 2017
  31. Feb 11, 2017
    • Roman Tsisyk's avatar
      NetBSD port · 870e8d71
      Roman Tsisyk authored
      * Check for missing cpuid.h header
      * Fix sed magic in extra/mkexports
      * Fix open_memstream implementation
      * Fix CLOCK_PROCESS_CPUTIME_ID / CLOCK_THREAD_CPUTIME_ID
      * Disable stupid -Wchar-subscripts warnings
      * Add a workaround for "undefined __gcc_personality_v0"
      
      Tested on NetBSD 7 and on x86_64-rumprun-netbsd.
      Now you can use Tarantool on toasters.
      870e8d71
    • Roman Tsisyk's avatar
      CMake: add support for cross-compilation · 86c5c700
      Roman Tsisyk authored
       * Fix cross-compilation of LuaJIT
       * Fix txt2c and bin2c for cross-compilation
       * Check for invalid CMAKE_SYSTEM_PROCESSOR values
      86c5c700
    • Roman Tsisyk's avatar
      CMake: add support for curses/ncurses for libreadline · ca162d45
      Roman Tsisyk authored
      libreadline needs termcap OR curses/ncurses.
      ca162d45
  32. Jan 09, 2017
    • Veniamin Gvozdikov's avatar
      Fix build on FreeBSD · 3c9ba366
      Veniamin Gvozdikov authored
      * Add HAVE_PTHREAD_ATTR_GET_NP to detect pthread_attr_get_np
      * Add relation from pthread_attr_get_np to pthread_getattr_np as define
      * Support BSD sed for mkexports
      
      Fixes #2010
      3c9ba366
  33. Dec 23, 2016
    • Roman Tsisyk's avatar
      Initial support for valgrind · a27607d1
      Roman Tsisyk authored
      This patch is not perfect, but it is better than nothing.
      
      + Remove third_party/valgrind and third_party/pmatomic which
        also exist in src/lib/small/third_party.
      a27607d1
Loading