Point OpenSSL @ latest FIPS2.0 module; 1.0.2.m and commit CMake file changes to build OpenSSL. Need to moving sources back from latest layout to 1.0.2 layout
This commit is contained in:
Родитель
9af05a908a
Коммит
1204c3c385
|
@ -0,0 +1,97 @@
|
|||
# - Returns a version string from Git
|
||||
#
|
||||
# These functions force a re-configure on each git commit so that you can
|
||||
# trust the values of the variables in your build system.
|
||||
#
|
||||
# get_openssl_head_revision(<refspecvar> <hashvar> [<additional arguments to git describe> ...])
|
||||
#
|
||||
# Returns the refspec and sha hash of the current head revision
|
||||
#
|
||||
# get_openssl_describe(<var> [<additional arguments to git describe> ...])
|
||||
#
|
||||
# Returns the results of git describe on the source tree, and adjusting
|
||||
# the output so that it tests false if an error occurs.
|
||||
#
|
||||
# Requires CMake 2.6 or newer (uses the 'function' command)
|
||||
#
|
||||
# Original Author:
|
||||
# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
|
||||
# http://academic.cleardefinition.com
|
||||
# Iowa State University HCI Graduate Program/VRAC
|
||||
#
|
||||
# Copyright Iowa State University 2009-2010.
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
if(__get_openssl_revision_description)
|
||||
return()
|
||||
endif()
|
||||
set(__get_openssl_revision_description YES)
|
||||
|
||||
# We must run the following at "include" time, not at function call time,
|
||||
# to find the path to this module rather than the path to a calling list file
|
||||
get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH)
|
||||
|
||||
function(get_openssl_head_revision _refspecvar _hashvar)
|
||||
|
||||
set(GIT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/openssl/.git")
|
||||
|
||||
file(READ ${GIT_DIR} submodule)
|
||||
string(REGEX REPLACE "gitdir: (.*)\n$" "\\1" GIT_DIR_RELATIVE ${submodule})
|
||||
get_filename_component(SUBMODULE_DIR ${GIT_DIR} PATH)
|
||||
get_filename_component(GIT_DIR ${SUBMODULE_DIR}/${GIT_DIR_RELATIVE} ABSOLUTE)
|
||||
|
||||
set(GIT_DATA "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/git-data")
|
||||
if(NOT EXISTS "${GIT_DATA}")
|
||||
file(MAKE_DIRECTORY "${GIT_DATA}")
|
||||
endif()
|
||||
|
||||
if(NOT EXISTS "${GIT_DIR}/HEAD")
|
||||
return()
|
||||
endif()
|
||||
set(HEAD_FILE "${GIT_DATA}/HEAD")
|
||||
configure_file("${GIT_DIR}/HEAD" "${HEAD_FILE}" COPYONLY)
|
||||
|
||||
configure_file("${_gitdescmoddir}/GetOpenSSLRevisionDescription.cmake.in"
|
||||
"${GIT_DATA}/grabRef.cmake"
|
||||
@ONLY)
|
||||
include("${GIT_DATA}/grabRef.cmake")
|
||||
|
||||
set(${_refspecvar} "${HEAD_REF}" PARENT_SCOPE)
|
||||
set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(get_openssl_describe _var)
|
||||
if(NOT GIT_FOUND)
|
||||
find_package(Git QUIET)
|
||||
endif()
|
||||
get_openssl_head_revision(refspec hash)
|
||||
if(NOT GIT_FOUND)
|
||||
set(${_var} "GIT-NOTFOUND" PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
if(NOT hash)
|
||||
set(${_var} "HEAD-HASH-NOTFOUND" PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
execute_process(COMMAND
|
||||
"${GIT_EXECUTABLE}"
|
||||
describe
|
||||
${hash}
|
||||
${ARGN}
|
||||
WORKING_DIRECTORY
|
||||
"${CMAKE_SOURCE_DIR}"
|
||||
RESULT_VARIABLE
|
||||
res
|
||||
OUTPUT_VARIABLE
|
||||
out
|
||||
ERROR_QUIET
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if(NOT res EQUAL 0)
|
||||
set(out "${out}-${res}-NOTFOUND")
|
||||
endif()
|
||||
|
||||
set(${_var} "${out}" PARENT_SCOPE)
|
||||
endfunction()
|
|
@ -0,0 +1,41 @@
|
|||
#
|
||||
# Internal file for GetOpenSSLRevisionDescription.cmake
|
||||
#
|
||||
# Requires CMake 2.6 or newer (uses the 'function' command)
|
||||
#
|
||||
# Original Author:
|
||||
# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
|
||||
# http://academic.cleardefinition.com
|
||||
# Iowa State University HCI Graduate Program/VRAC
|
||||
#
|
||||
# Copyright Iowa State University 2009-2010.
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
set(HEAD_HASH)
|
||||
|
||||
file(READ "@HEAD_FILE@" HEAD_CONTENTS LIMIT 1024)
|
||||
|
||||
string(STRIP "${HEAD_CONTENTS}" HEAD_CONTENTS)
|
||||
if(HEAD_CONTENTS MATCHES "ref")
|
||||
# named branch
|
||||
string(REPLACE "ref: " "" HEAD_REF "${HEAD_CONTENTS}")
|
||||
if(EXISTS "@GIT_DIR@/${HEAD_REF}")
|
||||
configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY)
|
||||
else()
|
||||
configure_file("@GIT_DIR@/packed-refs" "@GIT_DATA@/packed-refs" COPYONLY)
|
||||
file(READ "@GIT_DATA@/packed-refs" PACKED_REFS)
|
||||
if(${PACKED_REFS} MATCHES "([0-9a-z]*) ${HEAD_REF}")
|
||||
set(HEAD_HASH "${CMAKE_MATCH_1}")
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
# detached HEAD
|
||||
configure_file("@GIT_DIR@/HEAD" "@GIT_DATA@/head-ref" COPYONLY)
|
||||
endif()
|
||||
|
||||
if(NOT HEAD_HASH)
|
||||
file(READ "@GIT_DATA@/head-ref" HEAD_HASH LIMIT 1024)
|
||||
string(STRIP "${HEAD_HASH}" HEAD_HASH)
|
||||
endif()
|
|
@ -0,0 +1,190 @@
|
|||
cmake_minimum_required( VERSION 3.4.0 )
|
||||
# kudos to https://github.com/madwax/3ndparty.cmake.openssl/
|
||||
|
||||
include( CMakeParseArguments )
|
||||
project( crypto )
|
||||
|
||||
set( TARGET_SOURCE_DIR_TRUE "${OpenSSL_SOURCE_PATH}/crypto" )
|
||||
set( TARGET_INCLUDE_DIRS ${OpenSLL_INCLUDE_PATH} )
|
||||
set( TARGET_INCLUDE_DIRS_PRIVATE "${TARGET_SOURCE_DIR_TRUE}" "${TARGET_SOURCE_DIR_TRUE}/asn1" "${TARGET_SOURCE_DIR_TRUE}/evp" "${TARGET_SOURCE_DIR_TRUE}/modes")
|
||||
set( TARGET_DEFINES "OPENSSL_THREADS" )
|
||||
set( TARGET_DEFINES_PRIVATE "${OpenSSL_COMPILER_DEFINES}" )
|
||||
set( TARGET_COMPILE_FLAGS "" )
|
||||
set( TARGET_COMPILE_FLAGS_PRIVATE "" )
|
||||
set( TARGET_LINK "" )
|
||||
set( TARGET_LINK_PRIVATE "" )
|
||||
set( TARGET_SOURCES "" )
|
||||
|
||||
# Because OpenSSL does silly things we have to create a proper include dir to build everything
|
||||
file( COPY ${OpenSSL_SOURCE_PATH}/e_os.h DESTINATION ${OpenSLL_INCLUDE_PATH} )
|
||||
file( COPY ${OpenSSL_SOURCE_PATH}/e_os2.h DESTINATION ${OpenSLL_INCLUDE_PATH} )
|
||||
|
||||
# we hold the sources (.c) under XSRC and headers (.h) under XINC
|
||||
# we do this as we need to copy headers else the lib will not build.
|
||||
set( XSRC "" )
|
||||
set( XINC "" )
|
||||
set( XPNC "" )
|
||||
|
||||
# OpenSSL Has a LOT of source files so we only compile what we need
|
||||
include( crypto_sources )
|
||||
|
||||
file( COPY ${XINC} DESTINATION ${OpenSLL_INCLUDE_PATH}/openssl FILES_MATCHING REGEX "\.h$" )
|
||||
file( COPY ${XPNC} DESTINATION ${OpenSLL_INCLUDE_PATH}/internal FILES_MATCHING REGEX "\.h$" )
|
||||
file( COPY ${OpenSSL_SOURCE_PATH}/crypto/opensslconf.h.in DESTINATION ${OpenSLL_INCLUDE_PATH}/openssl )
|
||||
|
||||
# HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK
|
||||
# HACK Content copied from ${OpenSLL_INCLUDE_PATH}/openssl/opensslconf.h.in and modified HACK
|
||||
# HACK to fit our needs. TODO: figure out how to emulate perl via CMAKE to replace tokens HACK
|
||||
# HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK HACK
|
||||
set( CONF "
|
||||
#define OPENSSL_NO_GMP
|
||||
#define OPENSSL_NO_JPAKE
|
||||
#define OPENSSL_NO_KRB5
|
||||
#define OPENSSL_NO_MD2
|
||||
#define OPENSSL_NO_RFC3779
|
||||
#define OPENSSL_NO_STORE
|
||||
#define OPENSSL_NO_DYNAMIC_ENGINE
|
||||
#define OPENSSL_NO_SCTP
|
||||
#define OPENSSL_NO_EC_NISTP_64_GCC_128
|
||||
/*
|
||||
*
|
||||
*
|
||||
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the OpenSSL license (the \"License\"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/*
|
||||
* Sometimes OPENSSSL_NO_xxx ends up with an empty file and some compilers
|
||||
* don't like that. This will hopefully silence them.
|
||||
*/
|
||||
#define NON_EMPTY_TRANSLATION_UNIT static void *dummy = &dummy;
|
||||
|
||||
/*
|
||||
* Applications should use -DOPENSSL_API_COMPAT=<version> to suppress the
|
||||
* declarations of functions deprecated in or before <version>. Otherwise, they
|
||||
* still won't see them if the library has been built to disable deprecated
|
||||
* functions.
|
||||
*/
|
||||
#if defined(OPENSSL_NO_DEPRECATED)
|
||||
# define DECLARE_DEPRECATED(f)
|
||||
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
|
||||
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
|
||||
#else
|
||||
# define DECLARE_DEPRECATED(f) f;
|
||||
#endif
|
||||
|
||||
#ifndef OPENSSL_FILE
|
||||
# ifdef OPENSSL_NO_FILENAMES
|
||||
# define OPENSSL_FILE \"\"
|
||||
# define OPENSSL_LINE 0
|
||||
# else
|
||||
# define OPENSSL_FILE __FILE__
|
||||
# define OPENSSL_LINE __LINE__
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef OPENSSL_MIN_API
|
||||
# define OPENSSL_MIN_API 0
|
||||
#endif
|
||||
|
||||
#if !defined(OPENSSL_API_COMPAT) || OPENSSL_API_COMPAT < OPENSSL_MIN_API
|
||||
# undef OPENSSL_API_COMPAT
|
||||
# define OPENSSL_API_COMPAT OPENSSL_MIN_API
|
||||
#endif
|
||||
|
||||
#if OPENSSL_API_COMPAT < 0x10200000L
|
||||
# define DEPRECATEDIN_1_2_0(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
# define DEPRECATEDIN_1_2_0(f)
|
||||
#endif
|
||||
|
||||
#if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
# define DEPRECATEDIN_1_1_0(f)
|
||||
#endif
|
||||
|
||||
#if OPENSSL_API_COMPAT < 0x10000000L
|
||||
# define DEPRECATEDIN_1_0_0(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
# define DEPRECATEDIN_1_0_0(f)
|
||||
#endif
|
||||
|
||||
#if OPENSSL_API_COMPAT < 0x00908000L
|
||||
# define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
# define DEPRECATEDIN_0_9_8(f)
|
||||
#endif
|
||||
|
||||
// set in crypto.cmake
|
||||
#undef I386_ONLY
|
||||
#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
|
||||
#define OPENSSL_SYS_UEFI
|
||||
#define OPENSSL_SYS_UNIX
|
||||
#define OPENSSL_RAND_SEED_NONE
|
||||
#define BN_ULONG unsigned long
|
||||
#define BN_BYTES sizeof(BN_ULONG)
|
||||
|
||||
typedef unsigned char UINT8;
|
||||
typedef signed char INT8;
|
||||
typedef unsigned short UINT16;
|
||||
typedef short INT16;
|
||||
typedef unsigned int UINT32;
|
||||
typedef int INT32;
|
||||
typedef unsigned long long UINT64;
|
||||
typedef long long INT64;
|
||||
|
||||
#define ossl_ssize_t int
|
||||
#define OSSL_SSIZE_MAX INT_MAX
|
||||
#define RC4_INT char /* RC4_CHAR use 'char' instead of 'int' for RC4_INT in crypto/rc4/rc4.h from lib/openssl/Configure */
|
||||
|
||||
" )
|
||||
IF ((AOSP) OR (LINUX))
|
||||
set( CONF "${CONF}
|
||||
#undef OPENSSL_NO_AFALGENG
|
||||
")
|
||||
ELSE()
|
||||
set( CONF "${CONF}
|
||||
#define OPENSSL_NO_AFALGENG
|
||||
")
|
||||
ENDIF()
|
||||
|
||||
file( WRITE "${OpenSLL_INCLUDE_PATH}/openssl/opensslconf.h" "${CONF}" )
|
||||
|
||||
set( BuildInfH "
|
||||
#ifndef MK1MF_BUILD
|
||||
/* Generated byt crypto.cmake - does it break anything? */
|
||||
#define CFLAGS \"\"
|
||||
#define PLATFORM \"${CMAKE_SYSTEM_NAME}\"
|
||||
#define DATE \"\"
|
||||
#endif
|
||||
" )
|
||||
file( WRITE ${OpenSLL_INCLUDE_PATH}/buildinf.h "${BuildInfH}" )
|
||||
|
||||
set( TARGET_SOURCES ${XSRC} ${XINC} )
|
||||
|
||||
# OpenSSL is not the best when it comes to how it handles headers.
|
||||
# Where they are we need to create the projects include dir and copy stuff into it!
|
||||
|
||||
add_library( crypto STATIC ${TARGET_SOURCES} )
|
||||
|
||||
# specify that this library is to be built with C++14
|
||||
set_property(TARGET crypto PROPERTY CXX_STANDARD 14)
|
||||
|
||||
include_directories(
|
||||
${include_directories}
|
||||
${OpenSLL_INCLUDE_PATH}
|
||||
)
|
||||
|
||||
target_include_directories( crypto PRIVATE ${TARGET_INCLUDE_DIRS} ${TARGET_INCLUDE_DIRS_PRIVATE} )
|
||||
target_compile_definitions( crypto PRIVATE ${TARGET_DEFINES} ${TARGET_DEFINES_PRIVATE} )
|
||||
target_link_libraries ( crypto PRIVATE ${TARGET_LINK} ${TARGET_LINK_PRIVATE} )
|
||||
target_compile_options ( crypto PRIVATE ${TARGET_COMPILE_FLAGS} ${TARGET_COMPILE_FLAGS_PRIVATE} )
|
||||
target_include_directories( crypto PUBLIC ${TARGET_INCLUDE_DIRS} ${OpenSLL_INCLUDE_PATH}/openssl)
|
||||
target_compile_definitions( crypto PUBLIC ${TARGET_DEFINES} )
|
||||
target_link_libraries ( crypto PUBLIC ${TARGET_LINK} )
|
||||
target_compile_options ( crypto PUBLIC ${TARGET_COMPILE_FLAGS} )
|
|
@ -0,0 +1,458 @@
|
|||
# kudos to https://github.com/madwax/3ndparty.cmake.openssl/ for the starting point!
|
||||
set( XRT "${TARGET_SOURCE_DIR_TRUE}/" )
|
||||
|
||||
# engines
|
||||
IF ((AOSP) OR (LINUX))
|
||||
list( APPEND XSRC
|
||||
${XRT}../engines/e_afalg_err.c
|
||||
${XRT}../engines/e_afalg.c
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
list( APPEND XSRC
|
||||
${XRT}../engines/e_capi_err.c
|
||||
${XRT}../engines/e_capi.c
|
||||
${XRT}../engines/e_dasync_err.c
|
||||
${XRT}../engines/e_dasync.c
|
||||
${XRT}../engines/e_ossltest_err.c
|
||||
${XRT}../engines/e_ossltest.c
|
||||
${XRT}../engines/e_padlock.c
|
||||
)
|
||||
|
||||
# aes
|
||||
list( APPEND XSRC
|
||||
${XRT}aes/aes_cbc.c ${XRT}aes/aes_ecb.c ${XRT}aes/aes_ofb.c
|
||||
${XRT}aes/aes_cfb.c ${XRT}aes/aes_ige.c ${XRT}aes/aes_wrap.c
|
||||
${XRT}aes/aes_core.c ${XRT}aes/aes_misc.c ${XRT}aes/aes_x86core.c
|
||||
)
|
||||
|
||||
# asn1
|
||||
list( APPEND XSRC
|
||||
${XRT}asn1/a_bitstr.c ${XRT}asn1/a_utctm.c ${XRT}asn1/d2i_pu.c ${XRT}asn1/tasn_enc.c
|
||||
${XRT}asn1/a_d2i_fp.c ${XRT}asn1/a_utf8.c ${XRT}asn1/evp_asn1.c ${XRT}asn1/tasn_fre.c
|
||||
${XRT}asn1/a_digest.c ${XRT}asn1/a_verify.c ${XRT}asn1/f_int.c ${XRT}asn1/tasn_new.c
|
||||
${XRT}asn1/a_dup.c ${XRT}asn1/ameth_lib.c ${XRT}asn1/f_string.c ${XRT}asn1/tasn_prn.c
|
||||
${XRT}asn1/a_gentm.c ${XRT}asn1/asn1_err.c ${XRT}asn1/i2d_pr.c ${XRT}asn1/tasn_scn.c
|
||||
${XRT}asn1/a_i2d_fp.c ${XRT}asn1/asn1_gen.c ${XRT}asn1/i2d_pu.c ${XRT}asn1/tasn_typ.c
|
||||
${XRT}asn1/a_int.c ${XRT}asn1/asn1_item_list.c ${XRT}asn1/n_pkey.c ${XRT}asn1/tasn_utl.c
|
||||
${XRT}asn1/a_mbstr.c ${XRT}asn1/asn1_lib.c ${XRT}asn1/nsseq.c ${XRT}asn1/x_algor.c
|
||||
${XRT}asn1/a_object.c ${XRT}asn1/asn1_par.c ${XRT}asn1/p5_pbe.c ${XRT}asn1/x_bignum.c
|
||||
${XRT}asn1/a_octet.c ${XRT}asn1/asn_mime.c ${XRT}asn1/p5_pbev2.c ${XRT}asn1/x_info.c
|
||||
${XRT}asn1/a_print.c ${XRT}asn1/asn_moid.c ${XRT}asn1/p5_scrypt.c ${XRT}asn1/x_int64.c
|
||||
${XRT}asn1/a_sign.c ${XRT}asn1/asn_mstbl.c ${XRT}asn1/p8_pkey.c ${XRT}asn1/x_long.c
|
||||
${XRT}asn1/a_strex.c ${XRT}asn1/asn_pack.c ${XRT}asn1/t_bitst.c ${XRT}asn1/x_pkey.c
|
||||
${XRT}asn1/a_strnid.c ${XRT}asn1/bio_asn1.c ${XRT}asn1/t_pkey.c ${XRT}asn1/x_sig.c
|
||||
${XRT}asn1/a_time.c ${XRT}asn1/bio_ndef.c ${XRT}asn1/t_spki.c ${XRT}asn1/x_spki.c
|
||||
${XRT}asn1/a_type.c ${XRT}asn1/d2i_pr.c ${XRT}asn1/tasn_dec.c ${XRT}asn1/x_val.c
|
||||
)
|
||||
|
||||
# bf
|
||||
list( APPEND XSRC
|
||||
${XRT}bf/bf_cfb64.c ${XRT}bf/bf_enc.c ${XRT}bf/bf_skey.c
|
||||
${XRT}bf/bf_ecb.c ${XRT}bf/bf_ofb64.c
|
||||
)
|
||||
|
||||
# bio
|
||||
list( APPEND XSRC
|
||||
${XRT}bio/b_addr.c ${XRT}bio/bf_lbuf.c ${XRT}bio/bio_meth.c ${XRT}bio/bss_file.c
|
||||
${XRT}bio/b_dump.c ${XRT}bio/bf_nbio.c ${XRT}bio/bss_acpt.c ${XRT}bio/bss_log.c
|
||||
${XRT}bio/b_print.c ${XRT}bio/bf_null.c ${XRT}bio/bss_bio.c ${XRT}bio/bss_mem.c
|
||||
${XRT}bio/b_sock.c ${XRT}bio/bio_cb.c ${XRT}bio/bss_conn.c ${XRT}bio/bss_null.c
|
||||
${XRT}bio/b_sock2.c ${XRT}bio/bio_err.c ${XRT}bio/bss_dgram.c ${XRT}bio/bss_sock.c
|
||||
${XRT}bio/bf_buff.c ${XRT}bio/bio_lib.c ${XRT}bio/bss_fd.c
|
||||
)
|
||||
|
||||
# bn
|
||||
#list( APPEND XSRC
|
||||
#${XRT}bn/bn_add.c ${XRT}bn/bn_err.c ${XRT}bn/bn_mod.c ${XRT}bn/bn_recp.c
|
||||
#${XRT}bn/bn_asm.c ${XRT}bn/bn_exp.c ${XRT}bn/bn_mont.c ${XRT}bn/bn_shift.c
|
||||
#${XRT}bn/bn_blind.c ${XRT}bn/bn_exp2.c ${XRT}bn/bn_mpi.c ${XRT}bn/bn_sqr.c
|
||||
#${XRT}bn/bn_const.c ${XRT}bn/bn_gcd.c ${XRT}bn/bn_mul.c ${XRT}bn/bn_sqrt.c
|
||||
#${XRT}bn/bn_ctx.c ${XRT}bn/bn_gf2m.c ${XRT}bn/bn_nist.c ${XRT}bn/bn_srp.c
|
||||
#${XRT}bn/bn_depr.c ${XRT}bn/bn_intern.c ${XRT}bn/bn_prime.c ${XRT}bn/bn_word.c
|
||||
#${XRT}bn/bn_dh.c ${XRT}bn/bn_kron.c ${XRT}bn/bn_print.c ${XRT}bn/bn_x931p.c
|
||||
#${XRT}bn/bn_div.c ${XRT}bn/bn_lib.c ${XRT}bn/bn_rand.c ${XRT}bn/rsaz_exp.c
|
||||
#)
|
||||
|
||||
# buffer
|
||||
list( APPEND XSRC
|
||||
${XRT}buffer/buf_err.c ${XRT}buffer/buffer.c
|
||||
)
|
||||
|
||||
# camella
|
||||
list( APPEND XSRC
|
||||
${XRT}camellia/camellia.c ${XRT}camellia/cmll_cfb.c ${XRT}camellia/cmll_ecb.c ${XRT}camellia/cmll_ofb.c
|
||||
${XRT}camellia/cmll_cbc.c ${XRT}camellia/cmll_ctr.c ${XRT}camellia/cmll_misc.c
|
||||
)
|
||||
|
||||
# cast
|
||||
list( APPEND XSRC
|
||||
${XRT}cast/c_cfb64.c ${XRT}cast/c_enc.c ${XRT}cast/c_skey.c
|
||||
${XRT}cast/c_ecb.c ${XRT}cast/c_ofb64.c
|
||||
)
|
||||
|
||||
# cmac
|
||||
list( APPEND XSRC
|
||||
${XRT}cmac/cm_ameth.c ${XRT}cmac/cm_pmeth.c ${XRT}cmac/cmac.c
|
||||
)
|
||||
|
||||
# cms
|
||||
list( APPEND XSRC
|
||||
${XRT}cms/cms_asn1.c ${XRT}cms/cms_enc.c ${XRT}cms/cms_io.c ${XRT}cms/cms_sd.c
|
||||
${XRT}cms/cms_att.c ${XRT}cms/cms_env.c ${XRT}cms/cms_kari.c ${XRT}cms/cms_smime.c
|
||||
${XRT}cms/cms_cd.c ${XRT}cms/cms_err.c ${XRT}cms/cms_lib.c
|
||||
${XRT}cms/cms_dd.c ${XRT}cms/cms_ess.c ${XRT}cms/cms_pwri.c
|
||||
)
|
||||
|
||||
#comp
|
||||
list( APPEND XSRC
|
||||
${XRT}comp/c_zlib.c ${XRT}comp/comp_err.c ${XRT}comp/comp_lib.c
|
||||
)
|
||||
|
||||
# conf
|
||||
list( APPEND XSRC
|
||||
${XRT}conf/conf_api.c ${XRT}conf/conf_err.c ${XRT}conf/conf_mall.c ${XRT}conf/conf_sap.c
|
||||
${XRT}conf/conf_def.c ${XRT}conf/conf_lib.c ${XRT}conf/conf_mod.c
|
||||
)
|
||||
|
||||
# des
|
||||
list( APPEND XSRC
|
||||
${XRT}des/cbc_cksm.c ${XRT}des/des_enc.c ${XRT}des/ncbc_enc.c ${XRT}des/qud_cksm.c
|
||||
${XRT}des/cbc_enc.c ${XRT}des/ecb3_enc.c ${XRT}des/ofb64ede.c ${XRT}des/rand_key.c
|
||||
${XRT}des/cfb64ede.c ${XRT}des/ecb_enc.c ${XRT}des/ofb64enc.c ${XRT}des/set_key.c
|
||||
${XRT}des/cfb64enc.c ${XRT}des/fcrypt.c ${XRT}des/ofb_enc.c ${XRT}des/str2key.c
|
||||
${XRT}des/cfb_enc.c ${XRT}des/fcrypt_b.c ${XRT}des/pcbc_enc.c ${XRT}des/xcbc_enc.c
|
||||
)
|
||||
|
||||
# dh
|
||||
list( APPEND XSRC
|
||||
${XRT}dh/dh_ameth.c ${XRT}dh/dh_err.c ${XRT}dh/dh_lib.c ${XRT}dh/dh_rfc5114.c
|
||||
${XRT}dh/dh_asn1.c ${XRT}dh/dh_gen.c ${XRT}dh/dh_meth.c ${XRT}dh/dh_rfc7919.c
|
||||
${XRT}dh/dh_check.c ${XRT}dh/dh_kdf.c ${XRT}dh/dh_pmeth.c
|
||||
${XRT}dh/dh_depr.c ${XRT}dh/dh_key.c ${XRT}dh/dh_prn.c
|
||||
)
|
||||
|
||||
# dsa
|
||||
list( APPEND XSRC
|
||||
${XRT}dsa/dsa_ameth.c ${XRT}dsa/dsa_gen.c ${XRT}dsa/dsa_ossl.c ${XRT}dsa/dsa_vrf.c
|
||||
${XRT}dsa/dsa_asn1.c ${XRT}dsa/dsa_key.c ${XRT}dsa/dsa_pmeth.c
|
||||
${XRT}dsa/dsa_depr.c ${XRT}dsa/dsa_lib.c ${XRT}dsa/dsa_prn.c
|
||||
${XRT}dsa/dsa_err.c ${XRT}dsa/dsa_meth.c ${XRT}dsa/dsa_sign.c
|
||||
)
|
||||
|
||||
# dso
|
||||
#list( APPEND XSRC
|
||||
#${XRT}dso/dso_dl.c ${XRT}dso/dso_err.c ${XRT}dso/dso_openssl.c ${XRT}dso/dso_win32.c
|
||||
#${XRT}dso/dso_dlfcn.c ${XRT}dso/dso_lib.c ${XRT}dso/dso_vms.c
|
||||
#)
|
||||
|
||||
# ec
|
||||
#list( APPEND XSRC
|
||||
#${XRT}ec/curve25519.c ${XRT}ec/ec_err.c ${XRT}ec/ecdh_ossl.c ${XRT}ec/ecp_nistp521.c
|
||||
#${XRT}ec/ec2_mult.c ${XRT}ec/ec_key.c ${XRT}ec/ecdsa_ossl.c ${XRT}ec/ecp_nistputil.c
|
||||
#${XRT}ec/ec2_oct.c ${XRT}ec/ec_kmeth.c ${XRT}ec/ecdsa_sign.c ${XRT}ec/ecp_nistz256.c
|
||||
#${XRT}ec/ec2_smpl.c ${XRT}ec/ec_lib.c ${XRT}ec/ecdsa_vrf.c ${XRT}ec/ecp_nistz256_table.c
|
||||
#${XRT}ec/ec_ameth.c ${XRT}ec/ec_mult.c ${XRT}ec/eck_prn.c ${XRT}ec/ecp_oct.c
|
||||
#${XRT}ec/ec_asn1.c ${XRT}ec/ec_oct.c ${XRT}ec/ecp_mont.c ${XRT}ec/ecp_smpl.c
|
||||
#${XRT}ec/ec_check.c ${XRT}ec/ec_pmeth.c ${XRT}ec/ecp_nist.c ${XRT}ec/ecx_meth.c
|
||||
#${XRT}ec/ec_curve.c ${XRT}ec/ec_print.c ${XRT}ec/ecp_nistp224.c
|
||||
#${XRT}ec/ec_cvt.c ${XRT}ec/ecdh_kdf.c ${XRT}ec/ecp_nistp256.c
|
||||
#)
|
||||
|
||||
# engine
|
||||
list( APPEND XSRC
|
||||
${XRT}engine/eng_all.c ${XRT}engine/eng_fat.c ${XRT}engine/eng_rdrand.c ${XRT}engine/tb_dsa.c
|
||||
${XRT}engine/eng_cnf.c ${XRT}engine/eng_init.c ${XRT}engine/eng_table.c ${XRT}engine/tb_eckey.c
|
||||
${XRT}engine/eng_ctrl.c ${XRT}engine/eng_lib.c ${XRT}engine/tb_asnmth.c ${XRT}engine/tb_pkmeth.c
|
||||
|
||||
#${XRT}engine/eng_devcrypto.c ${XRT}engine/eng_list.c
|
||||
${XRT}engine/tb_cipher.c ${XRT}engine/tb_rand.c
|
||||
${XRT}engine/eng_dyn.c ${XRT}engine/eng_openssl.c ${XRT}engine/tb_dh.c ${XRT}engine/tb_rsa.c
|
||||
${XRT}engine/eng_err.c ${XRT}engine/eng_pkey.c ${XRT}engine/tb_digest.c
|
||||
)
|
||||
|
||||
# err
|
||||
list( APPEND XSRC
|
||||
${XRT}err/err.c ${XRT}err/err_all.c ${XRT}err/err_prn.c
|
||||
)
|
||||
|
||||
# evp
|
||||
list( APPEND XSRC
|
||||
${XRT}evp/bio_b64.c ${XRT}evp/e_rc2.c ${XRT}evp/m_ripemd.c
|
||||
${XRT}evp/bio_enc.c ${XRT}evp/e_rc4.c ${XRT}evp/m_sha1.c
|
||||
${XRT}evp/bio_md.c ${XRT}evp/e_rc4_hmac_md5.c ${XRT}evp/m_sha3.c
|
||||
${XRT}evp/bio_ok.c ${XRT}evp/e_rc5.c ${XRT}evp/m_sigver.c
|
||||
${XRT}evp/c_allc.c ${XRT}evp/e_seed.c ${XRT}evp/m_wp.c
|
||||
${XRT}evp/c_alld.c ${XRT}evp/e_sm4.c ${XRT}evp/names.c
|
||||
${XRT}evp/cmeth_lib.c ${XRT}evp/e_xcbc_d.c ${XRT}evp/p5_crpt.c
|
||||
${XRT}evp/digest.c ${XRT}evp/encode.c ${XRT}evp/p5_crpt2.c
|
||||
${XRT}evp/e_aes.c ${XRT}evp/evp_cnf.c ${XRT}evp/p_dec.c
|
||||
${XRT}evp/e_aes_cbc_hmac_sha1.c ${XRT}evp/evp_enc.c ${XRT}evp/p_enc.c
|
||||
${XRT}evp/e_aes_cbc_hmac_sha256.c ${XRT}evp/evp_err.c ${XRT}evp/p_lib.c
|
||||
${XRT}evp/e_aria.c ${XRT}evp/evp_key.c ${XRT}evp/p_open.c
|
||||
${XRT}evp/e_bf.c ${XRT}evp/evp_lib.c ${XRT}evp/p_seal.c
|
||||
${XRT}evp/e_camellia.c ${XRT}evp/evp_pbe.c ${XRT}evp/p_sign.c
|
||||
${XRT}evp/e_cast.c ${XRT}evp/evp_pkey.c ${XRT}evp/p_verify.c
|
||||
${XRT}evp/e_chacha20_poly1305.c ${XRT}evp/m_md2.c ${XRT}evp/pbe_scrypt.c
|
||||
${XRT}evp/e_des.c ${XRT}evp/m_md4.c ${XRT}evp/pmeth_fn.c
|
||||
${XRT}evp/e_des3.c ${XRT}evp/m_md5.c ${XRT}evp/pmeth_gn.c
|
||||
${XRT}evp/e_idea.c ${XRT}evp/m_md5_sha1.c ${XRT}evp/pmeth_lib.c
|
||||
${XRT}evp/e_null.c ${XRT}evp/m_mdc2.c
|
||||
${XRT}evp/e_old.c ${XRT}evp/m_null.c
|
||||
)
|
||||
|
||||
# hmac
|
||||
list( APPEND XSRC
|
||||
${XRT}hmac/hm_ameth.c ${XRT}hmac/hm_pmeth.c ${XRT}hmac/hmac.c
|
||||
)
|
||||
|
||||
# idea
|
||||
list( APPEND XSRC
|
||||
${XRT}idea/i_cbc.c ${XRT}idea/i_ecb.c ${XRT}idea/i_skey.c
|
||||
${XRT}idea/i_cfb64.c ${XRT}idea/i_ofb64.c
|
||||
)
|
||||
|
||||
# lhash
|
||||
list( APPEND XSRC
|
||||
${XRT}lhash/lh_stats.c ${XRT}lhash/lhash.c
|
||||
)
|
||||
|
||||
# md4
|
||||
list( APPEND XSRC
|
||||
${XRT}md4/md4_dgst.c ${XRT}md4/md4_one.c
|
||||
)
|
||||
|
||||
# md5
|
||||
list( APPEND XSRC
|
||||
${XRT}md5/md5_dgst.c ${XRT}md5/md5_one.c
|
||||
)
|
||||
|
||||
# mdc2
|
||||
list( APPEND XSRC
|
||||
${XRT}mdc2/mdc2_one.c ${XRT}mdc2/mdc2dgst.c
|
||||
)
|
||||
|
||||
# modes
|
||||
list( APPEND XSRC
|
||||
${XRT}modes/cbc128.c ${XRT}modes/ctr128.c ${XRT}modes/ocb128.c ${XRT}modes/xts128.c
|
||||
${XRT}modes/ccm128.c ${XRT}modes/cts128.c ${XRT}modes/ofb128.c
|
||||
${XRT}modes/cfb128.c ${XRT}modes/gcm128.c ${XRT}modes/wrap128.c
|
||||
)
|
||||
|
||||
# objects
|
||||
list( APPEND XSRC
|
||||
${XRT}objects/o_names.c ${XRT}objects/obj_err.c ${XRT}objects/obj_xref.c
|
||||
${XRT}objects/obj_dat.c ${XRT}objects/obj_lib.c
|
||||
)
|
||||
|
||||
# ocsp
|
||||
list( APPEND XSRC
|
||||
${XRT}ocsp/ocsp_asn.c ${XRT}ocsp/ocsp_ext.c ${XRT}ocsp/ocsp_prn.c ${XRT}ocsp/v3_ocsp.c
|
||||
${XRT}ocsp/ocsp_cl.c ${XRT}ocsp/ocsp_ht.c ${XRT}ocsp/ocsp_srv.c
|
||||
${XRT}ocsp/ocsp_err.c ${XRT}ocsp/ocsp_lib.c ${XRT}ocsp/ocsp_vfy.c
|
||||
)
|
||||
|
||||
# pem
|
||||
list( APPEND XSRC
|
||||
${XRT}pem/pem_all.c ${XRT}pem/pem_lib.c ${XRT}pem/pem_pkey.c ${XRT}pem/pem_xaux.c
|
||||
${XRT}pem/pem_err.c ${XRT}pem/pem_oth.c ${XRT}pem/pem_sign.c ${XRT}pem/pvkfmt.c
|
||||
${XRT}pem/pem_info.c ${XRT}pem/pem_pk8.c ${XRT}pem/pem_x509.c
|
||||
)
|
||||
|
||||
# pkcs12
|
||||
list( APPEND XSRC
|
||||
${XRT}pkcs12/p12_add.c ${XRT}pkcs12/p12_crt.c ${XRT}pkcs12/p12_kiss.c ${XRT}pkcs12/p12_p8e.c
|
||||
${XRT}pkcs12/p12_asn.c ${XRT}pkcs12/p12_decr.c ${XRT}pkcs12/p12_mutl.c ${XRT}pkcs12/p12_sbag.c
|
||||
${XRT}pkcs12/p12_attr.c ${XRT}pkcs12/p12_init.c ${XRT}pkcs12/p12_npas.c ${XRT}pkcs12/p12_utl.c
|
||||
${XRT}pkcs12/p12_crpt.c ${XRT}pkcs12/p12_key.c ${XRT}pkcs12/p12_p8d.c ${XRT}pkcs12/pk12err.c
|
||||
)
|
||||
|
||||
# pkcs7
|
||||
list( APPEND XSRC
|
||||
${XRT}pkcs7/bio_pk7.c ${XRT}pkcs7/pk7_attr.c ${XRT}pkcs7/pk7_lib.c ${XRT}pkcs7/pk7_smime.c
|
||||
${XRT}pkcs7/pk7_asn1.c ${XRT}pkcs7/pk7_doit.c ${XRT}pkcs7/pk7_mime.c ${XRT}pkcs7/pkcs7err.c
|
||||
)
|
||||
|
||||
# rand
|
||||
list( APPEND XSRC
|
||||
${XRT}rand/drbg_lib.c ${XRT}rand/rand_err.c ${XRT}rand/rand_vms.c
|
||||
${XRT}rand/drbg_rand.c ${XRT}rand/rand_lib.c ${XRT}rand/rand_win.c
|
||||
${XRT}rand/rand_egd.c ${XRT}rand/rand_unix.c ${XRT}rand/randfile.c
|
||||
)
|
||||
|
||||
# rc2
|
||||
list( APPEND XSRC
|
||||
${XRT}rc2/rc2_cbc.c ${XRT}rc2/rc2_skey.c ${XRT}rc2/rc2ofb64.c
|
||||
${XRT}rc2/rc2_ecb.c ${XRT}rc2/rc2cfb64.c
|
||||
)
|
||||
|
||||
# rc4
|
||||
list( APPEND XSRC
|
||||
${XRT}rc4/rc4_enc.c ${XRT}rc4/rc4_skey.c
|
||||
)
|
||||
|
||||
# rc5
|
||||
list( APPEND XSRC
|
||||
${XRT}rc5/rc5_ecb.c ${XRT}rc5/rc5_skey.c ${XRT}rc5/rc5ofb64.c
|
||||
${XRT}rc5/rc5_enc.c ${XRT}rc5/rc5cfb64.c
|
||||
)
|
||||
|
||||
# ripemd
|
||||
list( APPEND XSRC
|
||||
${XRT}ripemd/rmd_dgst.c ${XRT}ripemd/rmd_one.c
|
||||
)
|
||||
|
||||
# rsa
|
||||
list( APPEND XSRC
|
||||
${XRT}rsa/rsa_ameth.c ${XRT}rsa/rsa_gen.c ${XRT}rsa/rsa_pk1.c ${XRT}rsa/rsa_ssl.c
|
||||
${XRT}rsa/rsa_asn1.c ${XRT}rsa/rsa_lib.c ${XRT}rsa/rsa_pmeth.c ${XRT}rsa/rsa_x931.c
|
||||
${XRT}rsa/rsa_chk.c ${XRT}rsa/rsa_meth.c ${XRT}rsa/rsa_prn.c ${XRT}rsa/rsa_x931g.c
|
||||
${XRT}rsa/rsa_crpt.c ${XRT}rsa/rsa_none.c ${XRT}rsa/rsa_pss.c
|
||||
${XRT}rsa/rsa_depr.c ${XRT}rsa/rsa_oaep.c ${XRT}rsa/rsa_saos.c
|
||||
${XRT}rsa/rsa_err.c ${XRT}rsa/rsa_ossl.c ${XRT}rsa/rsa_sign.c
|
||||
)
|
||||
|
||||
# seed
|
||||
list( APPEND XSRC
|
||||
${XRT}seed/seed.c ${XRT}seed/seed_cfb.c ${XRT}seed/seed_ofb.c
|
||||
${XRT}seed/seed_cbc.c ${XRT}seed/seed_ecb.c
|
||||
)
|
||||
|
||||
# sha
|
||||
list( APPEND XSRC
|
||||
${XRT}sha/keccak1600.c ${XRT}sha/sha1dgst.c ${XRT}sha/sha512.c
|
||||
${XRT}sha/sha1_one.c ${XRT}sha/sha256.c
|
||||
)
|
||||
|
||||
# srp
|
||||
list( APPEND XSRC
|
||||
${XRT}srp/srp_lib.c ${XRT}srp/srp_vfy.c
|
||||
)
|
||||
|
||||
# stack
|
||||
list( APPEND XSRC
|
||||
${XRT}stack/stack.c
|
||||
)
|
||||
|
||||
# ts
|
||||
list( APPEND XSRC
|
||||
${XRT}ts/ts_asn1.c ${XRT}ts/ts_lib.c ${XRT}ts/ts_rsp_print.c ${XRT}ts/ts_rsp_verify.c
|
||||
${XRT}ts/ts_conf.c ${XRT}ts/ts_req_print.c ${XRT}ts/ts_rsp_sign.c ${XRT}ts/ts_verify_ctx.c
|
||||
${XRT}ts/ts_err.c ${XRT}ts/ts_req_utils.c ${XRT}ts/ts_rsp_utils.c
|
||||
)
|
||||
|
||||
# txt_db
|
||||
list( APPEND XSRC
|
||||
${XRT}txt_db/txt_db.c
|
||||
)
|
||||
|
||||
# ui
|
||||
list( APPEND XSRC
|
||||
${XRT}ui/ui_err.c ${XRT}ui/ui_null.c ${XRT}ui/ui_util.c
|
||||
${XRT}ui/ui_lib.c ${XRT}ui/ui_openssl.c
|
||||
)
|
||||
|
||||
list( APPEND XSRC
|
||||
${XRT}uid.c
|
||||
)
|
||||
|
||||
# whrlpool
|
||||
list( APPEND XSRC
|
||||
${XRT}whrlpool/wp_block.c ${XRT}whrlpool/wp_dgst.c
|
||||
)
|
||||
|
||||
# x509
|
||||
list( APPEND XSRC
|
||||
${XRT}x509/by_dir.c ${XRT}x509/x509_err.c ${XRT}x509/x509_v3.c ${XRT}x509/x_attrib.c
|
||||
${XRT}x509/by_file.c ${XRT}x509/x509_ext.c ${XRT}x509/x509_vfy.c ${XRT}x509/x_crl.c
|
||||
${XRT}x509/t_crl.c ${XRT}x509/x509_lu.c ${XRT}x509/x509_vpm.c ${XRT}x509/x_exten.c
|
||||
${XRT}x509/t_req.c ${XRT}x509/x509_obj.c ${XRT}x509/x509cset.c ${XRT}x509/x_name.c
|
||||
${XRT}x509/t_x509.c ${XRT}x509/x509_r2x.c ${XRT}x509/x509name.c ${XRT}x509/x_pubkey.c
|
||||
${XRT}x509/x509_att.c ${XRT}x509/x509_req.c ${XRT}x509/x509rset.c ${XRT}x509/x_req.c
|
||||
${XRT}x509/x509_cmp.c ${XRT}x509/x509_set.c ${XRT}x509/x509spki.c ${XRT}x509/x_x509.c
|
||||
${XRT}x509/x509_d2.c ${XRT}x509/x509_trs.c ${XRT}x509/x509type.c ${XRT}x509/x_x509a.c
|
||||
${XRT}x509/x509_def.c ${XRT}x509/x509_txt.c ${XRT}x509/x_all.c
|
||||
)
|
||||
|
||||
# x509v3
|
||||
list( APPEND XSRC
|
||||
${XRT}x509v3/pcy_cache.c ${XRT}x509v3/v3_alt.c ${XRT}x509v3/v3_ia5.c ${XRT}x509v3/v3_prn.c
|
||||
${XRT}x509v3/pcy_data.c ${XRT}x509v3/v3_asid.c ${XRT}x509v3/v3_info.c ${XRT}x509v3/v3_purp.c
|
||||
${XRT}x509v3/pcy_lib.c ${XRT}x509v3/v3_bcons.c ${XRT}x509v3/v3_int.c ${XRT}x509v3/v3_skey.c
|
||||
${XRT}x509v3/pcy_map.c ${XRT}x509v3/v3_bitst.c ${XRT}x509v3/v3_lib.c ${XRT}x509v3/v3_sxnet.c
|
||||
${XRT}x509v3/pcy_node.c ${XRT}x509v3/v3_conf.c ${XRT}x509v3/v3_ncons.c ${XRT}x509v3/v3_tlsf.c
|
||||
${XRT}x509v3/pcy_tree.c ${XRT}x509v3/v3_cpols.c ${XRT}x509v3/v3_pci.c ${XRT}x509v3/v3_utl.c
|
||||
${XRT}x509v3/v3_addr.c ${XRT}x509v3/v3_crld.c ${XRT}x509v3/v3_pcia.c ${XRT}x509v3/v3err.c
|
||||
${XRT}x509v3/v3_admis.c ${XRT}x509v3/v3_enum.c ${XRT}x509v3/v3_pcons.c
|
||||
${XRT}x509v3/v3_akey.c ${XRT}x509v3/v3_extku.c ${XRT}x509v3/v3_pku.c
|
||||
${XRT}x509v3/v3_akeya.c ${XRT}x509v3/v3_genn.c ${XRT}x509v3/v3_pmaps.c
|
||||
)
|
||||
|
||||
list( APPEND XSRC
|
||||
${XRT}LPdir_nyi.c ${XRT}cryptlib.c ${XRT}mem_clr.c ${XRT}o_time.c
|
||||
${XRT}LPdir_unix.c ${XRT}ctype.c ${XRT}mem_dbg.c ${XRT}ppccap.c
|
||||
${XRT}LPdir_vms.c ${XRT}cversion.c ${XRT}mem_sec.c ${XRT}s390xcap.c
|
||||
${XRT}LPdir_win.c ${XRT}dllmain.c ${XRT}o_dir.c ${XRT}sparcv9cap.c
|
||||
${XRT}LPdir_win32.c ${XRT}ebcdic.c ${XRT}o_fips.c ${XRT}threads_none.c
|
||||
${XRT}LPdir_wince.c ${XRT}ex_data.c ${XRT}o_fopen.c ${XRT}threads_pthread.c
|
||||
${XRT}armcap.c ${XRT}init.c ${XRT}o_init.c ${XRT}threads_win.c
|
||||
${XRT}cpt_err.c ${XRT}mem.c ${XRT}o_str.c ${XRT}uid.c
|
||||
)
|
||||
|
||||
###########################################################################################
|
||||
# INC
|
||||
###########################################################################################
|
||||
set( PUBL "${OpenSSL_SOURCE_PATH}/include/openssl/")
|
||||
set( AES "${OpenSSL_SOURCE_PATH}/crypto/aes/")
|
||||
set( BIO "${OpenSSL_SOURCE_PATH}/crypto/bio/")
|
||||
list( APPEND XINC
|
||||
${AES}aes.h #${PUBL}ct.h
|
||||
${PUBL}md5.h ${PUBL}seed.h
|
||||
${PUBL}asn1.h ${PUBL}cterr.h ${PUBL}mdc2.h ${PUBL}sha.h
|
||||
${PUBL}asn1_mac.h ${PUBL}des.h ${PUBL}modes.h ${PUBL}srp.h
|
||||
${PUBL}asn1err.h ${PUBL}dh.h ${PUBL}obj_mac.h ${PUBL}srtp.h
|
||||
${PUBL}asn1t.h ${PUBL}dherr.h ${PUBL}objects.h ${PUBL}ssl.h
|
||||
${PUBL}async.h ${PUBL}dsa.h ${PUBL}objectserr.h ${PUBL}ssl2.h
|
||||
${PUBL}asyncerr.h ${PUBL}dsaerr.h ${PUBL}ocsp.h ${PUBL}ssl3.h
|
||||
${BIO}bio.h ${PUBL}dtls1.h ${PUBL}ocsperr.h ${PUBL}sslerr.h
|
||||
${PUBL}bioerr.h ${PUBL}e_os2.h ${PUBL}opensslv.h ${PUBL}stack.h
|
||||
${PUBL}blowfish.h ${PUBL}ebcdic.h ${PUBL}ossl_typ.h ${PUBL}store.h
|
||||
${PUBL}bn.h ${PUBL}ec.h ${PUBL}pem.h ${PUBL}storeerr.h
|
||||
${PUBL}bnerr.h ${PUBL}ecdh.h ${PUBL}pem2.h ${PUBL}symhacks.h
|
||||
${PUBL}buffer.h ${PUBL}ecdsa.h ${PUBL}pemerr.h ${PUBL}tls1.h
|
||||
${PUBL}buffererr.h ${PUBL}ecerr.h ${PUBL}pkcs12.h ${PUBL}ts.h
|
||||
${PUBL}camellia.h ${PUBL}engine.h ${PUBL}pkcs12err.h ${PUBL}tserr.h
|
||||
${PUBL}cast.h ${PUBL}engineerr.h ${PUBL}pkcs7.h ${PUBL}txt_db.h
|
||||
${PUBL}cmac.h ${PUBL}err.h ${PUBL}pkcs7err.h ${PUBL}ui.h
|
||||
${PUBL}cms.h ${PUBL}evp.h ${PUBL}rand.h ${PUBL}uierr.h
|
||||
${PUBL}cmserr.h ${PUBL}evperr.h ${PUBL}randerr.h ${PUBL}whrlpool.h
|
||||
${PUBL}comp.h ${PUBL}hmac.h ${PUBL}rc2.h ${PUBL}x509.h
|
||||
${PUBL}comperr.h ${PUBL}idea.h ${PUBL}rc4.h ${PUBL}x509_vfy.h
|
||||
${PUBL}conf.h ${PUBL}kdf.h ${PUBL}rc5.h ${PUBL}x509err.h
|
||||
${PUBL}conf_api.h ${PUBL}kdferr.h ${PUBL}ripemd.h ${PUBL}x509v3.h
|
||||
${PUBL}conferr.h ${PUBL}lhash.h ${PUBL}rsa.h ${PUBL}x509v3err.h
|
||||
${PUBL}crypto.h ${PUBL}md2.h ${PUBL}rsaerr.h
|
||||
${PUBL}cryptoerr.h ${PUBL}md4.h ${PUBL}safestack.h
|
||||
)
|
||||
|
||||
set( PRIV "${OpenSSL_SOURCE_PATH}/include/internal/")
|
||||
list( APPEND XPNC
|
||||
${PRIV}/bio.h ${PRIV}/dso.h ${PRIV}/o_str.h
|
||||
${PRIV}/comp.h ${PRIV}/dsoerr.h ${PRIV}/rand.h
|
||||
${PRIV}/conf.h ${PRIV}/err.h ${PRIV}/refcount.h
|
||||
${PRIV}/constant_time_locl.h ${PRIV}/nelem.h ${PRIV}/sockets.h
|
||||
${PRIV}/cryptlib.h ${PRIV}/numbers.h ${PRIV}/thread_once.h
|
||||
${PRIV}/dane.h ${PRIV}/o_dir.h
|
||||
)
|
||||
|
||||
set (CPRV "${OpenSSL_SOURCE_PATH}/crypto/include/internal/")
|
||||
list( APPEND XPNC
|
||||
${CPRV}aria.h ${CPRV}ctype.h ${CPRV}siphash.h
|
||||
${CPRV}asn1_int.h ${CPRV}engine.h ${CPRV}sm3.h
|
||||
${CPRV}async.h ${CPRV}err_int.h ${CPRV}sm4.h
|
||||
${CPRV}bn_dh.h ${CPRV}evp_int.h ${CPRV}store.h
|
||||
${CPRV}bn_int.h ${CPRV}md32_common.h ${CPRV}store_int.h
|
||||
${CPRV}bn_srp.h ${CPRV}objects.h ${CPRV}x509_int.h
|
||||
${CPRV}chacha.h ${CPRV}poly1305.h
|
||||
${CPRV}cryptlib_int.h ${CPRV}rand_int.h
|
||||
)
|
|
@ -1,7 +1,7 @@
|
|||
# xplat\lib
|
||||
# Copyright (C) 2017 Microsoft
|
||||
# Created by Phil Smith (psmith@microsoft.com) on 10/19/2017
|
||||
cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
|
||||
cmake_minimum_required(VERSION 3.4.0 FATAL_ERROR)
|
||||
|
||||
ADD_CUSTOM_TARGET(LIBS)
|
||||
|
||||
|
@ -16,3 +16,35 @@ add_subdirectory(zlib)
|
|||
# Xerces
|
||||
set(DBUILD_SHARED_LIBS OFF CACHE BOOL "Only build static lib" FORCE)
|
||||
add_subdirectory(xerces)
|
||||
|
||||
# OpenSSL
|
||||
IF(NOT WIN32)
|
||||
MESSAGE(STATUS "-----------------------------")
|
||||
MESSAGE(STATUS "OpenSLL configuration summary")
|
||||
MESSAGE(STATUS "-----------------------------")
|
||||
|
||||
set(OpenSSL_SOURCE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/openssl" )
|
||||
set(OpenSLL_BINARY_PATH "${CMAKE_CURRENT_BINARY_DIR}" )
|
||||
set(OpenSLL_INCLUDE_PATH "${CMAKE_CURRENT_BINARY_DIR}" )
|
||||
|
||||
include(GetOpenSSLRevisionDescription)
|
||||
get_openssl_describe(OpenSSL_DESCRIPTION)
|
||||
MESSAGE(STATUS "OpenSSL Description '${OpenSSL_DESCRIPTION}'" )
|
||||
|
||||
string(REGEX MATCH "OpenSSL_([0-9]*)_([0-9]*)_([0-9]*)" _dummy1 "${OpenSSL_DESCRIPTION}")
|
||||
SET(OpenSSL_MAJOR ${CMAKE_MATCH_1})
|
||||
SET(OpenSSL_MINOR ${CMAKE_MATCH_2})
|
||||
SET(OpenSSL_PATCH ${CMAKE_MATCH_3})
|
||||
SET(OpenSLL_VERSION "${OpenSSL_MAJOR}.${OpenSSL_MINOR}.${OpenSSL_PATCH}")
|
||||
|
||||
set(OpenSSL_COMPILER_DEFINES OPENSSL_NO_ASM)
|
||||
# we include which means you need to use "OpenSSL_X_PATH" for your paths.
|
||||
include( crypto )
|
||||
set(OpenSSL_FOUND ON CACHE BOOL "OpenSSL ready for use" FORCE)
|
||||
|
||||
MESSAGE(STATUS "OpenSLL_VERSION '${OpenSLL_VERSION}'" )
|
||||
MESSAGE(STATUS "OpenSSL_SOURCE_PATH '${OpenSSL_SOURCE_PATH}'" )
|
||||
MESSAGE(STATUS "OpenSLL_BINARY_PATH '${OpenSLL_BINARY_PATH}'" )
|
||||
MESSAGE(STATUS "OpenSLL_INCLUDE_PATH '${OpenSLL_INCLUDE_PATH}'" )
|
||||
ENDIF()
|
||||
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 6b1c8204b33aaedb7df7a009c241412839aaf950
|
||||
Subproject commit 8b1549a153a62e9878327d05aa3b6622b416ec10
|
|
@ -14,27 +14,16 @@ IF(WIN32)
|
|||
set (XPLATAPPX_API=1)
|
||||
set (DirectoryObject PAL/FileSystem/Win32/DirectoryObject.cpp)
|
||||
ELSE()
|
||||
# TODO: Apple deprecated OpenSSL because there isn't a stable ABI.
|
||||
# we should just build OpenSSL and statically include the library
|
||||
# pretty much like how everyone else uses OpenSSL.
|
||||
|
||||
# TODO: remove this temporary hack to unblock Thomas after getting
|
||||
# OpenSSL building and statically linking via the submodule dependency
|
||||
# https://cmake.org/cmake/help/v3.0/module/FindOpenSSL.html
|
||||
set(OPENSSL_ROOT_DIR "/usr/local/opt/openssl") # path is populated by brew
|
||||
find_package(OpenSSL REQUIRED)
|
||||
|
||||
IF(OPENSSL_FOUND)
|
||||
MESSAGE (STATUS "Using OpenSSL ${OPENSSL_VERSION}")
|
||||
IF(OpenSSL_FOUND)
|
||||
MESSAGE (STATUS "Using OpenSSL ${OpenSLL_VERSION}")
|
||||
include_directories(
|
||||
${include_directories}
|
||||
${OPENSSL_INCLUDE_DIRS}
|
||||
${OpenSLL_INCLUDE_PATH}
|
||||
)
|
||||
|
||||
ELSE()
|
||||
# ... and were done here... :/
|
||||
MESSAGE (STATUS "OpenSSL NOT FOUND!")
|
||||
MESSAGE (STATUS "on MacOS run: 'brew install openssl'")
|
||||
RETURN()
|
||||
ENDIF()
|
||||
|
||||
|
@ -112,7 +101,7 @@ include_directories(
|
|||
target_link_libraries(${PROJECT_NAME} zlibstatic)
|
||||
target_link_libraries(${PROJECT_NAME} xerces-c)
|
||||
|
||||
IF(OPENSSL_FOUND)
|
||||
IF(OpenSSL_FOUND)
|
||||
# include the libraries needed to use OpenSSL
|
||||
target_link_libraries(${PROJECT_NAME} ${OPENSSL_LIBRARIES})
|
||||
target_link_libraries(${PROJECT_NAME} crypto)
|
||||
ENDIF()
|
||||
|
|
Загрузка…
Ссылка в новой задаче