mirror of https://github.com/milvus-io/milvus.git
56 lines
1.9 KiB
CMake
56 lines
1.9 KiB
CMake
# Licensed to the LF AI & Data foundation under one
|
|
# or more contributor license agreements. See the NOTICE file
|
|
# distributed with this work for additional information
|
|
# regarding copyright ownership. The ASF licenses this file
|
|
# to you under the Apache License, Version 2.0 (the
|
|
# "License"); you may not use this file except in compliance
|
|
# with the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
cmake_minimum_required( VERSION 3.18 )
|
|
project(wrapper)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|
|
|
include( GNUInstallDirs )
|
|
include( ExternalProject )
|
|
include( CheckCXXCompilerFlag )
|
|
|
|
set(ARROW_OUTPUT_PREFIX ${CMAKE_INSTALL_PREFIX}/../../../core/output)
|
|
add_library(wrapper STATIC)
|
|
target_sources(wrapper PUBLIC ParquetWrapper.cpp PayloadStream.cpp)
|
|
|
|
if ( NOT MSYS )
|
|
add_library(parquet STATIC IMPORTED)
|
|
set_target_properties(parquet PROPERTIES
|
|
IMPORTED_LOCATION "${ARROW_OUTPUT_PREFIX}/lib/libparquet.a"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${ARROW_OUTPUT_PREFIX}/include")
|
|
endif()
|
|
|
|
if ( EMBEDDED_MILVUS )
|
|
message ( STATUS "Turning on fPIC while building embedded Milvus" )
|
|
set_target_properties( wrapper PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR} POSITION_INDEPENDENT_CODE ON )
|
|
else()
|
|
set_target_properties( wrapper PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR} )
|
|
endif()
|
|
|
|
target_link_libraries( wrapper PUBLIC parquet pthread)
|
|
|
|
if(NOT CMAKE_INSTALL_PREFIX)
|
|
set(CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR})
|
|
endif()
|
|
|
|
install( TARGETS wrapper )
|
|
|
|
if (BUILD_TESTING)
|
|
add_subdirectory(test)
|
|
endif()
|