Subject: audio/faad2 and patch-af for HAVE_SYS_TYPES_H
To: None <tech-pkg@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 06/10/2004 08:48:49
I am looking for testers on non-Linux and non-NetBSD 1.6.2 to try patch at
bottom.

audio/faad2 failed to build on my Linux system. It had many errors like:

mp4ffint.h:122: error: parse error before "uint32_t"
mp4ffint.h:122: warning: no semicolon at end of struct or union
...
mp4ffint.h:124: error: `uint32_t' declared as function returning a function
mp4ffint.h:124: warning: data definition has no type or storage class
...
mp4ffint.h:248: error: parse error before "mp4ff_atom_read_header"
mp4ffint.h:248: error: parse error before '*' token
mp4ffint.h:248: warning: data definition has no type or storage class
...
mp4ff.c:139: error: `uint64_t' undeclared (first use in this function)
mp4ff.c:139: error: parse error before "size"
...

This was caused by including the wrong include file as done in
patch-af. Because under Linux, HAVE_SYS_TYPES_H, HAVE_INTTYPES_H, and
HAVE_STDINT_H were defined, but wrong include file was then used.

The following works to complete the build (and appears to install fine)
for NetBSD 1.6.2 and Linux. (Under NetBSD 1.6.2, HAVE_STDINT_H,
HAVE_INTTYPES_H, and HAVE_STDINT_H were all defined too.)

Please try the following on some other operating systems. Thank you.

I'd like to commit this build fix.

Index: audio/faad2/patches/patch-af
===================================================================
RCS file: /cvsroot/pkgsrc/audio/faad2/patches/patch-af,v
retrieving revision 1.1
diff -b -u -r1.1 patch-af
--- audio/faad2/patches/patch-af	15 May 2004 13:02:33 -0000	1.1
+++ audio/faad2/patches/patch-af	10 Jun 2004 15:41:39 -0000
@@ -12,10 +12,10 @@

  #else

-+#if HAVE_SYS_TYPES_H
-+#include <sys/types.h>
-+#elif HAVE_INTTYPES_H
++#if HAVE_INTTYPES_H
 +#include <inttypes.h>
++#elif HAVE_SYS_TYPES_H
++#include <sys/types.h>
 +#elif HAVE_STDINT_H
  #include <stdint.h>
 +#endif


 Jeremy C. Reed

 	  	 	 technical support & remote administration
	  	 	 http://www.pugetsoundtechnology.com/