mirror of
https://github.com/facebook/zstd.git
synced 2025-10-04 00:02:33 -04:00
55 lines
2.0 KiB
Batchfile
55 lines
2.0 KiB
Batchfile
@echo off
|
|
setlocal
|
|
|
|
rem Detect build type based on available files
|
|
set BUILD_TYPE=make
|
|
if exist "build\cmake\build\lib\Release\zstd_static.lib" set BUILD_TYPE=cmake
|
|
|
|
echo Detected build type: %BUILD_TYPE%
|
|
|
|
rem Create required directories
|
|
mkdir bin\dll bin\static bin\example bin\include
|
|
|
|
rem Copy common files using a subroutine. Exits immediately on failure.
|
|
call :copyFile "tests\fullbench.c" "bin\example\"
|
|
call :copyFile "programs\datagen.c" "bin\example\"
|
|
call :copyFile "programs\datagen.h" "bin\example\"
|
|
call :copyFile "programs\util.h" "bin\example\"
|
|
call :copyFile "programs\platform.h" "bin\example\"
|
|
call :copyFile "lib\common\mem.h" "bin\example\"
|
|
call :copyFile "lib\common\zstd_internal.h" "bin\example\"
|
|
call :copyFile "lib\common\error_private.h" "bin\example\"
|
|
call :copyFile "lib\common\xxhash.h" "bin\example\"
|
|
call :copyFile "lib\dll\example\Makefile" "bin\example\"
|
|
call :copyFile "lib\dll\example\fullbench-dll.*" "bin\example\"
|
|
call :copyFile "lib\zstd.h" "bin\include\"
|
|
call :copyFile "lib\zstd_errors.h" "bin\include\"
|
|
call :copyFile "lib\zdict.h" "bin\include\"
|
|
|
|
rem Copy build-specific files
|
|
if "%BUILD_TYPE%"=="cmake" (
|
|
echo Copying CMake build artifacts...
|
|
call :copyFile "build\cmake\build\lib\Release\zstd_static.lib" "bin\static\libzstd_static.lib"
|
|
call :copyFile "build\cmake\build\lib\Release\zstd.dll" "bin\dll\libzstd.dll"
|
|
call :copyFile "build\cmake\build\lib\Release\zstd.lib" "bin\dll\zstd.lib"
|
|
call :copyFile "build\cmake\build\programs\Release\zstd.exe" "bin\zstd.exe"
|
|
call :copyFile "lib\dll\example\README.md" "bin\README.md"
|
|
) else (
|
|
echo Copying Make build artifacts...
|
|
call :copyFile "lib\libzstd.a" "bin\static\libzstd_static.lib"
|
|
call :copyFile "lib\dll\libzstd.*" "bin\dll\"
|
|
call :copyFile "programs\zstd.exe" "bin\zstd.exe"
|
|
call :copyFile "lib\dll\example\README.md" "bin\"
|
|
)
|
|
|
|
echo Build package created successfully for %BUILD_TYPE% build!
|
|
endlocal
|
|
exit /b 0
|
|
|
|
:copyFile
|
|
copy "%~1" "%~2"
|
|
if errorlevel 1 (
|
|
echo Failed to copy "%~1"
|
|
exit 1
|
|
)
|
|
exit /b |