Commit graph

10 commits

Author SHA1 Message Date
Erik Walthinsen 29d567ba23 Changes made to the DEBUG system. New header file gstdebug.h holds the stuff to keep it out of gst.h's hair. DEBUG ...
Original commit message from CVS:
Changes made to the DEBUG system.  New header file gstdebug.h holds the
stuff to keep it out of gst.h's hair.  DEBUG prints out the process id,
cothread id, source filename and line number.  Two new macros DEBUG_ENTER
and DEBUG_LEAVE are used to show the entry and exit of a given function.
This eventually might be used to construct call trace graphs, even taking
cothreads into account.  This would be quite useful in visualizing the
scheduling mechanism.

Minor changes to various debug messages.

Also sitting in gstdebug.h is a prototypical DEBUG_ENTER that's capable of
performing DEBUG_LEAVE automatically.  It does this by utilizing a
little-known GCC extension that allows one to call a function with the
same parameters as the current function.  The macro uses this to basically
call itself.  A boolean is used to ensure that when it calls itself it
actually runs the body of the function.  In the meantime it prints stuff
out before and after the real function, as well as constructing a
debugging string.  This can be used eventually to provide call-wide data
on the DEBUG lines, instead of having to replicate data on each call to
DEBUG.  More research is needed into how this would most cleanly be fit
into some other chunk of code, like GStreamer (I think of this DEBUG trick
as a separate project, sorta).

Unfortunately, the aforementioned DEBUG trick interacts quite poorly with
cothreads.  Almost any time it's used in a function that has anything
remotely to do with a cothread context (as in, it runs in one), a segfault
results from the __builtin_apply call, which is the heart of the whole
thing.  If someone who really knows assembly could analyze the resulting
code to see what's really going on, we might find a way to fix either the
macro or the cothreads (I'm thinking that there's something we missed in
constructing the cothreads themselves) so this works in all cases.

In the meantime, please insert both DEBUG_ENTER and DEBUG_LEAVE in your
functions.  Be sure to put DEBUG_ENTER after your variable declarations
and before any functional code, not to put the function name in any DEBUG
strings (it's already there, trust me), and put a DEBUG_LEAVE if you care
enough.

Changes are going to happen in the way DEBUGs and other printouts occur,
so stay tuned.
2000-12-04 09:35:08 +00:00
Wim Taymans f7bace76aa Added check for vorbis.
Original commit message from CVS:
Added check for vorbis.
Really compile with Xv extension if the library is found.
Changed the disksrc so that is goes to the PAUSE state if eof.
2000-09-17 14:06:18 +00:00
Richard Boulton 5a7cbafdda More work porting to PPC. libs/winloader is disabled on PPC - I doubt this can be made to work.
Original commit message from CVS:
More work porting to PPC.
libs/winloader is disabled on PPC - I doubt this can be made to work.
libs/videoscale and libs/idct are also disabled - they should be fixable
though.

Sorted out most of the plugins - avi is disabled for now on PPC;
can be worked on later if there's any chance of getting it to work.

Also provide an automake conditional for compiling vorbis, based on a
configure test for the needed libraries: currently the test isn't
implemented and defaults to "no" so you'll have to fiddle it to compile
vorbis.  I shall get hold of vorbis and implement an appropriate test some
other time (if noone else beats me to it).
2000-09-16 23:11:05 +00:00
Richard Boulton 238bbc23c8 Begun to add support for non i386 architectures, with the help of Chris
Original commit message from CVS:
Begun to add support for non i386 architectures, with the help of Chris
Emerson.  Added bits to configure to figure out architecture, and added
some alternatives for PPC.  Should cause no problems on i386, but I'll
check after this commit, but doesn't yet work on PPC by a fair way...
2000-09-15 22:44:10 +00:00
Richard Boulton d840ef3e7d Test for nasm - define HAVE_NASM in config.h if we have it, and AC_SUBST
Original commit message from CVS:
Test for nasm - define HAVE_NASM in config.h if we have it, and AC_SUBST
NASM_PATH for use when using nasm.
2000-08-18 21:30:30 +00:00
Richard Boulton 1c6911d307 Make GDK pixbuf optional, by compiling videosink only if it is present.
Original commit message from CVS:
Make GDK pixbuf optional, by compiling videosink only if it is present.
Make documentation generated successfully even if libghttp isn't present
(by skipping the ghttpsrc stuff).
2000-05-12 07:15:03 +00:00
Richard Boulton dc38347cee Tidy up of configure script.
Original commit message from CVS:
Tidy up of configure script.
Make libghttp detection work at all.
Make library configuration specifiable on configure commandline.
Make detection of atomic resource stuff cope with 2.0 linux kernels.
Fix typo (HAVE_ATOMIC_T for HAVE_ATOMIC_H).
Remove generated ltmain.sh file from mp3decode.
2000-02-01 04:10:58 +00:00
Erik Walthinsen 0bc672ec72 Various fixes that collectively allow make dist to work.
Original commit message from CVS:
Various fixes that collectively allow `make dist` to work.
2000-01-31 05:55:22 +00:00
Wim Taymans b8a3a19774 Changed Makefiles to: detect xaudio (check header xaudio/decoder.h) detect mmx.h need something better.
Original commit message from CVS:
Changed Makefiles to:
detect xaudio (check header xaudio/decoder.h)
detect mmx.h
detect CSS (check if css.c is in plugins/dvdsrc), need something better.
some LDFLAGS had *.la dependencies which failed for libtool

The build is now 100% on my system.
2000-01-30 22:50:27 +00:00
Erik Walthinsen 1762dfbf98 initial checkin
Original commit message from CVS:
initial checkin
2000-01-30 09:03:00 +00:00