mirror of
https://github.com/cemu-project/vcpkg.git
synced 2025-02-22 18:47:09 +01:00
[rocksdb] fixed third party deps
This commit is contained in:
parent
7a6d530a8c
commit
49d00f4604
@ -1,4 +1,4 @@
|
||||
Source: rocksdb
|
||||
Version: 5.4.6
|
||||
Version: 2017-06-28-18c63af6ef2b9f014c404b88488ae52e6fead03c
|
||||
Description: A library that provides an embeddable, persistent key-value store for fast storage
|
||||
Build-Depends: snappy, lz4, gflags, zlib, gtest
|
||||
|
91
ports/rocksdb/fix-building-both-static-and-shared.patch
Normal file
91
ports/rocksdb/fix-building-both-static-and-shared.patch
Normal file
@ -0,0 +1,91 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index cbbde8e..cb19649 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -315,10 +315,13 @@ endif()
|
||||
|
||||
include_directories(${PROJECT_SOURCE_DIR})
|
||||
include_directories(${PROJECT_SOURCE_DIR}/include)
|
||||
-include_directories(SYSTEM ${PROJECT_SOURCE_DIR}/third-party/gtest-1.7.0/fused-src)
|
||||
+
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
-add_subdirectory(third-party/gtest-1.7.0/fused-src/gtest)
|
||||
+if(BUILD_TEST)
|
||||
+ include_directories(SYSTEM ${PROJECT_SOURCE_DIR}/third-party/gtest-1.7.0/fused-src)
|
||||
+ add_subdirectory(third-party/gtest-1.7.0/fused-src/gtest)
|
||||
+endif()
|
||||
|
||||
# Main library source code
|
||||
|
||||
@@ -574,22 +577,28 @@ if(WITH_LIBRADOS)
|
||||
list(APPEND THIRDPARTY_LIBS rados)
|
||||
endif()
|
||||
|
||||
-add_library(${ROCKSDB_STATIC_LIB} STATIC ${SOURCES})
|
||||
-target_link_libraries(${ROCKSDB_STATIC_LIB}
|
||||
+if(BUILD_STATIC_LIBRARY)
|
||||
+ add_library(${ROCKSDB_STATIC_LIB} STATIC ${SOURCES})
|
||||
+ target_link_libraries(${ROCKSDB_STATIC_LIB}
|
||||
${THIRDPARTY_LIBS} ${SYSTEM_LIBS})
|
||||
-
|
||||
-if(WIN32)
|
||||
- add_library(${ROCKSDB_IMPORT_LIB} SHARED ${SOURCES})
|
||||
- target_link_libraries(${ROCKSDB_IMPORT_LIB}
|
||||
- ${THIRDPARTY_LIBS} ${SYSTEM_LIBS})
|
||||
- set_target_properties(${ROCKSDB_IMPORT_LIB} PROPERTIES
|
||||
- COMPILE_DEFINITIONS "ROCKSDB_DLL;ROCKSDB_LIBRARY_EXPORTS")
|
||||
if(MSVC)
|
||||
set_target_properties(${ROCKSDB_STATIC_LIB} PROPERTIES
|
||||
- COMPILE_FLAGS "/Fd${CMAKE_CFG_INTDIR}/${ROCKSDB_STATIC_LIB}.pdb")
|
||||
+ COMPILE_FLAGS "/Fd${CMAKE_CFG_INTDIR}/${ROCKSDB_STATIC_LIB}.pdb")
|
||||
+ endif()
|
||||
+ set(INSTALL_TARGETS ${INSTALL_TARGETS} ${ROCKSDB_STATIC_LIB})
|
||||
+else()
|
||||
+ if(WIN32)
|
||||
+ add_library(${ROCKSDB_IMPORT_LIB} SHARED ${SOURCES})
|
||||
+ target_link_libraries(${ROCKSDB_IMPORT_LIB}
|
||||
+ ${THIRDPARTY_LIBS} ${SYSTEM_LIBS})
|
||||
set_target_properties(${ROCKSDB_IMPORT_LIB} PROPERTIES
|
||||
+ COMPILE_DEFINITIONS "ROCKSDB_DLL;ROCKSDB_LIBRARY_EXPORTS")
|
||||
+ if(MSVC)
|
||||
+ set_target_properties(${ROCKSDB_IMPORT_LIB} PROPERTIES
|
||||
COMPILE_FLAGS "/Fd${CMAKE_CFG_INTDIR}/${ROCKSDB_IMPORT_LIB}.pdb")
|
||||
+ endif()
|
||||
endif()
|
||||
+ set(INSTALL_TARGETS ${INSTALL_TARGETS} ${ROCKSDB_IMPORT_LIB})
|
||||
endif()
|
||||
|
||||
option(WITH_JNI "build with JNI" OFF)
|
||||
@@ -600,6 +609,7 @@ else()
|
||||
message(STATUS "JNI library is disabled")
|
||||
endif()
|
||||
|
||||
+if(BUILD_TEST)
|
||||
set(TESTS
|
||||
cache/cache_test.cc
|
||||
cache/lru_cache_test.cc
|
||||
@@ -810,6 +820,7 @@ foreach(sourcefile ${C_TEST_EXES})
|
||||
add_dependencies(check ${exename}${ARTIFACT_SUFFIX})
|
||||
endforeach(sourcefile ${C_TEST_EXES})
|
||||
add_subdirectory(tools)
|
||||
+endif()
|
||||
|
||||
# Installation and packaging for Linux
|
||||
if(NOT WIN32)
|
||||
@@ -819,4 +830,15 @@ install(DIRECTORY "${PROJECT_SOURCE_DIR}/include/rocksdb/"
|
||||
COMPONENT devel
|
||||
DESTINATION include/rocksdb)
|
||||
set(CMAKE_INSTALL_PREFIX /usr)
|
||||
+else()
|
||||
+ install(
|
||||
+ TARGETS ${INSTALL_TARGETS}
|
||||
+ RUNTIME DESTINATION bin
|
||||
+ LIBRARY DESTINATION lib
|
||||
+ ARCHIVE DESTINATION lib
|
||||
+ )
|
||||
+endif()
|
||||
+
|
||||
+if(NOT DISABLE_INSTALL_HEADERS)
|
||||
+ install(DIRECTORY "include/rocksdb/" DESTINATION include/rocksdb)
|
||||
endif()
|
64
ports/rocksdb/fix-third-party-deps.patch
Normal file
64
ports/rocksdb/fix-third-party-deps.patch
Normal file
@ -0,0 +1,64 @@
|
||||
diff --git a/thirdparty.inc b/thirdparty.inc
|
||||
index 9fffd9b..2e1ea9d 100644
|
||||
--- a/thirdparty.inc
|
||||
+++ b/thirdparty.inc
|
||||
@@ -21,10 +21,10 @@ set (THIRDPARTY_LIBS "") # Initialization, don't touch
|
||||
#
|
||||
# Edit these 4 lines to define paths to GFLAGS
|
||||
#
|
||||
-set(GFLAGS_HOME $ENV{THIRDPARTY_HOME}/Gflags.Library)
|
||||
-set(GFLAGS_INCLUDE ${GFLAGS_HOME}/inc/include)
|
||||
-set(GFLAGS_LIB_DEBUG ${GFLAGS_HOME}/bin/debug/amd64/gflags.lib)
|
||||
-set(GFLAGS_LIB_RELEASE ${GFLAGS_HOME}/bin/retail/amd64/gflags.lib)
|
||||
+set(GFLAGS_HOME ${CURRENT_INSTALLED_DIR})
|
||||
+set(GFLAGS_INCLUDE ${GFLAGS_HOME}/include)
|
||||
+set(GFLAGS_LIB_DEBUG ${GFLAGS_HOME}/debug/lib/gflags.lib)
|
||||
+set(GFLAGS_LIB_RELEASE ${GFLAGS_HOME}/lib/gflags.lib)
|
||||
|
||||
# ================================================== GFLAGS ==================================================
|
||||
#
|
||||
@@ -65,10 +65,10 @@ endif ()
|
||||
#
|
||||
# Edit these 4 lines to define paths to Snappy
|
||||
#
|
||||
-set(SNAPPY_HOME $ENV{THIRDPARTY_HOME}/Snappy.Library)
|
||||
-set(SNAPPY_INCLUDE ${SNAPPY_HOME}/inc/inc)
|
||||
-set(SNAPPY_LIB_DEBUG ${SNAPPY_HOME}/bin/debug/amd64/snappy.lib)
|
||||
-set(SNAPPY_LIB_RELEASE ${SNAPPY_HOME}/bin/retail/amd64/snappy.lib)
|
||||
+set(SNAPPY_HOME ${CURRENT_INSTALLED_DIR})
|
||||
+set(SNAPPY_INCLUDE ${SNAPPY_HOME}/include)
|
||||
+set(SNAPPY_LIB_DEBUG ${SNAPPY_HOME}/debug/lib/snappy.lib)
|
||||
+set(SNAPPY_LIB_RELEASE ${SNAPPY_HOME}/lib/snappy.lib)
|
||||
|
||||
#
|
||||
# Don't touch these lines
|
||||
@@ -108,10 +108,10 @@ endif ()
|
||||
#
|
||||
# Edit these 4 lines to define paths to LZ4
|
||||
#
|
||||
-set(LZ4_HOME $ENV{THIRDPARTY_HOME}/LZ4.Library)
|
||||
-set(LZ4_INCLUDE ${LZ4_HOME}/inc/include)
|
||||
-set(LZ4_LIB_DEBUG ${LZ4_HOME}/bin/debug/amd64/lz4.lib)
|
||||
-set(LZ4_LIB_RELEASE ${LZ4_HOME}/bin/retail/amd64/lz4.lib)
|
||||
+set(LZ4_HOME ${CURRENT_INSTALLED_DIR})
|
||||
+set(LZ4_INCLUDE ${LZ4_HOME}/include)
|
||||
+set(LZ4_LIB_DEBUG ${LZ4_HOME}/debug/lib/lz4.lib)
|
||||
+set(LZ4_LIB_RELEASE ${LZ4_HOME}/lib/lz4.lib)
|
||||
|
||||
#
|
||||
# Don't touch these lines
|
||||
@@ -151,10 +151,10 @@ endif ()
|
||||
#
|
||||
# Edit these 4 lines to define paths to ZLIB
|
||||
#
|
||||
-set(ZLIB_HOME $ENV{THIRDPARTY_HOME}/ZLIB.Library)
|
||||
-set(ZLIB_INCLUDE ${ZLIB_HOME}/inc/include)
|
||||
-set(ZLIB_LIB_DEBUG ${ZLIB_HOME}/bin/debug/amd64/zlib.lib)
|
||||
-set(ZLIB_LIB_RELEASE ${ZLIB_HOME}/bin/retail/amd64/zlib.lib)
|
||||
+set(ZLIB_HOME ${CURRENT_INSTALLED_DIR})
|
||||
+set(ZLIB_INCLUDE ${ZLIB_HOME}/include)
|
||||
+set(ZLIB_LIB_DEBUG ${ZLIB_HOME}/debug/lib/zlibd.lib)
|
||||
+set(ZLIB_LIB_RELEASE ${ZLIB_HOME}/lib/zlib.lib)
|
||||
|
||||
#
|
||||
# Don't touch these lines
|
@ -6,73 +6,31 @@ if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
message(FATAL_ERROR "Rocksdb only supports x64")
|
||||
endif()
|
||||
|
||||
set(VCPKG_PLATFORM_TOOLSET v140)
|
||||
set(MSVS_VERSION 2015)
|
||||
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO facebook/rocksdb
|
||||
REF v5.4.6
|
||||
SHA512 fe804335ef1b6e37df9b76ab665c1071253d62848878732e541e88444d9d226a1ac70a53a51641e1f554974711781d524d5069ac672589de7d2ec59874ec9290
|
||||
REF 18c63af6ef2b9f014c404b88488ae52e6fead03c
|
||||
SHA512 8dd4d27768feba6d9ddb61debe6cae21fa6d25c27dc347cba3b28cc39d2c1fa860dba7c8adedba4b40883eccccca190b60941cf958855c6b70ec5a3b96c20ac5
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
LIST(APPEND ENV_REPLACE_LIST
|
||||
"set(GFLAGS_HOME \${CURRENT_INSTALLED_DIR})"
|
||||
"set(GFLAGS_INCLUDE \${GFLAGS_HOME}/include)"
|
||||
"set(GFLAGS_LIB_DEBUG \${GFLAGS_HOME}/debug/lib/gflags.lib)"
|
||||
"set(GFLAGS_LIB_RELEASE \${GFLAGS_HOME}/lib/gflags.lib)"
|
||||
"set(SNAPPY_HOME \${CURRENT_INSTALLED_DIR})"
|
||||
"set(SNAPPY_INCLUDE \${SNAPPY_HOME}/include)"
|
||||
"set(SNAPPY_LIB_DEBUG \${SNAPPY_HOME}/debug/lib/snappy.lib)"
|
||||
"set(SNAPPY_LIB_RELEASE \${SNAPPY_HOME}/lib/snappy.lib)"
|
||||
"set(LZ4_HOME \${CURRENT_INSTALLED_DIR})"
|
||||
"set(LZ4_INCLUDE \${LZ4_HOME}/include)"
|
||||
"set(LZ4_LIB_DEBUG \${LZ4_HOME}/debug/lib/lz4.lib)"
|
||||
"set(LZ4_LIB_RELEASE \${LZ4_HOME}/lib/lz4.lib)"
|
||||
"set(ZLIB_HOME \${CURRENT_INSTALLED_DIR})"
|
||||
"set(ZLIB_INCLUDE \${ZLIB_HOME}/include)"
|
||||
"set(ZLIB_LIB_DEBUG \${ZLIB_HOME}/debug/lib/zlibd.lib)"
|
||||
"set(ZLIB_LIB_RELEASE \${ZLIB_HOME}/lib/zlib.lib)"
|
||||
)
|
||||
LIST(APPEND ENV_FIND_LIST
|
||||
"set(GFLAGS_HOME \$ENV{THIRDPARTY_HOME}/Gflags.Library)"
|
||||
"set(GFLAGS_INCLUDE \${GFLAGS_HOME}/inc/include)"
|
||||
"set(GFLAGS_LIB_DEBUG \${GFLAGS_HOME}/bin/debug/amd64/gflags.lib)"
|
||||
"set(GFLAGS_LIB_RELEASE \${GFLAGS_HOME}/bin/retail/amd64/gflags.lib)"
|
||||
"set(SNAPPY_HOME \$ENV{THIRDPARTY_HOME}/Snappy.Library)"
|
||||
"set(SNAPPY_INCLUDE \${SNAPPY_HOME}/inc/inc)"
|
||||
"set(SNAPPY_LIB_DEBUG \${SNAPPY_HOME}/bin/debug/amd64/snappy.lib)"
|
||||
"set(SNAPPY_LIB_RELEASE \${SNAPPY_HOME}/bin/retail/amd64/snappy.lib)"
|
||||
"set(LZ4_HOME \$ENV{THIRDPARTY_HOME}/LZ4.Library)"
|
||||
"set(LZ4_INCLUDE \${LZ4_HOME}/inc/include)"
|
||||
"set(LZ4_LIB_DEBUG \${LZ4_HOME}/bin/debug/amd64/lz4.lib)"
|
||||
"set(LZ4_LIB_RELEASE \${LZ4_HOME}/bin/retail/amd64/lz4.lib)"
|
||||
"set(ZLIB_HOME \$ENV{THIRDPARTY_HOME}/ZLIB.Library)"
|
||||
"set(ZLIB_INCLUDE \${ZLIB_HOME}/inc/include)"
|
||||
"set(ZLIB_LIB_DEBUG \${ZLIB_HOME}/bin/debug/amd64/zlib.lib)"
|
||||
"set(ZLIB_LIB_RELEASE \${ZLIB_HOME}/bin/retail/amd64/zlib.lib)"
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
"${CMAKE_CURRENT_LIST_DIR}/fix-building-both-static-and-shared.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/fix-third-party-deps.patch"
|
||||
)
|
||||
|
||||
message(STATUS "${SOURCE_PATH}/thirdparty.inc is here")
|
||||
|
||||
LIST( LENGTH ENV_REPLACE_LIST COUNT )
|
||||
MATH(EXPR COUNT "${COUNT}-1")
|
||||
|
||||
file(READ "${SOURCE_PATH}/thirdparty.inc" THIRDY_PARTY)
|
||||
foreach( INDEX RANGE ${COUNT})
|
||||
list (GET ENV_REPLACE_LIST ${INDEX} TO_REPLACE)
|
||||
list (GET ENV_FIND_LIST ${INDEX} TO_FIND)
|
||||
message(STATUS "Replacing ${TO_FIND} to ${TO_REPLACE} ")
|
||||
string(REPLACE ${TO_FIND} ${TO_REPLACE} THIRDY_PARTY "${THIRDY_PARTY}")
|
||||
endforeach()
|
||||
|
||||
file(WRITE "${SOURCE_PATH}/thirdparty.inc" "${THIRDY_PARTY}")
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
set(BUILD_STATIC_LIBRARY ON)
|
||||
else()
|
||||
set(BUILD_STATIC_LIBRARY OFF)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DGIT_EXECUTABLE=${GIT}
|
||||
-DGFLAGS=1
|
||||
@ -80,7 +38,12 @@ vcpkg_configure_cmake(
|
||||
-DLZ4=1
|
||||
-DZLIB=1
|
||||
-DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR}
|
||||
-DBUILD_STATIC_LIBRARY=${BUILD_STATIC_LIBRARY}
|
||||
-DFAIL_ON_WARNINGS=OFF
|
||||
OPTIONS_DEBUG
|
||||
-DDISABLE_INSTALL_HEADERS=ON
|
||||
)
|
||||
|
||||
vcpkg_install_cmake(DISABLE_PARALLEL)
|
||||
|
||||
vcpkg_build_cmake()
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/rocksdb RENAME copyright)
|
||||
|
Loading…
x
Reference in New Issue
Block a user