build fixes
diff --git a/lib/cpp/test/fuzz/Makefile.am b/lib/cpp/test/fuzz/Makefile.am
index 940484d..a4fc1b9 100644
--- a/lib/cpp/test/fuzz/Makefile.am
+++ b/lib/cpp/test/fuzz/Makefile.am
@@ -19,9 +19,6 @@
 
 AUTOMAKE_OPTIONS = subdir-objects serial-tests nostdinc
 
-# Generate FuzzTest code
-BUILT_SOURCES = gen-cpp/FuzzTest_types.h
-
 noinst_LTLIBRARIES = libfuzztest_gen.la
 
 nodist_libfuzztest_gen_la_SOURCES = \
@@ -84,6 +81,14 @@
 gen-cpp/FuzzTest_types.cpp gen-cpp/FuzzTest_types.h: $(top_srcdir)/test/FuzzTest.thrift
 	$(THRIFT) --gen cpp $<
 
+# Ensure generated headers exist before compiling sources that include them
+FuzzParseCompact.$(OBJEXT): gen-cpp/FuzzTest_types.h
+FuzzParseBinary.$(OBJEXT): gen-cpp/FuzzTest_types.h
+FuzzRoundtripCompact.$(OBJEXT): gen-cpp/FuzzTest_types.h
+FuzzRoundtripBinary.$(OBJEXT): gen-cpp/FuzzTest_types.h
+FuzzParseJson.$(OBJEXT): gen-cpp/FuzzTest_types.h
+FuzzRoundtripJson.$(OBJEXT): gen-cpp/FuzzTest_types.h
+
 # Clean target
 clean-local:
 	$(RM) -rf gen-cpp