WorksButNotTested 1355bd5294
Improve CI (#3258)
* Improve CI

* Fix markup errors

* Remove unnecessary matrix parameters

* Rename matrix jobs to tidy up the UI

* Allow the docker cache to be updated

* Fix cache name

* Share some caches

* Rename tools
2025-05-22 16:08:35 +02:00

53 lines
1.7 KiB
Makefile

import "../../../just/libafl.just"
FUZZER_NAME := "frida_windows_gdiplus.exe"
set windows-shell := ['cmd.exe', '/c']
set unstable
[windows]
harness:
cl.exe /LD harness.cc /link /dll gdiplus.lib ole32.lib
[windows]
harness_cmplog_test:
ml64 cmplog_test.asm /subsystem:windows /link /dll /def:cmplog_test.def /entry:dll_main /out:cmplog.dll
[windows]
build:
cargo build --profile {{ PROFILE }}
copy {{TARGET_DIR}}\{{PROFILE}}\{{FUZZER_NAME}} .
[windows]
run: build harness
.\{{TARGET_DIR}}\{{PROFILE}}\{{FUZZER_NAME}} -H harness.dll -i corpus -o output --libs-to-instrument gdi32.dll --libs-to-instrument gdi32full.dll --libs-to-instrument gdiplus.dll --libs-to-instrument WindowsCodecs.dll --disable-excludes
[windows]
[script("cmd.exe", "/c")]
test_cmplog: build harness_cmplog_test
@echo off
for %%i in (t1 t2 t3 t4 t5 t6 t7) do (
echo Testing %%i...
rmdir /s /q output_%%i
start "" "{{FUZZER_NAME}}" -H cmplog.dll -i corpus -o output_%%i --libs-to-instrument cmplog.dll -F %%i -C
ping -n 3 127.0.0.1>NUL && taskkill /im {{ FUZZER }} /F
dir /a-d "output_%%i" && (echo Files exist) || (exit /b 1337)
)
echo All tests done
[windows]
[script("cmd.exe", "/c")]
test_default: build harness
start "" "{{FUZZER_NAME}}" -H harness.dll -i corpus -o output --libs-to-instrument gdi32.dll --libs-to-instrument gdi32full.dll --libs-to-instrument gdiplus.dll --libs-to-instrument WindowsCodecs.dll --disable-excludes
ping -n 10 127.0.0.1>NUL && taskkill /im frida_windows_gdiplus.exe /F
dir /a-d corpus_discovered && (echo Files exist) || (exit /b 1337)
[windows]
test: test_default test_cmplog
[windows]
clean:
make -C libpng-1.6.37 clean
cargo clean