17 lines
1.0 KiB
Bash
17 lines
1.0 KiB
Bash
#!/bin/bash
|
|
set -euo pipefail
|
|
task_project_root="$(cd "$(dirname "$0")/.." && pwd)"
|
|
task_unity_contents='/Applications/Unity/Hub/Editor/2022.3.62f3c1-x86_64/Unity.app/Contents'
|
|
task_compile_dir="$(mktemp -d /tmp/blockout-source-check.XXXXXX)"
|
|
task_refs=()
|
|
for task_dll in "$task_unity_contents"/Managed/UnityEngine/*.dll "$task_unity_contents"/NetStandard/ref/2.1.0/*.dll; do
|
|
task_refs+=("-r:$task_dll")
|
|
done
|
|
task_sources=()
|
|
while IFS= read -r task_source; do task_sources+=("$task_source"); done < <(rg --files "$task_project_root/BlockOutReplica/Assets/Scripts" "$task_project_root/BlockOutReplica/Assets/Editor" -g '*.cs')
|
|
"$task_unity_contents/MonoBleedingEdge/bin/mono" \
|
|
"$task_unity_contents/MonoBleedingEdge/lib/mono/msbuild/Current/bin/Roslyn/csc.exe" \
|
|
-nologo -noconfig -nostdlib -nowarn:0649 -define:UNITY_EDITOR -target:library \
|
|
-out:"$task_compile_dir/BlockOutSourceCheck.dll" "${task_refs[@]}" "${task_sources[@]}"
|
|
echo "BlockOut C# source compilation: PASS (${#task_sources[@]} files). This does not run Unity."
|