early-access version 2853

This commit is contained in:
pineappleEA
2022-07-23 03:01:36 +02:00
parent 1f2b5081b5
commit 1f111bb69c
8955 changed files with 418777 additions and 999 deletions

View File

@@ -0,0 +1,57 @@
CMAKE_MINIMUM_REQUIRED(VERSION 3.9)
PROJECT(ipsec C)
IF (SOURCE_PATH)
SET(CMAKE_SOURCE_DIR ${SOURCE_PATH})
ENDIF ()
INCLUDE(ProcessorCount)
PROCESSORCOUNT(PROCS)
FIND_PROGRAM(NASM nasm)
IF (NOT NASM)
MESSAGE(FATAL_ERROR "NASM not found")
ENDIF ()
FIND_PROGRAM(MAKE make)
IF (NOT MAKE)
MESSAGE(FATAL_ERROR "MAKE not found")
ENDIF ()
IF (EXEC_ENV STREQUAL "Windows")
FIND_PROGRAM(MAKE nmake)
IF (NOT MAKE)
MESSAGE(FATAL_ERROR "nmake not found")
ENDIF ()
ENDIF ()
SET(MAKE_FLAGS)
IF (EXEC_ENV STREQUAL "Windows")
LIST(APPEND MAKE_FLAGS /f win_x64.mak)
ENDIF ()
IF (CMAKE_BUILD_TYPE STREQUAL Debug)
LIST(APPEND MAKE_FLAGS DEBUG=y)
ENDIF ()
IF (NOT BUILD_SHARED_LIBS)
LIST(APPEND MAKE_FLAGS SHARED=n)
ENDIF ()
MESSAGE(STATUS "${MAKE_FLAGS}")
ADD_CUSTOM_TARGET(ipsec-mb ALL
COMMAND ${MAKE} -j ${MAKE_FLAGS}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/
# VERBATIM
)
SET(LIB_PATH ${CMAKE_SOURCE_DIR}/)
IF(BUILD_SHARED_LIBS)
STRING(APPEND LIB_PATH libIPSec_MB.so)
ELSE ()
STRING(APPEND LIB_PATH libIPSec_MB.a)
ENDIF ()
INSTALL(FILES ${LIB_PATH}
DESTINATION ${CMAKE_SOURCE_DIR}/${CMAKE_BUILD_TYPE}/lib/)
INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/include DESTINATION ${CMAKE_SOURCE_DIR}/${CMAKE_BUILD_TYPE}/)

View File

@@ -0,0 +1,56 @@
IF (NOT VCPKG_CMAKE_SYSTEM_NAME)
SET(EXEC_ENV "Windows")
ELSE ()
SET(EXEC_ENV "${VCPKG_CMAKE_SYSTEM_NAME}")
ENDIF ()
IF (NOT VCPKG_TARGET_IS_LINUX)
MESSAGE(FATAL_ERROR "Intel(R) Multi-Buffer Crypto for IPsec Library currently only supports Linux/Windows platforms")
MESSAGE(STATUS "Well, it is not true, but I didnt manage to get it working on Windows")
ENDIF ()
IF (VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
MESSAGE(FATAL_ERROR "Intel(R) Multi-Buffer Crypto for IPsec Library currently only supports x64 architecture")
ELSEIF (NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
MESSAGE(FATAL_ERROR "Unsupported architecture: ${VCPKG_TARGET_ARCHITECTURE}")
ENDIF ()
VCPKG_FROM_GITHUB(
OUT_SOURCE_PATH SOURCE_PATH
REPO spdk/intel-ipsec-mb
REF spdk
SHA512 037fc382d9aa87b6645309f29cb761a584ed855c583638c9e27b5b7200ceb2ae21ad5adcc7c92b2b1d1387186a7fd2b5ae22f337a8f52dea3f6c35d8f90b42bd
HEAD_REF master
)
VCPKG_FIND_ACQUIRE_PROGRAM(NASM)
execute_process(
COMMAND "${NASM}" -v
OUTPUT_VARIABLE NASM_OUTPUT
ERROR_VARIABLE NASM_OUTPUT
)
STRING(REGEX REPLACE "NASM version ([0-9]+\\.[0-9]+\\.[0-9]+).*" "\\1" NASM_VERSION "${NASM_OUTPUT}")
IF (NASM_VERSION VERSION_LESS 2.13.03)
MESSAGE(FATAL_ERROR "NASM version 2.13.03 (or newer) is required to build this package")
ENDIF ()
GET_FILENAME_COMPONENT(NASM_PATH ${NASM} DIRECTORY)
vcpkg_add_to_path("${NASM_PATH}")
VCPKG_CONFIGURE_CMAKE(
SOURCE_PATH ${CMAKE_CURRENT_LIST_DIR}
PREFER_NINJA
OPTIONS
-DSOURCE_PATH=${SOURCE_PATH}
-DEXEC_ENV=${VCPKG_CMAKE_SYSTEM_NAME}
)
VCPKG_INSTALL_CMAKE()
FILE(INSTALL ${SOURCE_PATH}/Release/lib/ DESTINATION ${CURRENT_PACKAGES_DIR}/lib/spdk)
FILE(INSTALL ${SOURCE_PATH}/Debug/lib/ DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/spdk)
FILE(INSTALL ${SOURCE_PATH}/Release/include/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/${PORT})
FILE(INSTALL ${CMAKE_CURRENT_LIST_DIR}/spdk-ipsecConfig.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
FILE(INSTALL ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
FILE(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

View File

@@ -0,0 +1,17 @@
FUNCTION(SET_LIBRARY_TARGET NAMESPACE LIB_NAME DEBUG_LIB_FILE_NAME RELEASE_LIB_FILE_NAME INCLUDE_DIR)
ADD_LIBRARY(${NAMESPACE}::${LIB_NAME} STATIC IMPORTED)
SET_TARGET_PROPERTIES(${NAMESPACE}::${LIB_NAME} PROPERTIES
IMPORTED_CONFIGURATIONS "RELEASE;DEBUG"
IMPORTED_LOCATION_RELEASE "${RELEASE_LIB_FILE_NAME}"
IMPORTED_LOCATION_DEBUG "${DEBUG_LIB_FILE_NAME}"
INTERFACE_INCLUDE_DIRECTORIES "${INCLUDE_DIR}"
)
SET(${NAMESPACE}_${LIB_NAME}_FOUND 1)
ENDFUNCTION()
GET_FILENAME_COMPONENT(ROOT "${CMAKE_CURRENT_LIST_FILE}" PATH)
GET_FILENAME_COMPONENT(ROOT "${ROOT}" PATH)
GET_FILENAME_COMPONENT(ROOT "${ROOT}" PATH)
SET_LIBRARY_TARGET("SPDK" "ipsec" "${ROOT}/debug/lib/spdk/libIPSec_MB.a" "${ROOT}/lib/spdk/libIPSec_MB.a" "${ROOT}/include/spdk-ipsec")

1
externals/vcpkg/ports/spdk-ipsec/usage vendored Executable file
View File

@@ -0,0 +1 @@
This package is a dependency of SPDK port. It is not intended for direct consumption by end-user.

7
externals/vcpkg/ports/spdk-ipsec/vcpkg.json vendored Executable file
View File

@@ -0,0 +1,7 @@
{
"name": "spdk-ipsec",
"version-string": "20180711",
"port-version": 1,
"description": "SPDK mirror of ipsec. Intel(R) Multi-Buffer Crypto for IPsec Library",
"supports": "x64 & linux"
}