utsaslab / pebblesdb

The PebblesDB write-optimized key-value store (SOSP 17)
BSD 3-Clause "New" or "Revised" License
506 stars 99 forks source link

Add CMake build system #12

Closed xxks-kkk closed 6 years ago

xxks-kkk commented 6 years ago

This pull request contains the following changes:

Verification:

mkdir -p build && cd build
cmake .. && make install -j16
make db_test
./db_test
vijay03 commented 6 years ago

Hi,

Thanks again for your work on this! I tried locally testing the pull request on my Mac OSX 10.11.6 environment, and it wouldn't compile. I'm not sure if I'm missing new dependencies. CMakeError.log CMakeOutput.log

I'll look into this again in a bit, but it would be helpful if you could look and see if I'm missing something since PebblesDB used to compile previously for me.

xxks-kkk commented 6 years ago

Hi Vijay,

From the error log you posted, I see there are several header files cannot be located on your system

/Users/vijay/work/pebblesdb/build/CMakeFiles/CMakeTmp/CheckIncludeFile.c:1:10: fatal error: 'endian.h' file not found
#include <endian.h>
         ^
1 error generated.

Those headers include endian.h, sys/endian.h, sys/isa_defs.h. I'm investigating why this is the case. Meanwhile, can you please paste the output of cmake ..? Also, Can you also help to confirm that there is no such problem when building with Autotools?

Thanks!

vijay03 commented 6 years ago

I've attached the cmake output in the previous comment. I can confirm I can successfully build the master branch.

xxks-kkk commented 6 years ago

Sorry for my bad wording. Can you please paste the terminal output of the command cmake .. . Also, I check with my local "CMakeError.log", the missing header is not the root cause of the problem (i.e., I have several headers missing as well but can still build). I guess the terminal output of the commands cmake .. and make all -j4 will help in this case.

vijay03 commented 6 years ago

cmake output:

-- CMAKE_SOURCE_DIR: /Users/vijay/work/pebblesdb -- PROJECT_SOURCE_DIR: /Users/vijay/work/pebblesdb/src CMake Error: File /Users/vijay/work/pebblesdb/src/config.h.in.forcmake does not exist. CMake Error at CMakeLists.txt:89 (configure_file): configure_file Problem configuring file

-- C++ flags: -std=c++11 -Wall -Wno-variadic-macros -fno-builtin-memcmp -fno-builtin-memmove -Qunused-arguments -- APPLE=1 -- CMAKE_AR=/Library/Developer/CommandLineTools/usr/bin/ar -- CMAKE_AR=/Library/Developer/CommandLineTools/usr/bin/ar -- CMAKE_AUTOMOC_COMPILER_PREDEFINES=ON -- CMAKE_AUTOMOC_MACRO_NAMES=Q_OBJECT;Q_GADGET;Q_NAMESPACE -- CMAKE_BASE_NAME=c++ -- CMAKE_BINARY_DIR=/Users/vijay/work/pebblesdb/build -- CMAKE_BUILD_TOOL=/usr/bin/make -- CMAKE_BUILD_TYPE= -- CMAKE_C11_COMPILE_FEATURES=c_std_11;c_static_assert -- CMAKE_C11_EXTENSION_COMPILE_OPTION=-std=gnu11 -- CMAKE_C11_STANDARD_COMPILE_OPTION=-std=c11 -- CMAKE_C90_COMPILE_FEATURES=c_std_90;c_function_prototypes -- CMAKE_C90_EXTENSION_COMPILE_OPTION=-std=gnu90 -- CMAKE_C90_STANDARD_COMPILE_OPTION=-std=c90 -- CMAKE_C99_COMPILE_FEATURES=c_std_99;c_restrict;c_variadic_macros -- CMAKE_C99_EXTENSION_COMPILE_OPTION=-std=gnu99 -- CMAKE_C99_STANDARD_COMPILE_OPTION=-std=c99 -- CMAKE_CACHEFILE_DIR=/Users/vijay/work/pebblesdb/build -- CMAKE_CACHE_MAJOR_VERSION=3 -- CMAKE_CACHE_MINOR_VERSION=12 -- CMAKE_CACHE_PATCH_VERSION=0 -- CMAKE_CFG_INTDIR=. -- CMAKE_COLOR_MAKEFILE=ON -- CMAKE_COMMAND=/usr/local/Cellar/cmake/3.12.0/bin/cmake -- CMAKE_CPACK_COMMAND=/usr/local/Cellar/cmake/3.12.0/bin/cpack -- CMAKE_CROSSCOMPILING=FALSE -- CMAKE_CTEST_COMMAND=/usr/local/Cellar/cmake/3.12.0/bin/ctest -- CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES=/usr/include -- CMAKE_CURRENT_BINARY_DIR=/Users/vijay/work/pebblesdb/build -- CMAKE_CURRENT_LIST_DIR=/Users/vijay/work/pebblesdb -- CMAKE_CURRENT_LIST_FILE=/Users/vijay/work/pebblesdb/CMakeLists.txt -- CMAKE_CURRENT_SOURCE_DIR=/Users/vijay/work/pebblesdb -- CMAKE_CXX11_COMPILE_FEATURES=cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates -- CMAKE_CXX11_EXTENSION_COMPILE_OPTION=-std=gnu++11 -- CMAKE_CXX11_STANDARD_COMPILE_OPTION=-std=c++11 -- CMAKE_CXX14_COMPILE_FEATURES=cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates -- CMAKE_CXX14_EXTENSION_COMPILE_OPTION=-std=gnu++14 -- CMAKE_CXX14_STANDARD_COMPILE_OPTION=-std=c++14 -- CMAKE_CXX17_COMPILE_FEATURES=cxx_std_17 -- CMAKE_CXX17_EXTENSION_COMPILE_OPTION=-std=gnu++1z -- CMAKE_CXX17_STANDARD_COMPILE_OPTION=-std=c++1z -- CMAKE_CXX20_COMPILE_FEATURES= -- CMAKE_CXX98_COMPILE_FEATURES=cxx_std_98;cxx_template_template_parameters -- CMAKE_CXX98_EXTENSION_COMPILE_OPTION=-std=gnu++98 -- CMAKE_CXX98_STANDARD_COMPILE_OPTION=-std=c++98 -- CMAKE_CXX_ABI_COMPILED=TRUE -- CMAKE_CXX_ARCHIVE_APPEND= q -- CMAKE_CXX_ARCHIVE_APPEND_IPO="/Library/Developer/CommandLineTools/usr/bin/ar" r -- CMAKE_CXX_ARCHIVE_CREATE= qc -- CMAKE_CXX_ARCHIVE_CREATE_IPO="/Library/Developer/CommandLineTools/usr/bin/ar" cr -- CMAKE_CXX_ARCHIVE_FINISH= -- CMAKE_CXX_ARCHIVE_FINISH_IPO="/Library/Developer/CommandLineTools/usr/bin/ranlib" -- CMAKE_CXX_CL_SHOWINCLUDES_PREFIX= -- CMAKE_CXX_COMPILER=/Library/Developer/CommandLineTools/usr/bin/c++ -- CMAKE_CXX_COMPILER=/Library/Developer/CommandLineTools/usr/bin/c++ -- CMAKE_CXX_COMPILER_ABI= -- CMAKE_CXX_COMPILER_AR= -- CMAKE_CXX_COMPILER_ARG1= -- CMAKE_CXX_COMPILER_ENV_VAR=CXX -- CMAKE_CXX_COMPILER_ID=AppleClang -- CMAKE_CXX_COMPILER_ID_RUN=1 -- CMAKE_CXX_COMPILER_LOADED=1 -- CMAKE_CXX_COMPILER_PREDEFINES_COMMAND=/Library/Developer/CommandLineTools/usr/bin/c++;-dM;-E;-c;/usr/local/Cellar/cmake/3.12.0/share/cmake/Modules/CMakeCXXCompilerABI.cpp -- CMAKE_CXX_COMPILER_RANLIB= -- CMAKE_CXX_COMPILER_VERSION=8.0.0.8000042 -- CMAKE_CXX_COMPILER_VERSION_INTERNAL= -- CMAKE_CXX_COMPILER_WORKS=TRUE -- CMAKE_CXX_COMPILER_WRAPPER= -- CMAKE_CXX_COMPILE_FEATURES=cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17 -- CMAKE_CXX_COMPILE_OBJECT= -o -c -- CMAKE_CXX_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN=--gcc-toolchain= -- CMAKE_CXX_COMPILE_OPTIONS_IPO=-flto=thin -- CMAKE_CXX_COMPILE_OPTIONS_PIC=-fPIC -- CMAKE_CXX_COMPILE_OPTIONS_PIE=-fPIE -- CMAKE_CXX_COMPILE_OPTIONS_SYSROOT=--sysroot= -- CMAKE_CXX_COMPILE_OPTIONS_TARGET=--target= -- CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY=-fvisibility= -- CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN=-fvisibility-inlines-hidden -- CMAKE_CXX_CREATE_ASSEMBLY_SOURCE= -S -o -- CMAKE_CXX_CREATE_MACOSX_FRAMEWORK= -o -- CMAKE_CXX_CREATE_PREPROCESSED_SOURCE= -E > -- CMAKE_CXX_CREATE_SHARED_LIBRARY= -o -- CMAKE_CXX_CREATE_SHARED_MODULE= -o -- CMAKE_CXX_EXTENSIONS=OFF -- CMAKE_CXX_FLAGS= -std=c++11 -Wall -Wno-variadic-macros -fno-builtin-memcmp -fno-builtin-memmove -Qunused-arguments -- CMAKE_CXX_FLAGS= -std=c++11 -Wall -Wno-variadic-macros -fno-builtin-memcmp -fno-builtin-memmove -Qunused-arguments -- CMAKE_CXX_FLAGS_DEBUG=-g -- CMAKE_CXX_FLAGS_DEBUG_INIT= -g -- CMAKE_CXX_FLAGS_INIT= -- CMAKE_CXX_FLAGS_MINSIZEREL=-Os -DNDEBUG -- CMAKE_CXX_FLAGS_MINSIZEREL_INIT= -Os -DNDEBUG -- CMAKE_CXX_FLAGS_RELEASE=-O3 -DNDEBUG -- CMAKE_CXX_FLAGS_RELEASE_INIT= -O3 -DNDEBUG -- CMAKE_CXX_FLAGS_RELWITHDEBINFO=-O2 -g -DNDEBUG -- CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT= -O2 -g -DNDEBUG -- CMAKE_CXX_FRAMEWORK_SEARCH_FLAG=-F -- CMAKE_CXX_IGNORE_EXTENSIONS=inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC -- CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES=/usr/include -- CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES=/usr/lib;/usr/local/lib -- CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES=/Library/Frameworks;/System/Library/Frameworks -- CMAKE_CXX_IMPLICIT_LINK_LIBRARIES=c++ -- CMAKE_CXX_INFORMATION_LOADED=1 -- CMAKE_CXX_LIBRARY_ARCHITECTURE= -- CMAKE_CXX_LINKER_PREFERENCE=30 -- CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES=1 -- CMAKE_CXX_LINK_EXECUTABLE= -o -- CMAKE_CXX_LINK_FLAGS=-Wl,-search_paths_first -Wl,-headerpad_max_install_names -- CMAKE_CXX_OSX_COMPATIBILITY_VERSION_FLAG=-compatibility_version -- CMAKE_CXX_OSX_CURRENT_VERSION_FLAG=-current_version -- CMAKE_CXX_OSX_DEPLOYMENT_TARGET_FLAG=-mmacosx-version-min= -- CMAKE_CXX_OUTPUT_EXTENSION=.o -- CMAKE_CXX_PLATFORM_ID=Darwin -- CMAKE_CXX_SIMULATE_ID= -- CMAKE_CXX_SIMULATE_VERSION= -- CMAKE_CXX_SIZEOF_DATA_PTR=8 -- CMAKE_CXX_SOURCE_FILE_EXTENSIONS=C;M;c++;cc;cpp;cxx;mm;CPP -- CMAKE_CXX_STANDARD=11 -- CMAKE_CXX_STANDARD_COMPUTED_DEFAULT=98 -- CMAKE_CXX_STANDARD_DEFAULT=98 -- CMAKE_CXX_STANDARD_REQUIRED=ON -- CMAKE_CXX_SYSROOT_FLAG=-isysroot -- CMAKE_CXX_SYSTEM_FRAMEWORK_SEARCH_FLAG=-iframework -- CMAKE_CXX_VERBOSE_FLAG=-v -Wl,-v -- CMAKE_C_ABI_COMPILED=TRUE -- CMAKE_C_ARCHIVE_APPEND= q -- CMAKE_C_ARCHIVE_APPEND_IPO="/Library/Developer/CommandLineTools/usr/bin/ar" r -- CMAKE_C_ARCHIVE_CREATE= qc -- CMAKE_C_ARCHIVE_CREATE_IPO="/Library/Developer/CommandLineTools/usr/bin/ar" cr -- CMAKE_C_ARCHIVE_FINISH= -- CMAKE_C_ARCHIVE_FINISH_IPO="/Library/Developer/CommandLineTools/usr/bin/ranlib" -- CMAKE_C_CL_SHOWINCLUDES_PREFIX= -- CMAKE_C_COMPILER=/Library/Developer/CommandLineTools/usr/bin/cc -- CMAKE_C_COMPILER=/Library/Developer/CommandLineTools/usr/bin/cc -- CMAKE_C_COMPILER_ABI= -- CMAKE_C_COMPILER_AR= -- CMAKE_C_COMPILER_ARG1= -- CMAKE_C_COMPILER_ENV_VAR=CC -- CMAKE_C_COMPILER_ID=AppleClang -- CMAKE_C_COMPILER_ID_RUN=1 -- CMAKE_C_COMPILER_LOADED=1 -- CMAKE_C_COMPILER_PREDEFINES_COMMAND=/Library/Developer/CommandLineTools/usr/bin/cc;-dM;-E;-c;/usr/local/Cellar/cmake/3.12.0/share/cmake/Modules/CMakeCXXCompilerABI.cpp -- CMAKE_C_COMPILER_RANLIB= -- CMAKE_C_COMPILER_VERSION=8.0.0.8000042 -- CMAKE_C_COMPILER_VERSION_INTERNAL= -- CMAKE_C_COMPILER_WORKS=TRUE -- CMAKE_C_COMPILER_WRAPPER= -- CMAKE_C_COMPILE_FEATURES=c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert -- CMAKE_C_COMPILE_OBJECT= -o -c -- CMAKE_C_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN=--gcc-toolchain= -- CMAKE_C_COMPILE_OPTIONS_IPO=-flto=thin -- CMAKE_C_COMPILE_OPTIONS_PIC=-fPIC -- CMAKE_C_COMPILE_OPTIONS_PIE=-fPIE -- CMAKE_C_COMPILE_OPTIONS_SYSROOT=--sysroot= -- CMAKE_C_COMPILE_OPTIONS_TARGET=--target= -- CMAKE_C_COMPILE_OPTIONS_VISIBILITY=-fvisibility= -- CMAKE_C_CREATE_ASSEMBLY_SOURCE= -S -o -- CMAKE_C_CREATE_MACOSX_FRAMEWORK= -o -- CMAKE_C_CREATE_PREPROCESSED_SOURCE= -E > -- CMAKE_C_CREATE_SHARED_LIBRARY= -o -- CMAKE_C_CREATE_SHARED_MODULE= -o -- CMAKE_C_FLAGS= -- CMAKE_C_FLAGS_DEBUG=-g -- CMAKE_C_FLAGS_DEBUG_INIT= -g -- CMAKE_C_FLAGS_INIT= -- CMAKE_C_FLAGS_MINSIZEREL=-Os -DNDEBUG -- CMAKE_C_FLAGS_MINSIZEREL_INIT= -Os -DNDEBUG -- CMAKE_C_FLAGS_RELEASE=-O3 -DNDEBUG -- CMAKE_C_FLAGS_RELEASE_INIT= -O3 -DNDEBUG -- CMAKE_C_FLAGS_RELWITHDEBINFO=-O2 -g -DNDEBUG -- CMAKE_C_FLAGS_RELWITHDEBINFO_INIT= -O2 -g -DNDEBUG -- CMAKE_C_FRAMEWORK_SEARCH_FLAG=-F -- CMAKE_C_IGNORE_EXTENSIONS=h;H;o;O;obj;OBJ;def;DEF;rc;RC -- CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES=/usr/include -- CMAKE_C_IMPLICIT_LINK_DIRECTORIES=/usr/lib;/usr/local/lib -- CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES=/Library/Frameworks;/System/Library/Frameworks -- CMAKE_C_IMPLICIT_LINK_LIBRARIES= -- CMAKE_C_INFORMATION_LOADED=1 -- CMAKE_C_LIBRARY_ARCHITECTURE= -- CMAKE_C_LINKER_PREFERENCE=10 -- CMAKE_C_LINK_EXECUTABLE= -o -- CMAKE_C_LINK_FLAGS=-Wl,-search_paths_first -Wl,-headerpad_max_install_names -- CMAKE_C_OSX_COMPATIBILITY_VERSION_FLAG=-compatibility_version -- CMAKE_C_OSX_CURRENT_VERSION_FLAG=-current_version -- CMAKE_C_OSX_DEPLOYMENT_TARGET_FLAG=-mmacosx-version-min= -- CMAKE_C_OUTPUT_EXTENSION=.o -- CMAKE_C_PLATFORM_ID=Darwin -- CMAKE_C_SIMULATE_ID= -- CMAKE_C_SIMULATE_VERSION= -- CMAKE_C_SIZEOF_DATA_PTR=8 -- CMAKE_C_SOURCE_FILE_EXTENSIONS=c;m -- CMAKE_C_STANDARD_COMPUTED_DEFAULT=11 -- CMAKE_C_STANDARD_DEFAULT=11 -- CMAKE_C_SYSROOT_FLAG=-isysroot -- CMAKE_C_SYSTEM_FRAMEWORK_SEARCH_FLAG=-iframework -- CMAKE_C_VERBOSE_FLAG=-v -Wl,-v -- CMAKE_DEPFILE_FLAGS_C=-MD -MT -MF -- CMAKE_DEPFILE_FLAGS_CXX=-MD -MT -MF -- CMAKE_DL_LIBS= -- CMAKE_EDIT_COMMAND=/usr/local/Cellar/cmake/3.12.0/bin/ccmake -- CMAKE_EFFECTIVE_SYSTEM_NAME=Apple -- CMAKE_EXECUTABLE_FORMAT=Unknown -- CMAKE_EXECUTABLE_RUNTIME_CXX_FLAG=-Wl,-rpath, -- CMAKE_EXECUTABLE_RUNTIME_C_FLAG=-Wl,-rpath, -- CMAKE_EXECUTABLE_SUFFIX= -- CMAKE_EXE_LINKER_FLAGS= -- CMAKE_EXE_LINKER_FLAGS_DEBUG= -- CMAKE_EXE_LINKER_FLAGS_INIT= -- CMAKE_EXE_LINKER_FLAGS_MINSIZEREL= -- CMAKE_EXE_LINKER_FLAGS_RELEASE= -- CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO= -- CMAKE_EXPORT_COMPILE_COMMANDS=OFF -- CMAKE_EXTRA_GENERATOR= -- CMAKE_FILES_DIRECTORY=/CMakeFiles -- CMAKE_FIND_APPBUNDLE=FIRST -- CMAKE_FIND_FRAMEWORK=FIRST -- CMAKE_FIND_LIBRARY_PREFIXES=lib -- CMAKE_FIND_LIBRARY_SUFFIXES=.tbd;.dylib;.so;.a -- CMAKE_Fortran_CREATE_SHARED_LIBRARY= -o -- CMAKE_Fortran_CREATE_SHARED_MODULE= -o -- CMAKE_Fortran_FRAMEWORK_SEARCH_FLAG=-F -- CMAKE_GENERATOR=Unix Makefiles -- CMAKE_GENERATOR_INSTANCE= -- CMAKE_GENERATOR_PLATFORM= -- CMAKE_GENERATOR_TOOLSET= -- CMAKE_HAVE_LIBC_CREATE=1 -- CMAKE_HAVE_PTHREAD_H=1 -- CMAKE_HAVE_THREADS_LIBRARY=1 -- CMAKE_HOME_DIRECTORY=/Users/vijay/work/pebblesdb -- CMAKE_HOST_APPLE=1 -- CMAKE_HOST_SYSTEM=Darwin-15.6.0 -- CMAKE_HOST_SYSTEM_NAME=Darwin -- CMAKE_HOST_SYSTEM_PROCESSOR=x86_64 -- CMAKE_HOST_SYSTEM_VERSION=15.6.0 -- CMAKE_HOST_UNIX=1 -- CMAKE_INCLUDE_FLAG_C=-I -- CMAKE_INCLUDE_FLAG_CXX=-I -- CMAKE_INCLUDE_SYSTEM_FLAG_C=-isystem -- CMAKE_INCLUDE_SYSTEM_FLAG_CXX=-isystem -- CMAKE_INSTALL_BINDIR=bin -- CMAKE_INSTALL_DATADIR=share -- CMAKE_INSTALL_DATADIR=share -- CMAKE_INSTALL_DATAROOTDIR=share -- CMAKE_INSTALL_DEFAULT_COMPONENT_NAME=Unspecified -- CMAKE_INSTALL_DOCDIR=share/doc/PebblesDB -- CMAKE_INSTALL_DOCDIR=share/doc/PebblesDB -- CMAKE_INSTALL_FULL_BINDIR=/usr/local/bin -- CMAKE_INSTALL_FULL_DATADIR=/usr/local/share -- CMAKE_INSTALL_FULL_DATAROOTDIR=/usr/local/share -- CMAKE_INSTALL_FULL_DOCDIR=/usr/local/share/doc/PebblesDB -- CMAKE_INSTALL_FULL_INCLUDEDIR=/usr/local/include -- CMAKE_INSTALL_FULL_INFODIR=/usr/local/share/info -- CMAKE_INSTALL_FULL_LIBDIR=/usr/local/lib -- CMAKE_INSTALL_FULL_LIBEXECDIR=/usr/local/libexec -- CMAKE_INSTALL_FULL_LOCALEDIR=/usr/local/share/locale -- CMAKE_INSTALL_FULL_LOCALSTATEDIR=/usr/local/var -- CMAKE_INSTALL_FULL_MANDIR=/usr/local/share/man -- CMAKE_INSTALL_FULL_OLDINCLUDEDIR=/usr/include -- CMAKE_INSTALL_FULL_RUNSTATEDIR=/usr/local/var/run -- CMAKE_INSTALL_FULL_SBINDIR=/usr/local/sbin -- CMAKE_INSTALL_FULL_SHAREDSTATEDIR=/usr/local/com -- CMAKE_INSTALL_FULL_SYSCONFDIR=/usr/local/etc -- CMAKE_INSTALL_INCLUDEDIR=include -- CMAKE_INSTALL_INFODIR=share/info -- CMAKE_INSTALL_INFODIR=share/info -- CMAKE_INSTALL_LIBDIR=lib -- CMAKE_INSTALL_LIBEXECDIR=libexec -- CMAKE_INSTALL_LOCALEDIR=share/locale -- CMAKE_INSTALL_LOCALEDIR=share/locale -- CMAKE_INSTALL_LOCALSTATEDIR=var -- CMAKE_INSTALL_MANDIR=share/man -- CMAKE_INSTALL_MANDIR=share/man -- CMAKE_INSTALL_NAME_TOOL=/usr/bin/install_name_tool -- CMAKE_INSTALL_OLDINCLUDEDIR=/usr/include -- CMAKE_INSTALL_PREFIX=/usr/local -- CMAKE_INSTALL_RUNSTATEDIR=var/run -- CMAKE_INSTALL_RUNSTATEDIR=var/run -- CMAKE_INSTALL_SBINDIR=sbin -- CMAKE_INSTALL_SHAREDSTATEDIR=com -- CMAKE_INSTALL_SYSCONFDIR=etc -- CMAKE_LIBRARY_PATH_FLAG=-L -- CMAKE_LIBRARY_PATH_TERMINATOR= -- CMAKE_LINKER=/Library/Developer/CommandLineTools/usr/bin/ld -- CMAKE_LINKER=/Library/Developer/CommandLineTools/usr/bin/ld -- CMAKE_LINK_LIBRARY_FLAG=-l -- CMAKE_LINK_LIBRARY_SUFFIX= -- CMAKE_MAJOR_VERSION=3 -- CMAKE_MAKE_PROGRAM=/usr/bin/make -- CMAKE_MATCH_0= -- CMAKE_MATCH_1= -- CMAKE_MATCH_2= -- CMAKE_MATCH_COUNT=0 -- CMAKE_MINIMUM_REQUIRED_VERSION=3.9 -- CMAKE_MINOR_VERSION=12 -- CMAKE_MODULE_EXISTS=1 -- CMAKE_MODULE_LINKER_FLAGS= -- CMAKE_MODULE_LINKER_FLAGS_DEBUG= -- CMAKE_MODULE_LINKER_FLAGS_INIT= -- CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL= -- CMAKE_MODULE_LINKER_FLAGS_RELEASE= -- CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO= -- CMAKE_NM=/Library/Developer/CommandLineTools/usr/bin/nm -- CMAKE_NUMBER_OF_MAKEFILES=1 -- CMAKE_OBJCOPY=CMAKE_OBJCOPY-NOTFOUND -- CMAKE_OBJDUMP=/Library/Developer/CommandLineTools/usr/bin/objdump -- CMAKE_OSX_ARCHITECTURES= -- CMAKE_OSX_DEPLOYMENT_TARGET= -- CMAKE_OSX_SYSROOT= -- CMAKE_PARENT_LIST_FILE=/Users/vijay/work/pebblesdb/CMakeLists.txt -- CMAKE_PATCH_VERSION=0 -- CMAKE_PLATFORM_HAS_INSTALLNAME=1 -- CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES=/lib;/lib32;/lib64;/usr/lib;/usr/lib32;/usr/lib64 -- CMAKE_PLATFORM_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES=/Library/Frameworks;/System/Library/Frameworks -- CMAKE_PLATFORM_INFO_DIR=/Users/vijay/work/pebblesdb/build/CMakeFiles/3.12.0 -- CMAKE_PLATFORM_INFO_INITIALIZED=1 -- CMAKE_PROJECT_NAME=PebblesDB -- CMAKE_PROJECT_VERSION=1.21.0 -- CMAKE_PROJECT_VERSION_MAJOR=1 -- CMAKE_PROJECT_VERSION_MINOR=21 -- CMAKE_PROJECT_VERSION_PATCH=0 -- CMAKE_PROJECT_VERSION_TWEAK= -- CMAKE_RANLIB=/Library/Developer/CommandLineTools/usr/bin/ranlib -- CMAKE_RANLIB=/Library/Developer/CommandLineTools/usr/bin/ranlib -- CMAKE_REQUIRED_DEFINITIONS= -- CMAKE_ROOT=/usr/local/Cellar/cmake/3.12.0/share/cmake -- CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS=-dynamiclib -Wl,-headerpad_max_install_names -- CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS=-dynamiclib -Wl,-headerpad_max_install_names -- CMAKE_SHARED_LIBRARY_CXX_FLAGS=-fPIC -- CMAKE_SHARED_LIBRARY_C_FLAGS=-fPIC -- CMAKE_SHARED_LIBRARY_LINK_C_FLAGS= -- CMAKE_SHARED_LIBRARY_PREFIX=lib -- CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG=-Wl,-rpath, -- CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG=-Wl,-rpath, -- CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP= -- CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG=-install_name -- CMAKE_SHARED_LIBRARY_SONAME_C_FLAG=-install_name -- CMAKE_SHARED_LIBRARY_SUFFIX=.dylib -- CMAKE_SHARED_LINKER_FLAGS= -- CMAKE_SHARED_LINKER_FLAGS_DEBUG= -- CMAKE_SHARED_LINKER_FLAGS_INIT= -- CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL= -- CMAKE_SHARED_LINKER_FLAGS_RELEASE= -- CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO= -- CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS=-bundle -Wl,-headerpad_max_install_names -- CMAKE_SHARED_MODULE_CREATE_C_FLAGS=-bundle -Wl,-headerpad_max_install_names -- CMAKE_SHARED_MODULE_LOADER_CXX_FLAG=-Wl,-bundle_loader, -- CMAKE_SHARED_MODULE_LOADER_C_FLAG=-Wl,-bundle_loader, -- CMAKE_SHARED_MODULE_PREFIX=lib -- CMAKE_SHARED_MODULE_SUFFIX=.so -- CMAKE_SIZEOF_VOID_P=8 -- CMAKE_SKIP_INSTALL_RPATH=NO -- CMAKE_SKIP_RPATH=NO -- CMAKE_SOURCE_DIR=/Users/vijay/work/pebblesdb -- CMAKE_STATIC_LIBRARY_PREFIX=lib -- CMAKE_STATIC_LIBRARY_SUFFIX=.a -- CMAKE_STATIC_LINKER_FLAGS= -- CMAKE_STATIC_LINKER_FLAGS_DEBUG= -- CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL= -- CMAKE_STATIC_LINKER_FLAGS_RELEASE= -- CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO= -- CMAKE_STRIP=/Library/Developer/CommandLineTools/usr/bin/strip -- CMAKE_SYSTEM=Darwin-15.6.0 -- CMAKE_SYSTEM_APPBUNDLE_PATH=/Users/vijay/Applications;/Applications -- CMAKE_SYSTEM_FRAMEWORK_PATH=~/Library/Frameworks;/Library/Frameworks;/Network/Library/Frameworks;/System/Library/Frameworks -- CMAKE_SYSTEM_INCLUDE_PATH=/usr/include/X11 -- CMAKE_SYSTEM_INFO_FILE=Platform/Darwin -- CMAKE_SYSTEM_LIBRARY_PATH=/usr/lib/X11 -- CMAKE_SYSTEM_LOADED=1 -- CMAKE_SYSTEM_NAME=Darwin -- CMAKE_SYSTEM_PREFIX_PATH=/usr/local;/usr;/;/usr/local/Cellar/cmake/3.12.0;/usr/local;/usr/X11R6;/usr/pkg;/opt;/sw;/opt/local -- CMAKE_SYSTEM_PROCESSOR=x86_64 -- CMAKE_SYSTEM_SPECIFIC_INFORMATION_LOADED=1 -- CMAKE_SYSTEM_SPECIFIC_INITIALIZE_LOADED=1 -- CMAKE_SYSTEM_VERSION=15.6.0 -- CMAKE_TESTING_ENABLED=1 -- CMAKE_THREAD_LIBS_INIT= -- CMAKE_TWEAK_VERSION=0 -- CMAKE_UNAME=/usr/bin/uname -- CMAKE_USE_PTHREADS_INIT=1 -- CMAKE_VERBOSE_MAKEFILE=FALSE -- CMAKE_VERSION=3.12.0 -- COMPILER_SUPPORTS_MEMCMP=1 -- COMPILER_SUPPORTS_MEMMOVE=1 -- COMPILER_SUPPORTS_UNUSED_ARGS=1 -- CURRENT_OSX_VERSION=10.11.6 -- DARWIN_MAJOR_VERSION=15 -- DARWIN_MINOR_VERSION=6 -- FIND_PACKAGE_MESSAGE_DETAILS_Threads=[TRUE][v()] -- HAVE_ALARM=1 -- HAVE_CLOCK_GETTIME= -- HAVE_CRC32C= -- HAVE_DECL_FDATASYNC= -- HAVE_DLFCN_H=1 -- HAVE_ENDIAN_H= -- HAVE_ERROR_AT_LINE= -- HAVE_FFLUSH=1 -- HAVE_FFLUSH_UNLOCKED= -- HAVE_FLAG_SEARCH_PATHS_FIRST=1 -- HAVE_FREAD=1 -- HAVE_FREAD_UNLOCKED= -- HAVE_FSYNC=1 -- HAVE_FTRUNCATE=1 -- HAVE_FWRITE=1 -- HAVE_FWRITE_UNLOCKED= -- HAVE_GETPAGESIZE=1 -- HAVE_INTTYPES_H=1 -- HAVE_MACHINE_ENDIAN_H=1 -- HAVE_MACH_ABSOLUTE_TIME=1 -- HAVE_MEMMOVE=1 -- HAVE_MEMORY_H=1 -- HAVE_MKDIR=1 -- HAVE_MMAP=1 -- HAVE_MUNMAP=1 -- HAVE_RMDIR=1 -- HAVE_SNAPPY=1 -- HAVE_SOCKET=1 -- HAVE_STDINT_H=1 -- HAVE_STDLIB_H=1 -- HAVE_STRINGS_H=1 -- HAVE_STRING_H=1 -- HAVE_SYS_ENDIAN_H= -- HAVE_SYS_ISA_DEFS_H= -- HAVE_SYS_PARAM_H=1 -- HAVE_SYS_STAT_H=1 -- HAVE_SYS_TYPES_H=1 -- HAVE_TCMALLOC= -- HAVE_UNISTD_H=1 -- ListNames=error_at_line;mmap;alarm;clock_gettime;mach_absolute_time;ftruncate;fsync;fread;fread_unlocked;fwrite;fwrite_unlocked;fflush;fflush_unlocked;memmove;mkdir;munmap;rmdir;socket;getpagesize -- OSX_DEVELOPER_ROOT=/Library/Developer/CommandLineTools -- PEBBLESDB_BUILD_TESTS=ON -- PEBBLESDB_INSTALL=ON -- PEBBLESDB_PUBLIC_INCLUDE_DIR=include/pebblesdb -- PROJECT_BINARY_DIR=/Users/vijay/work/pebblesdb/build -- PROJECT_NAME=PebblesDB -- PROJECT_SOURCE_DIR=/Users/vijay/work/pebblesdb/src -- PROJECT_VERSION=1.21.0 -- PROJECT_VERSION_MAJOR=1 -- PROJECT_VERSION_MINOR=21 -- PROJECT_VERSION_PATCH=0 -- PROJECT_VERSION_TWEAK= -- PebblesDB_BINARY_DIR=/Users/vijay/work/pebblesdb/build -- PebblesDB_SOURCE_DIR=/Users/vijay/work/pebblesdb -- PebblesDB_VERSION=1.21.0 -- PebblesDB_VERSION_MAJOR=1 -- PebblesDB_VERSION_MINOR=21 -- PebblesDB_VERSION_PATCH=0 -- PebblesDB_VERSION_TWEAK= -- RUN_CONFIGURE=ON -- SAFE_CMAKE_REQUIRED_DEFINITIONS= -- THREADS_FOUND=TRUE -- THREADS_PREFER_PTHREAD_FLAG=ON -- Threads_FOUND=TRUE -- UNIX=1 -- _CMAKE_CXX_IPO_MAY_BE_SUPPORTED_BY_COMPILER=YES -- _CMAKE_CXX_IPO_SUPPORTED_BY_CMAKE=YES -- _CMAKE_C_IPO_MAY_BE_SUPPORTED_BY_COMPILER=YES -- _CMAKE_C_IPO_SUPPORTED_BY_CMAKE=YES -- _CMAKE_INSTALL_DIR=/usr/local/Cellar/cmake/3.12.0 -- _CMAKE_LTO_THIN=TRUE -- _CMAKE_OSX_SYSROOT_PATH= -- _CMAKE_OSX_SYSROOT_TYPE=STRING -- _CURRENT_OSX_VERSION=10.11 -- _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX=/usr/local -- _INCLUDED_FILE=/usr/local/Cellar/cmake/3.12.0/share/cmake/Modules/Platform/Apple-AppleClang-CXX.cmake -- _INCLUDED_SYSTEM_INFO_FILE=/usr/local/Cellar/cmake/3.12.0/share/cmake/Modules/Platform/Darwin.cmake -- _IN_TC=0 -- COMPILER_CLANG=1 -- COMPILER_CMAKE_COMMON_COMPILER_MACROS=1 -- COMPILER_GNU=1 -- INCGUARD_a8d5a42c037dcd904f07a4db70f24084=ON -- UNIX_PATHS_INCLUDED=1 -- ar=/Library/Developer/CommandLineTools/usr/bin/ar -- is_apple_clang=1 -- __lto_flags=-flto;-fno-fat-lto-objects -- __ranlib=/Library/Developer/CommandLineTools/usr/bin/ranlib -- _apps=/Library/Developer/CommandLineTools/Applications -- _failed=0 -- _path= -- _stderr= -- _stdout=/Library/Developer/CommandLineTools -- allcap=GETPAGESIZE -- arg= -- dir= -- f= -- name= -- pebblesdb_LIB_DEPENDS=general;snappy; -- type= -- v= -- var_name=HAVE_GETPAGESIZE -- Configuring incomplete, errors occurred! See also "/Users/vijay/work/pebblesdb/build/CMakeFiles/CMakeOutput.log". See also "/Users/vijay/work/pebblesdb/build/CMakeFiles/CMakeError.log".

I can't run make without cmake finishing successfully I think.

xxks-kkk commented 6 years ago

Hello Vijay,

Thanks for the output trace. As shown by the printout, there is a file missing:

CMake Error: File /Users/vijay/work/pebblesdb/src/config.h.in.forcmake does not exist.

It's my fault. I forget to push the file that is required by the CMake (got ignored due to my .gitignore). I just pushed another commit. Please try again and let me know how it goes.

Thanks!

Zack

vijay03 commented 6 years ago

Great! It works for me now. I was able to pass PebblesDB tests successfully on my machine.