Skip to content

Commit

Permalink
cmake support for linux and osx (facebook#1358)
Browse files Browse the repository at this point in the history
* enable cmake to work on linux and osx also

* port part of build_detect_platform not covered by thirdparty.inc
  to cmake.
  - detect fallocate()
  - detect malloc_usable_size()
  - detect JeMalloc
  - detect snappy
* check for asan,tsan,ubsan
* create 'build_version.cc' in build directory.
* add `check` target to support 'make check'.
* add `tools` target to match its counterpart in Makefile.
* use `date` on non-win32 platforms.
* pass different cflags on non-win32 platforms
* detect pthead library using FindThread cmake module.
* enable CMP0042 to silence the cmake warning on osx
* reorder the linked libraries. because testutillib references gtest, to
  enable the linker to find the referenced symbols, we need to put gtest
  after testutillib.

Signed-off-by: Marcus Watts <[email protected]>
Signed-off-by: Kefu Chai <[email protected]>

* hash_table_bench.cc: fix build without gflags

Signed-off-by: Kefu Chai <[email protected]>

* remove gtest from librocksdb linkage

testharness.cc is included in librocksdb sources, and it uses gtest. but
gtest is not supposed to be part of the public API of librocksdb. so, in
this change, the testharness.cc is moved out out librocksdb, and is
built as an object target, then linked with the tools and tests instead.

Signed-off-by: Marcus Watts <[email protected]>
Signed-off-by: Kefu Chai <[email protected]>
  • Loading branch information
tchaikov authored and siying committed Sep 28, 2016
1 parent 4defe30 commit 21f4bb5
Show file tree
Hide file tree
Showing 5 changed files with 322 additions and 96 deletions.
Loading

0 comments on commit 21f4bb5

Please sign in to comment.