Skip to content

Commit 7588ad4

Browse files
author
William Malpica
authored
Merge pull request #2 from BlazingDB/feature/custrings-support
[REVIEW] Feature/custrings support
2 parents 939019c + b9d0b83 commit 7588ad4

25 files changed

+183
-112
lines changed

CMakeLists.txt

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,11 @@ project(blazingdb-dependencies C CXX CUDA)
1010
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/" ${CMAKE_MODULE_PATH})
1111
message(STATUS "CMAKE_MODULE_PATH:" "${CMAKE_MODULE_PATH}")
1212

13-
# TODO percy
14-
#include(DefineVersions)
13+
## custrings - git@github.com:rapidsai/custrings.git
14+
option(ENABLE_CUSTRINGS "Add the custring (rapidsai) library" OFF)
15+
16+
# Parse the COMPONENT_VERSION and the component download URLs
17+
include(DefineVersions)
1518

1619
# NOTE First step
1720
include(ConfigureBlazingDBHostCompiler)
@@ -43,18 +46,15 @@ include(ConfigureArrow)
4346
include(ConfigureParquet)
4447
include(ConfigurePython3)
4548

46-
## custrings - git@github.com:rapidsai/custrings.git
47-
option(ENABLE_CUSTRINGS "Add the custring (rapidsai) library" ON)
49+
include(ConfigureJitify) # NOTE cudf related
50+
4851
if(ENABLE_CUSTRINGS)
49-
message(STATUS "Enable the custring (rapidsai) library")
50-
include(ConfigureNVStrings)
52+
message(STATUS "Enable the custring (rapidsai) library")
53+
include(ConfigureNVStrings)
5154
else()
52-
message(STATUS "Disable the custring (rapidsai) library")
55+
message(STATUS "Disable the custring (rapidsai) library")
5356
endif()
5457

55-
include(ConfigureJitify) # NOTE cudf related
56-
57-
5858
#find_package(Threads)
5959

6060
# NOTE Optional build: cudf
@@ -64,8 +64,6 @@ include(ConfigureJitify) # NOTE cudf related
6464
#message(FATAL_ERROR "AAAAAAAAAAAAAAAAAAAA@")
6565
#include(ConfigureBlazingDBIO)
6666

67-
68-
6967
# BEGIN MAIN #
7068
# NOTE use USE_SOURCE_PERMISSIONS to preserve executable file permisions (e.g. flatc, etc)
7169
install(DIRECTORY ${GTEST_ROOT} DESTINATION . USE_SOURCE_PERMISSIONS)

cmake/AWSSDKCPP.CMakeLists.txt.cmake

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ project(aws-sdk-cpp-download NONE)
1010
include(ExternalProject)
1111

1212
ExternalProject_Add(aws-sdk-cpp
13-
GIT_REPOSITORY https://github.com/aws/aws-sdk-cpp.git
14-
GIT_TAG 864eb0bca8b48427f94850b7a8311ef0ae0f433b
13+
GIT_REPOSITORY ${AWS_SDK_CPP_GIT_REPOSITORY}
14+
GIT_TAG ${AWS_SDK_CPP_GIT_TAG}
1515
SOURCE_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/aws-sdk-cpp-src"
1616
BINARY_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/aws-sdk-cpp-build"
1717
INSTALL_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/aws-sdk-cpp-install"
1818
UPDATE_COMMAND ""
19-
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
19+
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${AWS_SDK_CPP_BUILD_TYPE}
2020
-DBUILD_ONLY=${AWS_MODULES_STR}
2121
-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/aws-sdk-cpp-install
2222
${AWS_SDK_CPP_CMAKE_ARGS}

cmake/Arrow.CMakeLists.txt.cmake

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,14 @@ project(arrow-download NONE)
2222
include(ExternalProject)
2323

2424
ExternalProject_Add(arrow
25-
GIT_REPOSITORY https://github.com/apache/arrow.git
26-
GIT_TAG apache-arrow-0.12.0
25+
GIT_REPOSITORY ${ARROW_GIT_REPOSITORY}
26+
GIT_TAG ${ARROW_GIT_TAG}
2727
SOURCE_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/arrow-src"
2828
SOURCE_SUBDIR "cpp"
2929
BINARY_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/arrow-build"
3030
INSTALL_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/arrow-install"
3131
UPDATE_COMMAND ""
32-
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
32+
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${ARROW_BUILD_TYPE}
3333
${ARROW_CMAKE_ARGS}
3434
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/arrow-install
3535
)

cmake/Boost.CMakeLists.txt.cmake

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,14 @@ project(boost-download NONE)
2121

2222
include(ExternalProject)
2323

24-
# NOTE build Boost with old C++ ABI _GLIBCXX_USE_CXX11_ABI=0 and with -fPIC
2524
ExternalProject_Add(boost
26-
URL http://archive.ubuntu.com/ubuntu/pool/main/b/boost1.58/boost1.58_1.58.0+dfsg.orig.tar.gz
25+
URL ${BOOST_URL}
2726
DOWNLOAD_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-download"
2827
PREFIX "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-src"
2928
BUILD_IN_SOURCE 1
3029
INSTALL_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-install"
3130
CONFIGURE_COMMAND ./bootstrap.sh --with-libraries=date_time,system,filesystem,regex,atomic,chrono,container,context,thread --with-icu --prefix=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-install
32-
BUILD_COMMAND ./b2 install variant=release ${BOOST_DEFINE} stage cxxflags=-fPIC cflags=-fPIC link=static runtime-link=static threading=multi --exec-prefix=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-install --prefix=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-install -a
31+
BUILD_COMMAND ./b2 install variant=${BOOST_BUILD_TYPE} ${BOOST_DEFINE} stage cxxflags=-fPIC cflags=-fPIC link=static runtime-link=static threading=multi --exec-prefix=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-install --prefix=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/boost-install -a
3332
INSTALL_COMMAND ""
3433
UPDATE_COMMAND ""
3534
)

cmake/Brotli.CMakeLists.txt.cmake

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ project(brotli-download NONE)
2222
include(ExternalProject)
2323

2424
ExternalProject_Add(brotli
25-
GIT_REPOSITORY https://github.com/google/brotli.git
26-
GIT_TAG v0.6.0
25+
GIT_REPOSITORY ${BROTLI_GIT_REPOSITORY}
26+
GIT_TAG ${BROTLI_GIT_TAG}
2727
SOURCE_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/brotli-src"
2828
BINARY_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/brotli-build"
2929
INSTALL_DIR "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/brotli-install"
3030
UPDATE_COMMAND ""
3131
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/brotli-install
32-
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
32+
-DCMAKE_BUILD_TYPE=${BROTLI_BUILD_TYPE}
3333
${BROTLI_CMAKE_ARGS}
3434
)

cmake/ConfigureBlazingDBDependencies.cmake

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ set(BROTLI_INSTALL_DIR ${BLAZINGDB_DEPENDENCIES_INSTALL_DIR})
3030
set(SNAPPY_INSTALL_DIR ${BLAZINGDB_DEPENDENCIES_INSTALL_DIR})
3131
set(THRIFT_INSTALL_DIR ${BLAZINGDB_DEPENDENCIES_INSTALL_DIR})
3232
set(ARROW_INSTALL_DIR ${BLAZINGDB_DEPENDENCIES_INSTALL_DIR})
33-
set(NVSTRINGS_INSTALL_DIR ${BLAZINGDB_DEPENDENCIES_INSTALL_DIR}) # NOTE cudf related
33+
# TODO percy activate again custrings once we dont need a fork
34+
#set(NVSTRINGS_INSTALL_DIR ${BLAZINGDB_DEPENDENCIES_INSTALL_DIR}) # NOTE cudf related
3435
set(JITIFY_INSTALL_DIR ${BLAZINGDB_DEPENDENCIES_INSTALL_DIR}) # NOTE cudf related
3536

3637
message(STATUS "GOOGLETEST_INSTALL_DIR: ${GOOGLETEST_INSTALL_DIR}") # NOTE for unit tests

cmake/ConfigureCUDA.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ macro(CONFIGURE_CUDA_COMPILER compute_capability)
6969
if(CMAKE_BUILD_TYPE MATCHES Debug)
7070
message(STATUS "Building with debugging flags")
7171
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -G -Xcompiler -rdynamic")
72-
set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS} -G -g" )
72+
set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS} -G -g" )
7373
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -rdynamic")
7474
endif(CMAKE_BUILD_TYPE MATCHES Debug)
7575

cmake/ConfigureGoogleBenchmark.cmake

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
macro(CONFIGURE_GOOGLEBENCHMARK_EXTERNAL_PROJECT)
2121
# NOTE percy c.gonzales if you want to pass other RAL CMAKE_CXX_FLAGS into this dependency add it by harcoding
2222
set(GOOGLEBENCHMARK_CMAKE_ARGS
23-
" -DCMAKE_BUILD_TYPE=Release"
2423
" -DBENCHMARK_ENABLE_GTEST_TESTS=OFF")
2524

2625
if(CXX_OLD_ABI)

cmake/ConfigureNVStrings.cmake

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,6 @@ else()
7171
set(NVSTRINGS_ROOT "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/thirdparty/nvstrings-install/")
7272
endif()
7373

74-
set(NVSTRINGS_LIBDIR ${NVSTRINGS_ROOT}/lib/)
75-
link_directories(${NVSTRINGS_LIBDIR})
76-
7774
find_package(NVStrings REQUIRED)
7875
set_package_properties(NVStrings PROPERTIES TYPE REQUIRED
7976
PURPOSE "nvstrings is a C library for implementing common functionality for a GPU Data Frame."
@@ -85,6 +82,9 @@ endif()
8582

8683
message(STATUS "nvstrings found in ${NVSTRINGS_ROOT}")
8784

85+
set(NVSTRINGS_LIBDIR ${NVSTRINGS_ROOT}/lib/)
86+
link_directories(${NVSTRINGS_LIBDIR})
87+
8888
include_directories(${NVSTRINGS_INCLUDEDIR} ${NVSTRINGS_INCLUDE_DIR})
8989
# TODO percy seems cmake bug: we cannot define target dirs per cuda target
9090
# ... see if works in future cmake versions

0 commit comments

Comments
 (0)