mirror of
https://github.com/php/php-src.git
synced 2026-10-28 17:56:50 +08:00
FUZZER_BUILD links $(PHP_BINARY_OBJS), including main/internal_functions_cli.lo, but the php-fuzz-* rules list $(PHP_SAPI_OBJS), including main/internal_functions.lo, as prerequisites. Building a fuzzer target in isolation from a clean tree therefore fails because internal_functions_cli.lo has not been built. Use $(PHP_BINARY_OBJS) for these prerequisites to match the objects linked by FUZZER_BUILD. This aligns the fuzzer build rules with the CLI, CGI, phpdbg, and litespeed fragments. Assisted-By: Claude Opus 5 Closes #23394
34 lines
1.8 KiB
GLSL
34 lines
1.8 KiB
GLSL
fuzzer: $(PHP_FUZZER_BINARIES)
|
|
|
|
FUZZER_BUILD = $(LIBTOOL) --tag=CC --mode=link $(FUZZING_CC) -export-dynamic $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(EXTRA_LDFLAGS_PROGRAM) $(LDFLAGS) $(PHP_RPATHS) $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) $(FUZZING_LIB)
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-parser: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_PARSER_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_PARSER_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-execute: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_EXECUTE_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_EXECUTE_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-function-jit: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_FUNCTION_JIT_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_FUNCTION_JIT_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-tracing-jit: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_TRACING_JIT_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_TRACING_JIT_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-unserialize: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_UNSERIALIZE_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_UNSERIALIZE_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-unserializehash: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_UNSERIALIZEHASH_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_UNSERIALIZEHASH_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-json: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_JSON_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_JSON_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-exif: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_EXIF_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_EXIF_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-mbstring: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_MBSTRING_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_MBSTRING_OBJS) -o $@
|
|
|
|
$(SAPI_FUZZER_PATH)/php-fuzz-mbregex: $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_FUZZER_MBREGEX_OBJS)
|
|
$(FUZZER_BUILD) $(PHP_FUZZER_MBREGEX_OBJS) -o $@
|