Closed Bug 487754 Opened 12 years ago Closed 12 years ago
Problems building qcms
+++ This bug was initially created as a clone of Bug #487566 +++ Similar to OS/2 FreeBSD typedefs uintptr_t as well (but it does in /usr/include/sys/types.h). This leads to the following error (excerpt from the buildlog): ... gmake: Entering directory `/work/build/suite/mozilla/gfx/qcms' iccread.c gcc -o iccread.o -c -I../../dist/include/system_wrappers -include /work/src/mozilla/config/gcc_hidden.h -DMOZILLA_INTERNAL_API -DMOZ_SUITE=1 -DSUITE_USING_XPFE_DM=1 -DOSTYPE=\"FreeBSD7\" -DOSARCH=FreeBSD -I/work/src/mozilla/gfx/qcms -I. -I../../dist/include -I../../dist/include/qcms -I/work/build/suite/mozilla/dist/include/nspr -I/work/build/suite/mozilla/dist/sdk/include -I/usr/local/include -fPIC -I/usr/local/include -I/usr/local/include -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -W -Wno-long-long -pedantic -fno-strict-aliasing -pipe -DNDEBUG -DTRIMMED -O -DMOZ_QCMS -I/usr/local/include -I/usr/local/include -include ../../mozilla-config.h -DMOZILLA_CLIENT -Wp,-MD,.deps/iccread.pp /work/src/mozilla/gfx/qcms/iccread.c /work/src/mozilla/gfx/qcms/iccread.c:1:1: warning: C++ style comments are not allowed in ISO C90 /work/src/mozilla/gfx/qcms/iccread.c:1:1: warning: (this will be reported only once per input file) In file included from /work/src/mozilla/gfx/qcms/qcmsint.h:2, from /work/src/mozilla/gfx/qcms/iccread.c:26: /work/src/mozilla/gfx/qcms/qcms.h:75: warning: ISO C restricts enumerator values to range of 'int' In file included from /work/src/mozilla/gfx/qcms/qcmsint.h:2, from /work/src/mozilla/gfx/qcms/iccread.c:26: /work/src/mozilla/gfx/qcms/qcms.h:97:1: warning: C++ style comments are not allowed in ISO C90 /work/src/mozilla/gfx/qcms/qcms.h:97:1: warning: (this will be reported only once per input file) In file included from /work/src/mozilla/gfx/qcms/qcmsint.h:3, from /work/src/mozilla/gfx/qcms/iccread.c:26: /work/src/mozilla/gfx/qcms/qcmstypes.h:16: error: conflicting types for 'uintptr_t' /usr/include/sys/types.h:105: error: previous declaration of 'uintptr_t' was here In file included from /work/src/mozilla/gfx/qcms/iccread.c:26: /work/src/mozilla/gfx/qcms/qcmsint.h:64: warning: ISO C forbids zero-size array 'data' In file included from /work/src/mozilla/gfx/qcms/iccread.c:26: /work/src/mozilla/gfx/qcms/qcmsint.h:91:33: warning: missing terminating ' character /work/src/mozilla/gfx/qcms/qcmsint.h:104:4: warning: C++ style comments are not allowed in ISO C90 /work/src/mozilla/gfx/qcms/qcmsint.h:104:4: warning: (this will be reported only once per input file) /work/src/mozilla/gfx/qcms/iccread.c: In function 'read_tag_table': /work/src/mozilla/gfx/qcms/iccread.c:220: warning: comparison between signed and unsigned /work/src/mozilla/gfx/qcms/iccread.c: In function 'find_tag': /work/src/mozilla/gfx/qcms/iccread.c:286: warning: comparison between signed and unsigned /work/src/mozilla/gfx/qcms/iccread.c: In function 'read_tag_XYZType': /work/src/mozilla/gfx/qcms/iccread.c:301: warning: missing initializer /work/src/mozilla/gfx/qcms/iccread.c:301: warning: (near initialization for 'num.Y') /work/src/mozilla/gfx/qcms/iccread.c: In function 'read_tag_curveType': /work/src/mozilla/gfx/qcms/iccread.c:343: warning: comparison between signed and unsigned gmake: *** [iccread.o] Error 1 gmake: Leaving directory `/work/build/suite/mozilla/gfx/qcms' ... Please note that the attached patch depends upon the one for os/2 (bug 487566, attachment 371871 [details] [diff] [review]) already being applied.
Attachment #372013 - Flags: review?(jmuizelaar)
Marco, did you mean bug 481296, a TraceMonkey bug? /be
Comment on attachment 372013 [details] [diff] [review] freebsd patch (avoids redefining uintptr_t, mozilla-central) >diff --git a/gfx/qcms/qcmstypes.h b/gfx/qcms/qcmstypes.h >--- a/gfx/qcms/qcmstypes.h >+++ b/gfx/qcms/qcmstypes.h >@@ -13,18 +13,20 @@ typedef PRInt32 int32_t; > typedef PRUint32 uint32_t; > typedef PRInt64 int64_t; > typedef PRUint64 uint64_t; > > #ifdef __OS2__ > /* OS/2's stdlib typdefs uintptr_t. So we'll just include that so we don't collide */ > #include <stdlib.h> > #else >+#ifndef __FreeBSD__ > typedef PRUptrdiff uintptr_t; > #endif >+#endif I'd prefer something like this: #ifdef __OS2__ /* OS/2's stdlib typdefs uintptr_t. So we'll just include that so we don't collide */ #include <stdlib.h> #elif defined(__FreeBSD__) /* Similar to OS/2 FreeBSD typedefs uintptr_t as well (but it does in /usr/include/sys/types.h */ #else typedef PRUptrdiff uintptr_t; #endif
Attachment #372013 - Flags: review?(jmuizelaar) → review-
New version of the patch based upon the suggestion from comment #3.
Comment on attachment 372092 [details] [diff] [review] freebsd patch v2 (mozilla-central) Looks good
Attachment #372092 - Flags: review?(jmuizelaar) → review+
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.