Fix build with unpatched jpeg 9 zend.h from PHP 5.2 and earlier uses #include which provides definitions of TRUE and FALSE that conflict with the ones jpeg 9 will define. So tell jpeg we've already defined them, and what their type is. PHP 5.3 and later aren't affected because they no longer #include ; see . --- ext/gd/libgd/gd_jpeg.c.orig 2006-02-05 09:53:58.000000000 -0600 +++ ext/gd/libgd/gd_jpeg.c 2017-10-16 20:11:17.000000000 -0500 @@ -35,6 +35,10 @@ #undef HAVE_STDLIB_H /* 1.8.1: remove dependency on jinclude.h */ +#ifdef ENUM_DYLD_BOOL +#define HAVE_BOOLEAN +typedef enum DYLD_BOOL boolean; +#endif #include "jpeglib.h" #include "jerror.h"