You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

84 lines
2.4 KiB

# Copyright (C) 2012 The Libphonenumber Authors
#
# Licensed 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.
# Author: Patrick Mezard
cmake_minimum_required (VERSION 3.11)
# Pick the C++ standard to compile with.
# Abseil currently supports C++11, C++14, and C++17.
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
project (generate_geocoding_data)
# Helper functions dealing with finding libraries and programs this library
# depends on.
include (gtest.cmake)
include (FetchContent)
# Downloading the abseil sources.
FetchContent_Declare(
abseil-cpp
GIT_REPOSITORY https://github.com/abseil/abseil-cpp.git
GIT_TAG origin/master
)
# Building the abseil binaries
FetchContent_GetProperties(abseil-cpp)
if (NOT abseil-cpp_POPULATED)
FetchContent_Populate(abseil-cpp)
endif ()
if (NOT abseil-cpp_POPULATED)
message (FATAL_ERROR "Could not build abseil-cpp binaries.")
endif ()
# Safeguarding against any potential link errors as mentioned in
# https://github.com/abseil/abseil-cpp/issues/225
set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
add_subdirectory(${abseil-cpp_SOURCE_DIR} ${abseil-cpp_BINARY_DIR})
find_or_build_gtest ()
set (
SOURCES
"src/cpp-build/generate_geocoding_data.cc"
"src/cpp-build/generate_geocoding_data_main.cc"
)
if (NOT WIN32)
add_definitions ("-Wall -Werror")
endif ()
include_directories ("src")
add_executable (generate_geocoding_data ${SOURCES})
target_link_libraries (generate_geocoding_data absl::strings absl::btree absl::node_hash_set)
set (TEST_SOURCES
"src/cpp-build/generate_geocoding_data.cc"
"test/cpp-build/generate_geocoding_data_test.cc"
"test/cpp-build/run_tests.cc"
)
set (TEST_LIBS ${GTEST_LIB})
if (NOT WIN32)
list (APPEND TEST_LIBS pthread)
endif ()
# Build the testing binary.
include_directories ("test")
add_executable (generate_geocoding_data_test ${TEST_SOURCES})
target_link_libraries (generate_geocoding_data_test absl::btree ${TEST_LIBS} absl::node_hash_set)