Merge pull request #2411 from terrelln/cmake-fixes

[cmake] Fix source directory with spaces
diff --git a/.github/workflows/generic-dev.yml b/.github/workflows/generic-dev.yml
index 9fb4a0c..bb88de5 100644
--- a/.github/workflows/generic-dev.yml
+++ b/.github/workflows/generic-dev.yml
@@ -89,7 +89,11 @@
     steps:
     - uses: actions/checkout@v2
     - name: cmake build and test check
-      run: make cmakebuild
+      run: |
+        FUZZERTEST=-T1mn ZSTREAM_TESTTIME=-T1mn make cmakebuild
+        cp -r ./ "../zstd source"
+        cd "../zstd source"
+        FUZZERTEST=-T1mn ZSTREAM_TESTTIME=-T1mn make cmakebuild
 
   gcc-8-asan-ubsan-fuzz:
     runs-on: ubuntu-latest
diff --git a/appveyor.yml b/appveyor.yml
index 6b5b976..169c66b 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -162,6 +162,8 @@
   - if [%TEST%]==[cmake] (
       mkdir build\cmake\build &&
       cd build\cmake\build &&
+      SET FUZZERTEST=-T2mn &&
+      SET ZSTREAM_TESTTIME=-T2mn &&
       cmake -G "Visual Studio 14 2015 Win64" .. &&
       cd ..\..\.. &&
       make clean
diff --git a/build/cmake/lib/CMakeLists.txt b/build/cmake/lib/CMakeLists.txt
index 9a221d3..088c876 100644
--- a/build/cmake/lib/CMakeLists.txt
+++ b/build/cmake/lib/CMakeLists.txt
@@ -157,14 +157,14 @@
 
     add_custom_target(libzstd.pc ALL
             ${CMAKE_COMMAND}
-            -DIN="${LIBRARY_DIR}/libzstd.pc.in"
+            -DIN=${LIBRARY_DIR}/libzstd.pc.in
             -DOUT="libzstd.pc"
             -DPREFIX="${PREFIX}"
             -DEXEC_PREFIX="${EXEC_PREFIX}"
             -DINCLUDEDIR="${INCLUDEDIR_PREFIX}${INCLUDEDIR_SUFFIX}"
             -DLIBDIR="${LIBDIR_PREFIX}${LIBDIR_SUFFIX}"
             -DVERSION="${VERSION}"
-            -P "${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig.cmake"
+            -P ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig.cmake
             COMMENT "Creating pkg-config file")
 
     install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libzstd.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
diff --git a/build/cmake/tests/CMakeLists.txt b/build/cmake/tests/CMakeLists.txt
index a66040e..34eca91 100644
--- a/build/cmake/tests/CMakeLists.txt
+++ b/build/cmake/tests/CMakeLists.txt
@@ -84,9 +84,9 @@
 #
 # playTests.sh
 #
-AddTestFlagsOption(ZSTD_PLAYTESTS_FLAGS "--test-large-data"
+AddTestFlagsOption(ZSTD_PLAYTESTS_FLAGS "$ENV{PLAYTESTS_FLAGS}"
     "Semicolon-separated list of flags to pass to the playTests.sh test")
-add_test(NAME playTests COMMAND sh -c "${TESTS_DIR}/playTests.sh" ${ZSTD_PLAYTESTS_FLAGS})
+add_test(NAME playTests COMMAND sh -c "\"${TESTS_DIR}/playTests.sh\" ${ZSTD_PLAYTESTS_FLAGS}")
 if (ZSTD_BUILD_PROGRAMS)
     set_property(TEST playTests APPEND PROPERTY ENVIRONMENT
         "ZSTD_BIN=$<TARGET_FILE:zstd>"
diff --git a/tests/playTests.sh b/tests/playTests.sh
index 3f53b6a..51b42b6 100755
--- a/tests/playTests.sh
+++ b/tests/playTests.sh
@@ -273,10 +273,10 @@
 rm -f tmp_grep
 echo "1234" > tmp_grep
 zstd -f tmp_grep
-lines=$(ZCAT=./zstdcat $ZSTDGREP 2>&1 "1234" tmp_grep tmp_grep.zst | wc -l)
+lines=$(ZCAT=./zstdcat "$ZSTDGREP" 2>&1 "1234" tmp_grep tmp_grep.zst | wc -l)
 test 2 -eq $lines
-ZCAT=./zstdcat $ZSTDGREP 2>&1 "1234" tmp_grep_bad.zst && die "Should have failed"
-ZCAT=./zstdcat $ZSTDGREP 2>&1 "1234" tmp_grep_bad.zst | grep "No such file or directory" || true
+ZCAT=./zstdcat "$ZSTDGREP" 2>&1 "1234" tmp_grep_bad.zst && die "Should have failed"
+ZCAT=./zstdcat "$ZSTDGREP" 2>&1 "1234" tmp_grep_bad.zst | grep "No such file or directory" || true
 rm -f tmp_grep*
 
 println "\n===>  --exclude-compressed flag"