Browse Source

Merge 253baa98a4 into cf446565d9

pull/3213/merge
darkdragon-001 4 days ago
committed by GitHub
parent
commit
40166bbbee
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
2 changed files with 20 additions and 32 deletions
  1. +18
    -30
      cpp/CMakeLists.txt
  2. +2
    -2
      cpp/cmake/config.cmake.in

+ 18
- 30
cpp/CMakeLists.txt View File

@ -100,7 +100,8 @@ if (USE_ALTERNATE_FORMATS)
endif ()
# Find all the required libraries and programs.
find_package(absl)
# Use "CONFIG" as there is no built-in cmake module for absl.
find_package(absl CONFIG REQUIRED)
if(NOT absl_FOUND)
# Overide abseil install rules for subprojects
@ -169,14 +170,11 @@ if (USE_RE2)
find_required_library (RE2 re2/re2.h re2 "Google RE2")
endif ()
find_package(Protobuf CONFIG REQUIRED)
if (USE_PROTOBUF_LITE)
find_required_library (PROTOBUF google/protobuf/message_lite.h protobuf-lite
"Google Protocol Buffers")
check_library_version (PC_PROTOBUF protobuf-lite>=2.4)
set(PROTOBUF_LIB protobuf::libprotobuf-lite)
else ()
find_required_library (PROTOBUF google/protobuf/message_lite.h protobuf
"Google Protocol Buffers")
check_library_version (PC_PROTOBUF protobuf>=2.4)
set(PROTOBUF_LIB protobuf::libprotobuf)
endif ()
find_required_library (ICU_UC unicode/uchar.h icuuc "ICU")
@ -192,9 +190,6 @@ if (USE_ICU_REGEXP OR BUILD_GEOCODER)
list (APPEND ICU_LIB ${ICU_I18N_LIB})
endif ()
find_required_program (PROTOC protoc
"Google Protocol Buffers compiler (protoc)")
if (REGENERATE_METADATA)
find_required_program (JAVA java
"Java Runtime Environment")
@ -220,24 +215,18 @@ endif ()
set (RESOURCES_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../resources")
set (
PROTOBUF_SOURCES "${RESOURCES_DIR}/phonemetadata.proto"
"${RESOURCES_DIR}/phonenumber.proto"
)
set (
PROTOBUF_OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/phonenumbers/phonemetadata.pb.cc"
"${CMAKE_CURRENT_SOURCE_DIR}/src/phonenumbers/phonemetadata.pb.h"
"${CMAKE_CURRENT_SOURCE_DIR}/src/phonenumbers/phonenumber.pb.cc"
"${CMAKE_CURRENT_SOURCE_DIR}/src/phonenumbers/phonenumber.pb.h"
PROTO_FILES "${RESOURCES_DIR}/phonemetadata.proto"
"${RESOURCES_DIR}/phonenumber.proto"
)
add_custom_command (
COMMAND ${PROTOC_BIN} --cpp_out=${CMAKE_CURRENT_SOURCE_DIR}/src/phonenumbers/
--proto_path=${RESOURCES_DIR} ${PROTOBUF_SOURCES}
OUTPUT ${PROTOBUF_OUTPUT}
DEPENDS ${PROTOBUF_SOURCES}
)
add_library(proto-objects OBJECT ${PROTO_FILES})
target_link_libraries(proto-objects PUBLIC protobuf::libprotobuf)
set(PROTO_BINARY_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
target_include_directories(proto-objects PUBLIC "$<BUILD_INTERFACE:${PROTO_BINARY_DIR}>")
protobuf_generate(
TARGET proto-objects
IMPORT_DIRS "${RESOURCES_DIR}"
PROTOC_OUT_DIR "${PROTO_BINARY_DIR}/phonenumbers")
if (BUILD_GEOCODER)
# Geocoding data cpp file generation
@ -267,9 +256,7 @@ set (
"src/phonenumbers/base/strings/string_piece.cc"
"src/phonenumbers/default_logger.cc"
"src/phonenumbers/logger.cc"
"src/phonenumbers/phonemetadata.pb.cc" # Generated by Protocol Buffers.
"src/phonenumbers/phonenumber.cc"
"src/phonenumbers/phonenumber.pb.cc" # Generated by Protocol Buffers.
"src/phonenumbers/phonenumberutil.cc"
"src/phonenumbers/regex_based_matcher.cc"
"src/phonenumbers/regexp_cache.cc"
@ -290,7 +277,6 @@ if (BUILD_GEOCODER)
"src/phonenumbers/geocoding/geocoding_data.cc"
"src/phonenumbers/geocoding/mapping_file_provider.cc"
"src/phonenumbers/geocoding/phonenumber_offline_geocoder.cc"
"src/phonenumbers/phonenumber.pb.h" # Forces proto buffer generation.
)
endif ()
@ -450,6 +436,8 @@ if (APPLE)
list (APPEND LIBRARY_DEPS ${COREFOUNDATION_LIB} ${FOUNDATION_LIB})
endif ()
list (APPEND LIBRARY_DEPS proto-objects)
#----------------------------------------------------------------
# Build libraries
#----------------------------------------------------------------
@ -601,7 +589,7 @@ endif()
# Install built libraries
#----------------------------------------------------------------
set (BUILT_LIBS)
set (BUILT_LIBS proto-objects)
set(targets_export_name "${PROJECT_NAME}-targets")
if (BUILD_STATIC_LIB)


+ 2
- 2
cpp/cmake/config.cmake.in View File

@ -2,8 +2,8 @@
include(CMakeFindDependencyMacro)
find_dependency(absl)
find_dependency(Protobuf)
find_dependency(absl CONFIG)
find_dependency(Protobuf CONFIG)
include("${CMAKE_CURRENT_LIST_DIR}/@targets_export_name@.cmake")
check_required_components("@PROJECT_NAME@")

Loading…
Cancel
Save