Home | History | Annotate | Download | only in honggfuzz
      1 #   honggfuzz - Makefile
      2 #   -----------------------------------------
      3 #
      4 #   Author: Robert Swiecki <swiecki (at] google.com>
      5 #
      6 #   Copyright 2010-2015 by Google Inc. All Rights Reserved.
      7 #
      8 #   Licensed under the Apache License, Version 2.0 (the "License");
      9 #   you may not use this file except in compliance with the License.
     10 #   You may obtain a copy of the License at
     11 #
     12 #     http://www.apache.org/licenses/LICENSE-2.0
     13 #
     14 #   Unless required by applicable law or agreed to in writing, software
     15 #   distributed under the License is distributed on an "AS IS" BASIS,
     16 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     17 #   See the License for the specific language governing permissions and
     18 #   limitations under the License.
     19 #
     20 #   NOTE: xcrun is within xcode...xcode is required on OSX.
     21 #
     22 
     23 # Common for all architectures
     24 CC ?= gcc
     25 LD = $(CC)
     26 BIN := honggfuzz
     27 HFUZZ_CC_BIN := hfuzz_cc/hfuzz-cc
     28 HFUZZ_CC_SRCS := hfuzz_cc/hfuzz-cc.c
     29 COMMON_CFLAGS := -D_GNU_SOURCE -Wall -Werror -Wno-format-truncation -I.
     30 COMMON_LDFLAGS := -lm libhfcommon/libhfcommon.a
     31 COMMON_SRCS := $(sort $(wildcard *.c))
     32 CFLAGS ?= -O3 -mtune=native
     33 LDFLAGS ?=
     34 LIBS_CFLAGS ?= -fPIC -fno-stack-protector
     35 GREP_COLOR ?=
     36 
     37 OS ?= $(shell uname -s)
     38 MARCH ?= $(shell uname -m)
     39 KERNEL ?= $(shell uname -r)
     40 
     41 ifeq ($(OS)$(findstring Microsoft,$(KERNEL)),Linux) # matches Linux but excludes WSL (Windows Subsystem for Linux)
     42     ARCH := LINUX
     43 
     44     ARCH_CFLAGS := -std=c11 -I/usr/local/include \
     45                    -Wextra -Wno-override-init \
     46                    -funroll-loops \
     47                    -D_FILE_OFFSET_BITS=64
     48     ARCH_LDFLAGS := -L/usr/local/include \
     49                     -pthread -lunwind-ptrace -lunwind-generic -lbfd -lopcodes -lrt -ldl
     50     ARCH_SRCS := $(sort $(wildcard linux/*.c))
     51     LIBS_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
     52 
     53     ifeq ("$(wildcard /usr/include/bfd.h)","")
     54         WARN_LIBRARY += binutils-devel
     55     endif
     56     ifeq ("$(wildcard /usr/include/libunwind-ptrace.h)","")
     57         WARN_LIBRARY += libunwind-devel/libunwind8-devel
     58     endif
     59     ifeq ("$(wildcard /usr/local/include/intel-pt.h)","/usr/local/include/intel-pt.h")
     60         ARCH_CFLAGS += -D_HF_LINUX_INTEL_PT_LIB
     61         ARCH_CFLAGS += -I/usr/local/include
     62         ARCH_LDFLAGS += -L/usr/local/lib -lipt -Wl,--rpath=/usr/local/lib
     63     endif
     64     ifeq ("$(wildcard /usr/include/intel-pt.h)","/usr/include/intel-pt.h")
     65         ARCH_CFLAGS += -D_HF_LINUX_INTEL_PT_LIB
     66         ARCH_LDFLAGS += -lipt
     67     endif
     68     ifdef WARN_LIBRARY
     69         $(info --------------------------------------------------------)
     70         $(info Libraries which are most likely missing on your OS.     )
     71         $(info This can result in linking/compilation errors.          )
     72         $(info > $(WARN_LIBRARY))
     73         $(info --------------------------------------------------------)
     74     endif
     75     # OS Linux
     76 else ifeq ($(OS),Darwin)
     77     ARCH := DARWIN
     78 
     79     # MacOS-X grep seem to use colors unconditionally
     80     GREP_COLOR = --color=never
     81 
     82     # Figure out which crash reporter to use.
     83     CRASHWRANGLER := third_party/mac
     84     OS_VERSION := $(shell sw_vers -productVersion)
     85     ifneq (,$(findstring 10.14,$(OS_VERSION)))
     86         CRASH_REPORT := $(CRASHWRANGLER)/CrashReport_Sierra.o
     87     else ifneq (,$(findstring 10.13,$(OS_VERSION)))
     88         CRASH_REPORT := $(CRASHWRANGLER)/CrashReport_Sierra.o
     89     else ifneq (,$(findstring 10.12,$(OS_VERSION)))
     90         CRASH_REPORT := $(CRASHWRANGLER)/CrashReport_Sierra.o
     91     else ifneq (,$(findstring 10.11,$(OS_VERSION)))
     92         # El Capitan didn't break compatibility
     93         CRASH_REPORT := $(CRASHWRANGLER)/CrashReport_Yosemite.o
     94     else ifneq (,$(findstring 10.10,$(OS_VERSION)))
     95         CRASH_REPORT := $(CRASHWRANGLER)/CrashReport_Yosemite.o
     96     else ifneq (,$(findstring 10.9,$(OS_VERSION)))
     97         CRASH_REPORT := $(CRASHWRANGLER)/CrashReport_Mavericks.o
     98     else ifneq (,$(findstring 10.8,$(OS_VERSION)))
     99         CRASH_REPORT := $(CRASHWRANGLER)/CrashReport_Mountain_Lion.o
    100     else
    101         $(error Unsupported MAC OS X version)
    102     endif
    103 
    104     # Figure out which XCode SDK to use.
    105     OSX_SDK_VERSION := $(shell xcrun --show-sdk-version)
    106     SDK_NAME_V := macosx$(OSX_SDK_VERSION)
    107     SDK_V := $(shell xcrun --sdk $(SDK_NAME) --show-sdk-path 2>/dev/null)
    108     SDK_NAME := macosx
    109     SDK := $(shell xcrun --sdk $(SDK_NAME) --show-sdk-path 2>/dev/null)
    110 
    111     CC := $(shell xcrun --sdk $(SDK_NAME) --find cc)
    112     LD := $(shell xcrun --sdk $(SDK_NAME) --find cc)
    113     ARCH_CFLAGS := -arch x86_64 -std=c99 -isysroot $(SDK) \
    114                    -x objective-c -pedantic -fblocks \
    115                    -Wimplicit -Wunused -Wcomment -Wchar-subscripts -Wuninitialized \
    116                    -Wreturn-type -Wpointer-arith -Wno-gnu-case-range -Wno-gnu-designator \
    117                    -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-attributes \
    118                    -Wno-embedded-directive
    119     ARCH_LDFLAGS := -F/System/Library/PrivateFrameworks -framework CoreSymbolication -framework IOKit \
    120                     -F$(SDK_V)/System/Library/Frameworks -F$(SDK_V)/System/Library/PrivateFrameworks \
    121                     -F$(SDK)/System/Library/Frameworks \
    122                     -framework Foundation -framework ApplicationServices -framework Symbolication \
    123                     -framework CoreServices -framework CrashReporterSupport -framework CoreFoundation \
    124                     -framework CommerceKit $(CRASH_REPORT)
    125 
    126     XCODE_VER := $(shell xcodebuild -version | grep $(GREP_COLOR) "^Xcode" | cut -d " " -f2)
    127     ifeq "8.3" "$(word 1, $(sort 8.3 $(XCODE_VER)))"
    128       ARCH_LDFLAGS += -F/Applications/Xcode.app/Contents/SharedFrameworks \
    129                       -framework CoreSymbolicationDT \
    130                       -Wl,-rpath,/Applications/Xcode.app/Contents/SharedFrameworks
    131     endif
    132 
    133     MIG_RET := $(shell mig -header mac/mach_exc.h -user mac/mach_excUser.c -sheader mac/mach_excServer.h \
    134                  -server mac/mach_excServer.c $(SDK)/usr/include/mach/mach_exc.defs &>/dev/null; echo $$?)
    135     ifeq ($(MIG_RET),1)
    136         $(error mig failed to generate RPC code)
    137     endif
    138     ARCH_SRCS := $(sort $(wildcard mac/*.c))
    139     # OS Darwin
    140 else ifeq ($(OS),NetBSD)
    141     ARCH := NETBSD
    142 
    143     ARCH_SRCS := $(sort $(wildcard netbsd/*.c))
    144     ARCH_CFLAGS := -std=c11 -I/usr/local/include -I/usr/pkg/include \
    145                    -Wextra -Wno-override-init \
    146                    -funroll-loops -D_KERNTYPES
    147     ARCH_LDFLAGS := -L/usr/local/lib -L/usr/pkg/lib \
    148                     -pthread -lcapstone -lrt \
    149                     -Wl,--rpath=/usr/pkg/lib
    150 
    151     # OS NetBSD
    152 else
    153     ARCH := POSIX
    154 
    155     ARCH_SRCS := $(sort $(wildcard posix/*.c))
    156     ARCH_CFLAGS := -std=c11 -I/usr/local/include \
    157                    -Wextra -Wno-initializer-overrides -Wno-override-init \
    158                    -Wno-unknown-warning-option -Wno-unknown-pragmas \
    159                    -funroll-loops
    160     ARCH_LDFLAGS := -pthread -L/usr/local/lib
    161     # OS Posix
    162 endif
    163 
    164 CFLAGS_BLOCKS =
    165 COMPILER = $(shell $(CC) -v 2>&1 | \
    166   grep $(GREP_COLOR) -oE '((gcc|clang) version|LLVM version.*clang)' | \
    167   grep $(GREP_COLOR) -oE '(clang|gcc)' | head -n1)
    168 ifeq ($(COMPILER),clang)
    169   ARCH_CFLAGS += -Wno-initializer-overrides -Wno-unknown-warning-option
    170   ARCH_CFLAGS += -Wno-gnu-empty-initializer -Wno-format-pedantic
    171   ARCH_CFLAGS += -Wno-gnu-statement-expression
    172   CFLAGS_BLOCKS = -fblocks
    173 
    174   ifneq ($(OS),Darwin)
    175     ARCH_LDFLAGS += -lBlocksRuntime
    176   endif
    177 endif
    178 
    179 SRCS := $(COMMON_SRCS) $(ARCH_SRCS)
    180 OBJS := $(SRCS:.c=.o)
    181 
    182 LHFUZZ_SRCS := $(sort $(wildcard libhfuzz/*.c))
    183 LHFUZZ_OBJS := $(LHFUZZ_SRCS:.c=.o)
    184 LHFUZZ_ARCH := libhfuzz/libhfuzz.a
    185 HFUZZ_INC ?= $(shell pwd)
    186 
    187 LCOMMON_SRCS := $(sort $(wildcard libhfcommon/*.c))
    188 LCOMMON_OBJS := $(LCOMMON_SRCS:.c=.o)
    189 LCOMMON_ARCH := libhfcommon/libhfcommon.a
    190 
    191 LNETDRIVER_SRCS := $(sort $(wildcard libhfnetdriver/*.c))
    192 LNETDRIVER_OBJS := $(LNETDRIVER_SRCS:.c=.o)
    193 LNETDRIVER_ARCH := libhfnetdriver/libhfnetdriver.a
    194 
    195 # Respect external user defines
    196 CFLAGS += $(COMMON_CFLAGS) $(ARCH_CFLAGS) -D_HF_ARCH_${ARCH}
    197 LDFLAGS += $(COMMON_LDFLAGS) $(ARCH_LDFLAGS)
    198 
    199 ifeq ($(DEBUG),true)
    200     CFLAGS += -g -ggdb
    201     LDFLAGS += -g -ggdb
    202 endif
    203 
    204 # Control Android builds
    205 ANDROID_API           ?= android-26
    206 ANDROID_DEBUG_ENABLED ?= false
    207 ANDROID_CLANG         ?= true
    208 ANDROID_APP_ABI       ?= armeabi-v7a
    209 ANDROID_SKIP_CLEAN    ?= false
    210 NDK_BUILD_ARGS :=
    211 
    212 ifeq ($(ANDROID_DEBUG_ENABLED),true)
    213   NDK_BUILD_ARGS += V=1 NDK_DEBUG=1 APP_OPTIM=debug
    214 endif
    215 
    216 # By default ndk-build cleans all project files to ensure that no semi-completed
    217 # builds reach the app package. The following flag disables this check. It's mainly
    218 # purposed to be used with android-all rule where we want recursive invocations
    219 # to keep previous targets' binaries.
    220 ifeq ($(ANDROID_SKIP_CLEAN),true)
    221   NDK_BUILD_ARGS += NDK_APP.local.cleaned_binaries=true
    222 endif
    223 
    224 ifeq ($(ANDROID_CLANG),true)
    225   ANDROID_NDK_TOOLCHAIN_VER := clang
    226   # clang works only against APIs >= 23
    227   ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),armeabi armeabi-v7a))
    228     ANDROID_NDK_TOOLCHAIN ?= arm-linux-androideabi-clang
    229     ANDROID_ARCH_CPU := arm
    230   else ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),x86))
    231     ANDROID_NDK_TOOLCHAIN ?= x86-clang
    232     ANDROID_ARCH_CPU := x86
    233   else ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),arm64-v8a))
    234     ANDROID_NDK_TOOLCHAIN ?= aarch64-linux-android-clang
    235     ANDROID_ARCH_CPU := arm64
    236   else ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),x86_64))
    237     ANDROID_NDK_TOOLCHAIN ?= x86_64-clang
    238     ANDROID_ARCH_CPU := x86_64
    239   else
    240     $(error Unsuported / Unknown APP_API '$(ANDROID_APP_ABI)')
    241   endif
    242 else
    243   ANDROID_NDK_TOOLCHAIN_VER := 4.9
    244   ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),armeabi armeabi-v7a))
    245     ANDROID_NDK_TOOLCHAIN ?= arm-linux-androideabi-4.9
    246     ANDROID_ARCH_CPU := arm
    247   else ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),x86))
    248     ANDROID_NDK_TOOLCHAIN ?= x86-4.9
    249     ANDROID_ARCH_CPU := x86
    250   else ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),arm64-v8a))
    251     ANDROID_NDK_TOOLCHAIN ?= aarch64-linux-android-4.9
    252     ANDROID_ARCH_CPU := arm64
    253   else ifeq ($(ANDROID_APP_ABI),$(filter $(ANDROID_APP_ABI),x86_64))
    254     ANDROID_NDK_TOOLCHAIN ?= x86_64-4.9
    255     ANDROID_ARCH_CPU := x86_64
    256   else
    257     $(error Unsuported / Unknown APP_API '$(ANDROID_APP_ABI)')
    258   endif
    259 endif
    260 
    261 SUBDIR_ROOTS := linux mac netbsd posix libhfuzz libhfcommon libhfnetdriver
    262 DIRS := . $(shell find $(SUBDIR_ROOTS) -type d)
    263 CLEAN_PATTERNS := *.o *~ core *.a *.dSYM *.la *.so *.dylib
    264 SUBDIR_GARBAGE := $(foreach DIR,$(DIRS),$(addprefix $(DIR)/,$(CLEAN_PATTERNS)))
    265 MAC_GARGBAGE := $(wildcard mac/mach_exc*)
    266 ANDROID_GARBAGE := obj libs
    267 
    268 CLEAN_TARGETS := core Makefile.bak \
    269   $(OBJS) $(BIN) $(HFUZZ_CC_BIN) \
    270   $(LHFUZZ_ARCH) $(LHFUZZ_OBJS) \
    271   $(LCOMMON_ARCH) $(LCOMMON_OBJS) \
    272   $(LNETDRIVER_ARCH) $(LNETDRIVER_OBJS) \
    273   $(MAC_GARGBAGE) $(ANDROID_GARBAGE) $(SUBDIR_GARBAGE)
    274 
    275 all: $(BIN) $(HFUZZ_CC_BIN) $(LHFUZZ_ARCH) $(LCOMMON_ARCH) $(LNETDRIVER_ARCH)
    276 
    277 %.o: %.c
    278 	$(CC) -c $(CFLAGS) $(CFLAGS_BLOCKS) -o $@ $<
    279 
    280 %.so: %.c
    281 	$(CC) -fPIC -shared $(CFLAGS) -o $@ $<
    282 
    283 %.dylib: %.c
    284 	$(CC) -fPIC -shared $(CFLAGS) -o $@ $<
    285 
    286 $(BIN): $(OBJS) $(LCOMMON_ARCH)
    287 	$(LD) -o $(BIN) $(OBJS) $(LDFLAGS)
    288 
    289 $(HFUZZ_CC_BIN): $(LCOMMON_ARCH) $(LHFUZZ_ARCH) $(LNETDRIVER_ARCH) $(HFUZZ_CC_SRCS)
    290 	$(LD) -o $@ $(HFUZZ_CC_SRCS) $(LDFLAGS) $(CFLAGS) $(CFLAGS_BLOCKS) -D_HFUZZ_INC_PATH=$(HFUZZ_INC)
    291 
    292 $(LCOMMON_OBJS): $(LCOMMON_SRCS)
    293 	$(CC) -c $(CFLAGS) $(LIBS_CFLAGS) -o $@ $(@:.o=.c)
    294 
    295 $(LCOMMON_ARCH): $(LCOMMON_OBJS)
    296 	$(AR) rcs $(LCOMMON_ARCH) $(LCOMMON_OBJS)
    297 
    298 $(LHFUZZ_OBJS): $(LHFUZZ_SRCS)
    299 	$(CC) -c $(CFLAGS) $(LIBS_CFLAGS) -o $@ $(@:.o=.c)
    300 
    301 $(LHFUZZ_ARCH): $(LHFUZZ_OBJS) $(LCOMMON_OBJS)
    302 	$(AR) rcs $(LHFUZZ_ARCH) $(LHFUZZ_OBJS) $(LCOMMON_OBJS)
    303 
    304 $(LNETDRIVER_OBJS): $(LNETDRIVER_SRCS)
    305 	$(CC) -c $(CFLAGS) $(LIBS_CFLAGS) -o $@ $(@:.o=.c)
    306 
    307 $(LNETDRIVER_ARCH): $(LNETDRIVER_OBJS) $(LCOMMON_OBJS)
    308 	$(AR) rcs $(LNETDRIVER_ARCH) $(LNETDRIVER_OBJS) $(LCOMMON_OBJS)
    309 
    310 .PHONY: clean
    311 clean:
    312 	$(RM) -r $(CLEAN_TARGETS)
    313 
    314 .PHONY: indent
    315 indent:
    316 	clang-format -style="{BasedOnStyle: Google, IndentWidth: 4, ColumnLimit: 100, AlignAfterOpenBracket: DontAlign, AllowShortFunctionsOnASingleLine: false, AlwaysBreakBeforeMultilineStrings: false}" -i -sort-includes  *.c *.h */*.c */*.h
    317 
    318 .PHONY: depend
    319 depend: all
    320 	makedepend -Y. -Y* -- *.c */*.c
    321 
    322 .PHONY: android
    323 android:
    324 	$(info ***************************************************************)
    325 	$(info *                 Use Android NDK 15 or newer                 *)
    326 	$(info ***************************************************************)
    327 	@ANDROID_API=$(ANDROID_API) third_party/android/scripts/compile-libunwind.sh \
    328 	third_party/android/libunwind $(ANDROID_ARCH_CPU)
    329 
    330 	@ANDROID_API=$(ANDROID_API) third_party/android/scripts/compile-capstone.sh \
    331 	third_party/android/capstone $(ANDROID_ARCH_CPU)
    332 
    333   ifeq ($(ANDROID_CLANG),true)
    334 		@ANDROID_API=$(ANDROID_API) third_party/android/scripts/compile-libBlocksRuntime.sh \
    335 		third_party/android/libBlocksRuntime $(ANDROID_ARCH_CPU)
    336   endif
    337 
    338 	ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./android/Android.mk \
    339     APP_PLATFORM=$(ANDROID_API) APP_ABI=$(ANDROID_APP_ABI) \
    340     NDK_TOOLCHAIN=$(ANDROID_NDK_TOOLCHAIN) NDK_TOOLCHAIN_VERSION=$(ANDROID_NDK_TOOLCHAIN_VER) \
    341     $(NDK_BUILD_ARGS) APP_MODULES='honggfuzz hfuzz'
    342 
    343 # Loop all ABIs and pass-through flags since visibility is lost due to sub-process
    344 .PHONY: android-all
    345 android-all:
    346 	@echo "Cleaning workspace:"
    347 	$(MAKE) clean
    348 	@echo ""
    349 
    350 	@for abi in armeabi armeabi-v7a arm64-v8a x86 x86_64; do \
    351 	  ANDROID_APP_ABI=$$abi ANDROID_SKIP_CLEAN=true ANDROID_CLANG=$(ANDROID_CLANG) \
    352 	  ANDROID_API=$(ANDROID_API) ANDROID_DEBUG_ENABLED=$(ANDROID_DEBUG_ENABLED) \
    353 	  $(MAKE) android || { \
    354 	    echo "Recursive make failed"; exit 1; }; \
    355 	  echo ""; \
    356 	done
    357 
    358 .PHONY: android-clean-deps
    359 android-clean-deps:
    360 	@for cpu in arm arm64 x86 x86_64; do \
    361 	  make -C "third_party/android/capstone" clean; \
    362 	  rm -rf "third_party/android/capstone/$$cpu"; \
    363 	  make -C "third_party/android/libunwind" clean; \
    364 	  rm -rf "third_party/android/libunwind/$$cpu"; \
    365 	  ndk-build -C "third_party/android/libBlocksRuntime" \
    366 	    NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=Android.mk clean; \
    367 	  rm -rf "third_party/android/libBlocksRuntime/$$cpu"; \
    368 	done
    369 
    370 PREFIX		?= /usr/local
    371 BIN_PATH	=$(PREFIX)/bin
    372 
    373 install: all
    374 	mkdir -p -m 755 $${DESTDIR}$(BIN_PATH)
    375 	install -m 755 honggfuzz $${DESTDIR}$(BIN_PATH)
    376 	install -m 755 hfuzz_cc/hfuzz-cc $${DESTDIR}$(BIN_PATH)
    377 	install -m 755 hfuzz_cc/hfuzz-clang $${DESTDIR}$(BIN_PATH)
    378 	install -m 755 hfuzz_cc/hfuzz-clang++ $${DESTDIR}$(BIN_PATH)
    379 	install -m 755 hfuzz_cc/hfuzz-gcc $${DESTDIR}$(BIN_PATH)
    380 	install -m 755 hfuzz_cc/hfuzz-g++ $${DESTDIR}$(BIN_PATH)
    381 
    382 # DO NOT DELETE
    383 
    384 cmdline.o: cmdline.h honggfuzz.h libhfcommon/util.h libhfcommon/common.h
    385 cmdline.o: display.h libhfcommon/files.h libhfcommon/common.h
    386 cmdline.o: libhfcommon/log.h
    387 display.o: display.h honggfuzz.h libhfcommon/util.h libhfcommon/common.h
    388 display.o: libhfcommon/log.h
    389 fuzz.o: fuzz.h honggfuzz.h libhfcommon/util.h arch.h input.h
    390 fuzz.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    391 fuzz.o: libhfcommon/log.h mangle.h report.h sanitizers.h socketfuzzer.h
    392 fuzz.o: subproc.h
    393 honggfuzz.o: cmdline.h honggfuzz.h libhfcommon/util.h libhfcommon/common.h
    394 honggfuzz.o: display.h fuzz.h input.h libhfcommon/files.h
    395 honggfuzz.o: libhfcommon/common.h libhfcommon/log.h socketfuzzer.h subproc.h
    396 input.o: input.h honggfuzz.h libhfcommon/util.h libhfcommon/common.h
    397 input.o: libhfcommon/files.h libhfcommon/common.h mangle.h subproc.h
    398 input.o: libhfcommon/log.h
    399 mangle.o: mangle.h honggfuzz.h libhfcommon/util.h input.h
    400 mangle.o: libhfcommon/common.h libhfcommon/log.h
    401 report.o: report.h honggfuzz.h libhfcommon/util.h libhfcommon/common.h
    402 report.o: libhfcommon/log.h
    403 sanitizers.o: sanitizers.h honggfuzz.h libhfcommon/util.h cmdline.h
    404 sanitizers.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    405 sanitizers.o: libhfcommon/log.h
    406 socketfuzzer.o: honggfuzz.h libhfcommon/util.h libhfcommon/common.h
    407 socketfuzzer.o: libhfcommon/files.h libhfcommon/common.h libhfcommon/log.h
    408 socketfuzzer.o: libhfcommon/ns.h socketfuzzer.h
    409 subproc.o: subproc.h honggfuzz.h libhfcommon/util.h arch.h fuzz.h
    410 subproc.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    411 subproc.o: libhfcommon/log.h
    412 hfuzz_cc/hfuzz-cc.o: honggfuzz.h libhfcommon/util.h libhfcommon/common.h
    413 hfuzz_cc/hfuzz-cc.o: libhfcommon/files.h libhfcommon/common.h
    414 hfuzz_cc/hfuzz-cc.o: libhfcommon/log.h
    415 libhfcommon/files.o: libhfcommon/files.h libhfcommon/common.h
    416 libhfcommon/files.o: libhfcommon/common.h libhfcommon/log.h
    417 libhfcommon/files.o: libhfcommon/util.h
    418 libhfcommon/log.o: libhfcommon/log.h libhfcommon/common.h libhfcommon/util.h
    419 libhfcommon/ns.o: libhfcommon/ns.h libhfcommon/common.h libhfcommon/files.h
    420 libhfcommon/ns.o: libhfcommon/common.h libhfcommon/log.h
    421 libhfcommon/util.o: libhfcommon/util.h libhfcommon/common.h
    422 libhfcommon/util.o: libhfcommon/files.h libhfcommon/common.h
    423 libhfcommon/util.o: libhfcommon/log.h
    424 libhfnetdriver/netdriver.o: libhfnetdriver/netdriver.h honggfuzz.h
    425 libhfnetdriver/netdriver.o: libhfcommon/util.h libhfcommon/common.h
    426 libhfnetdriver/netdriver.o: libhfcommon/files.h libhfcommon/common.h
    427 libhfnetdriver/netdriver.o: libhfcommon/log.h libhfcommon/ns.h
    428 libhfuzz/fetch.o: libhfuzz/fetch.h honggfuzz.h libhfcommon/util.h
    429 libhfuzz/fetch.o: libhfcommon/common.h libhfcommon/files.h
    430 libhfuzz/fetch.o: libhfcommon/common.h libhfcommon/log.h
    431 libhfuzz/instrument.o: libhfuzz/instrument.h honggfuzz.h libhfcommon/util.h
    432 libhfuzz/instrument.o: libhfcommon/common.h libhfcommon/log.h
    433 libhfuzz/linux.o: libhfcommon/common.h libhfcommon/files.h
    434 libhfuzz/linux.o: libhfcommon/common.h libhfcommon/log.h libhfcommon/ns.h
    435 libhfuzz/linux.o: libhfuzz/libhfuzz.h
    436 libhfuzz/memorycmp.o: libhfcommon/common.h libhfuzz/instrument.h
    437 libhfuzz/persistent.o: libhfuzz/libhfuzz.h honggfuzz.h libhfcommon/util.h
    438 libhfuzz/persistent.o: libhfcommon/common.h libhfcommon/files.h
    439 libhfuzz/persistent.o: libhfcommon/common.h libhfcommon/log.h
    440 libhfuzz/persistent.o: libhfuzz/fetch.h libhfuzz/instrument.h
    441 linux/arch.o: arch.h honggfuzz.h libhfcommon/util.h fuzz.h
    442 linux/arch.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    443 linux/arch.o: libhfcommon/log.h libhfcommon/ns.h linux/perf.h linux/trace.h
    444 linux/arch.o: sanitizers.h subproc.h
    445 linux/bfd.o: linux/bfd.h linux/unwind.h honggfuzz.h libhfcommon/util.h
    446 linux/bfd.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    447 linux/bfd.o: libhfcommon/log.h
    448 linux/perf.o: linux/perf.h honggfuzz.h libhfcommon/util.h
    449 linux/perf.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    450 linux/perf.o: libhfcommon/log.h linux/pt.h
    451 linux/pt.o: libhfcommon/common.h libhfcommon/log.h libhfcommon/util.h
    452 linux/pt.o: linux/pt.h honggfuzz.h
    453 linux/trace.o: linux/trace.h honggfuzz.h libhfcommon/util.h
    454 linux/trace.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    455 linux/trace.o: libhfcommon/log.h linux/bfd.h linux/unwind.h sanitizers.h
    456 linux/trace.o: socketfuzzer.h subproc.h
    457 linux/unwind.o: linux/unwind.h honggfuzz.h libhfcommon/util.h
    458 linux/unwind.o: libhfcommon/common.h libhfcommon/log.h
    459 mac/arch.o: arch.h honggfuzz.h libhfcommon/util.h fuzz.h libhfcommon/common.h
    460 mac/arch.o: libhfcommon/files.h libhfcommon/common.h libhfcommon/log.h
    461 mac/arch.o: subproc.h
    462 netbsd/arch.o: arch.h honggfuzz.h libhfcommon/util.h fuzz.h
    463 netbsd/arch.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    464 netbsd/arch.o: libhfcommon/log.h libhfcommon/ns.h netbsd/trace.h subproc.h
    465 netbsd/trace.o: netbsd/trace.h honggfuzz.h libhfcommon/util.h
    466 netbsd/trace.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    467 netbsd/trace.o: libhfcommon/log.h netbsd/unwind.h socketfuzzer.h subproc.h
    468 netbsd/unwind.o: netbsd/unwind.h honggfuzz.h libhfcommon/util.h
    469 netbsd/unwind.o: libhfcommon/common.h libhfcommon/log.h
    470 posix/arch.o: arch.h honggfuzz.h libhfcommon/util.h fuzz.h
    471 posix/arch.o: libhfcommon/common.h libhfcommon/files.h libhfcommon/common.h
    472 posix/arch.o: libhfcommon/log.h subproc.h
    473