]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/jaegertracing/opentelemetry-cpp/docker/thrift/CMakeLists.txt
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / docker / thrift / CMakeLists.txt
diff --git a/ceph/src/jaegertracing/opentelemetry-cpp/docker/thrift/CMakeLists.txt b/ceph/src/jaegertracing/opentelemetry-cpp/docker/thrift/CMakeLists.txt
new file mode 100644 (file)
index 0000000..0028dc4
--- /dev/null
@@ -0,0 +1,87 @@
+cmake_minimum_required(VERSION 3.11 FATAL_ERROR)
+
+project(
+  dependencies
+  LANGUAGES CXX
+  VERSION 0.0.1)
+
+set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_EXTENSIONS OFF)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+set(CMAKE_CXX_FLAGS "-O2")
+
+set(CMAKE_BUILD_TYPE
+    Release
+    CACHE STRING "Build type" FORCE)
+
+include(GNUInstallDirs)
+
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY
+    ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY
+    ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
+    ${PROJECT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR})
+
+set(INSTALL_LIBDIR
+    ${CMAKE_INSTALL_LIBDIR}
+    CACHE PATH "directory for libraries")
+set(INSTALL_BINDIR
+    ${CMAKE_INSTALL_BINDIR}
+    CACHE PATH "directory for executables")
+set(INSTALL_INCLUDEDIR
+    ${CMAKE_INSTALL_INCLUDEDIR}
+    CACHE PATH "directory for header files")
+
+set(DEF_INSTALL_CMAKEDIR share/cmake/${PROJECT_NAME})
+set(INSTALL_CMAKEDIR
+    ${DEF_INSTALL_CMAKEDIR}
+    CACHE PATH "directory for CMake files")
+
+set_property(DIRECTORY PROPERTY EP_BASE ${CMAKE_BINARY_DIR}/subs)
+
+set(STAGED_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/stage)
+message(STATUS "${PROJECT_NAME} staged install: ${STAGED_INSTALL_PREFIX}")
+
+find_package(OpenSSL REQUIRED)
+message("OpenSSL include dir: ${OPENSSL_INCLUDE_DIR}")
+message("OpenSSL libraries: ${OPENSSL_LIBRARIES}")
+
+set(THRIFT_VERSION
+    "0.14.1"
+    CACHE STRING "thrift version")
+
+include(ExternalProject)
+ExternalProject_Add(
+  thrift
+  URL https://github.com/apache/thrift/archive/refs/tags/v${THRIFT_VERSION}.tar.gz
+  UPDATE_COMMAND ""
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX}
+             -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
+             -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
+             -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE
+             -DBUILD_COMPILER=OFF
+             -DBUILD_CPP=ON
+             -DBUILD_LIBRARIES=ON
+             -DBUILD_NODEJS=OFF
+             -DBUILD_PYTHON=OFF
+             -DBUILD_JAVASCRIPT=OFF
+             -DBUILD_C_GLIB=OFF
+             -DBUILD_JAVA=OFF
+             -DBUILD_TESTING=OFF
+             -DBUILD_TUTORIALS=OFF
+             -DWITH_STDTHREADS=ON
+             -DWITH_BOOSTTHREADS=OFF
+             -DWITH_BOOST_FUNCTIONAL=OFF
+             -DWITH_BOOST_SMART_PTR=OFF
+  CMAKE_CACHE_ARGS -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
+  TEST_AFTER_INSTALL 0
+  DOWNLOAD_NO_PROGRESS 1
+  LOG_CONFIGURE 1
+  LOG_BUILD 0
+  LOG_INSTALL 1)
+
+install(
+  DIRECTORY ${STAGED_INSTALL_PREFIX}/
+  DESTINATION .
+  USE_SOURCE_PERMISSIONS)