$(PERL) -I $(catalogdir) $< $(top_srcdir)/src/include/catalog/pg_proc.h
 
 errcodes.h: $(top_srcdir)/src/backend/utils/errcodes.txt generate-errcodes.pl
-   $(PERL) generate-errcodes.pl $< > $@
+   $(PERL) $(srcdir)/generate-errcodes.pl $< > $@
 
 ifneq ($(enable_dtrace), yes)
 probes.h: Gen_dummy_probes.sed
 
 
 # generate plerrcodes.h from src/backend/utils/errcodes.txt
 plerrcodes.h: $(top_srcdir)/src/backend/utils/errcodes.txt generate-plerrcodes.pl
-   $(PERL) generate-plerrcodes.pl $< > $@
+   $(PERL) $(srcdir)/generate-plerrcodes.pl $< > $@
 
 distprep: pl_gram.h pl_gram.c plerrcodes.h