[theora-dev] [Ffmpeg-devel] libavcodec/vp3.c compile problem (fwd)
Mike Melanson
melanson at pcisys.net
Wed Sep 10 14:16:21 PDT 2003
Hi,
I don't know how much of the old VP3 codebase is incorporated into
Theora. I wrote ffmpeg's VP3 decoder from scratch but eventually ported in
the original VP3 IDCT function. A BSD conflict cropped up that I thought I
would pass along.
--
-Mike Melanson
<p>---------- Forwarded message ----------
Date: Wed, 10 Sep 2003 13:06:37 -0700 (PDT)
From: Steven M. Schultz <sms at 2BSD.COM>
Reply-To: ffmpeg-devel at lists.sourceforge.net
To: ffmpeg-devel at lists.sourceforge.net
Subject: [Ffmpeg-devel] libavcodec/vp3.c compile problem
Hi!
Since sourceforge finally caught up (it seemed to be running even
more behind than usual for a couple days) I was able to try compiling
the latest version.
Ran into a problem with vp3.c due to a conflict of the variables
_A, _B, _C, _D, _G and _H with defines from the system header
<ctype.h>:
vp3.c: In function `vp3_idct_c':
vp3.c:314: syntax error before `0x00000100L'
vp3.c:351: invalid lvalue in assignment
vp3.c:357: invalid lvalue in assignment
vp3.c:363: invalid lvalue in assignment
vp3.c:369: invalid lvalue in assignment
vp3.c:374: `_Ad' undeclared (first use in this function)
vp3.c:374: (Each undeclared identifier is reported only once
vp3.c:374: for each function it appears in.)
vp3.c:376: warning: integer overflow in expression
vp3.c:378: `_Bd' undeclared (first use in this function)
vp3.c:381: `_Cd' undeclared (first use in this function)
vp3.c:382: `_Dd' undeclared (first use in this function)
vp3.c:386: `_E' undeclared (first use in this function)
vp3.c:390: `_F' undeclared (first use in this function)
vp3.c:396: invalid lvalue in assignment
vp3.c:402: `_H' undeclared (first use in this function)
Why this BSD variant exposes _A ... _G I have no idea but the work
around is either to change the names or to change vp3.c like this:
--- libavcodec/vp3.c.dist Wed Sep 10 11:23:12 2003
+++ libavcodec/vp3.c Wed Sep 10 12:55:44 2003
@@ -311,6 +311,25 @@
int32_t *ip = intermediate_data;
int16_t *op = output_data;
+#ifdef _A
+#undef _A
+#endif
+#ifdef _B
+#undef _B
+#endif
+#ifdef _C
+#undef _C
+#endif
+#ifdef _D
+#undef _D
+#endif
+#ifdef _G
+#undef _G
+#endif
+#ifdef _H
+#undef _H
+#endif
+
int32_t _A, _B, _C, _D, _Ad, _Bd, _Cd, _Dd, _E, _F, _G, _H;
int32_t _Ed, _Gd, _Add, _Bdd, _Fd, _Hd;
int32_t t1, t2;
I've run into this only once or twice over the years but I forget
now how it was resolved then (I think the variable names were changed).
Steven Schultz
<p>-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Ffmpeg-devel mailing list
Ffmpeg-devel at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ffmpeg-devel
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'theora-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the Theora-dev
mailing list