mirror of
https://github.com/yuzu-emu/mbedtls.git
synced 2024-12-24 01:35:46 +00:00
Allow test suites to be run on Windows
For a start, they don't even compile with Visual Studio due to strcasecmp being missing. Secondly, on Windows Perl scripts aren't executable and have to be run using the Perl interpreter directly; thankfully CMake is able to find cygwin Perl straight away without problems.
This commit is contained in:
parent
8254ed2a9f
commit
733676b978
|
@ -10,6 +10,11 @@ if(ENABLE_ZLIB_SUPPORT)
|
||||||
set(libs ${libs} ${ZLIB_LIBRARIES})
|
set(libs ${libs} ${ZLIB_LIBRARIES})
|
||||||
endif(ENABLE_ZLIB_SUPPORT)
|
endif(ENABLE_ZLIB_SUPPORT)
|
||||||
|
|
||||||
|
find_package(Perl)
|
||||||
|
if(NOT PERL_FOUND)
|
||||||
|
message(FATAL_ERROR "Cannot build test suites without Perl")
|
||||||
|
endif()
|
||||||
|
|
||||||
function(add_test_suite suite_name)
|
function(add_test_suite suite_name)
|
||||||
if(ARGV1)
|
if(ARGV1)
|
||||||
set(data_name ${ARGV1})
|
set(data_name ${ARGV1})
|
||||||
|
@ -19,7 +24,7 @@ function(add_test_suite suite_name)
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT test_suite_${data_name}.c
|
OUTPUT test_suite_${data_name}.c
|
||||||
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/scripts/generate_code.pl ${CMAKE_CURRENT_SOURCE_DIR}/suites test_suite_${suite_name} test_suite_${data_name}
|
COMMAND ${PERL_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/scripts/generate_code.pl ${CMAKE_CURRENT_SOURCE_DIR}/suites test_suite_${suite_name} test_suite_${data_name}
|
||||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/scripts/generate_code.pl mbedtls suites/helpers.function suites/main_test.function suites/test_suite_${suite_name}.function suites/test_suite_${data_name}.data
|
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/scripts/generate_code.pl mbedtls suites/helpers.function suites/main_test.function suites/test_suite_${suite_name}.function suites/test_suite_${data_name}.data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,8 @@
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
#include <basetsd.h>
|
#include <basetsd.h>
|
||||||
typedef UINT32 uint32_t;
|
typedef UINT32 uint32_t;
|
||||||
|
#define strncasecmp _strnicmp
|
||||||
|
#define strcasecmp _stricmp
|
||||||
#else
|
#else
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue