From e7b64b7dc99e3df625f3df40e5aa5b0916ff0598 Mon Sep 17 00:00:00 2001 From: khizmax Date: Thu, 2 Jun 2016 23:06:31 +0300 Subject: [PATCH] Added generation of string dictionary.txt for stress test to CMake --- projects/Win/vc14/stress-framework.vcxproj | 12 ++++++------ test/stress/CMakeLists.txt | 7 +++++++ test/stress/data/split.pl | 9 ++++++--- 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/projects/Win/vc14/stress-framework.vcxproj b/projects/Win/vc14/stress-framework.vcxproj index 0d255bc7..000823a9 100644 --- a/projects/Win/vc14/stress-framework.vcxproj +++ b/projects/Win/vc14/stress-framework.vcxproj @@ -54,12 +54,12 @@ - cd %(RootDir)%(Directory) && perl -X split.pl && copy %(RootDir)%(Directory)\dictionary.txt $(TargetDir)\dictionary.txt - cd %(RootDir)%(Directory) && perl -X split.pl && copy %(RootDir)%(Directory)\dictionary.txt $(TargetDir)\dictionary.txt - cd %(RootDir)%(Directory) && perl -X split.pl && copy %(RootDir)%(Directory)\dictionary.txt $(TargetDir)\dictionary.txt - cd %(RootDir)%(Directory) && perl -X split.pl && copy %(RootDir)%(Directory)\dictionary.txt $(TargetDir)\dictionary.txt - cd %(RootDir)%(Directory) && perl -X split.pl && copy %(RootDir)%(Directory)\dictionary.txt $(TargetDir)\dictionary.txt - cd %(RootDir)%(Directory) && perl -X split.pl && copy %(RootDir)%(Directory)\dictionary.txt $(TargetDir)\dictionary.txt + cd %(RootDir)%(Directory) && perl -X split.pl text.txt $(TargetDir)\dictionary.txt + cd %(RootDir)%(Directory) && perl -X split.pl text.txt $(TargetDir)\dictionary.txt + cd %(RootDir)%(Directory) && perl -X split.pl text.txt $(TargetDir)\dictionary.txt + cd %(RootDir)%(Directory) && perl -X split.pl text.txt $(TargetDir)\dictionary.txt + cd %(RootDir)%(Directory) && perl -X split.pl text.txt $(TargetDir)\dictionary.txt + cd %(RootDir)%(Directory) && perl -X split.pl text.txt $(TargetDir)\dictionary.txt Build text dictionary Build text dictionary Build text dictionary diff --git a/test/stress/CMakeLists.txt b/test/stress/CMakeLists.txt index 6b576d46..8801787c 100644 --- a/test/stress/CMakeLists.txt +++ b/test/stress/CMakeLists.txt @@ -8,6 +8,13 @@ set(CDSSTRESS_FRAMEWORK_SOURCES framework/stress_test.cpp ) +add_custom_command( + OUTPUT ${EXECUTABLE_OUTPUT_PATH}/dictionary.txt + MAIN_DEPENDENCY ${PROJECT_SOURCE_DIR}/test/stress/data/text.txt + COMMAND perl -X ${PROJECT_SOURCE_DIR}/test/stress/data/split.pl ${PROJECT_SOURCE_DIR}/test/stress/data/text.txt ${EXECUTABLE_OUTPUT_PATH}/dictionary.txt +) +set_property(SOURCE framework/stress_test.cpp APPEND PROPERTY OBJECT_DEPENDS ${EXECUTABLE_OUTPUT_PATH}/dictionary.txt) + add_library(${CDSSTRESS_FRAMEWORK_LIBRARY} OBJECT ${CDSSTRESS_FRAMEWORK_SOURCES}) include_directories( diff --git a/test/stress/data/split.pl b/test/stress/data/split.pl index 3d0f4c75..29887d92 100644 --- a/test/stress/data/split.pl +++ b/test/stress/data/split.pl @@ -2,7 +2,10 @@ my %words ; -open( my $f, "text.txt" ) ; +my $input_file = shift; +my $output_file = shift; + +open( my $f, $input_file ) or die "Cannot open input file $input_file"; binmode $f ; my $text = '' ; @@ -26,14 +29,14 @@ for (my $j = 1; $j < 30; ++$j ) { } } -open (my $dst, ">dictionary.txt") ; +open (my $dst, ">$output_file") or die "Cannot open output file $output_file"; binmode $dst ; my $nCount = 0 ; $nCount++ foreach (keys %words) ; print $dst $nCount, "\n" ; -print "Generate test dictionary...\n" ; +print "Generate test dictionary $output_file ...\n" ; print $dst $_, "\n" foreach (keys %words) ; close $dst ; -- 2.34.1