[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog Makefile.am configure.ac gui/du...
From: |
Russ Nelson |
Subject: |
[Gnash-commit] gnash ChangeLog Makefile.am configure.ac gui/du... |
Date: |
Thu, 01 May 2008 16:30:22 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Russ Nelson <nelsonrn> 08/05/01 16:30:22
Modified files:
. : ChangeLog Makefile.am configure.ac
Added files:
gui : dump.cpp dump.h gui_dump.cpp
gui/am-frag : dump.am
Log message:
* incorporate Craig Kelley's "dump" gui code.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6471&r2=1.6472
http://cvs.savannah.gnu.org/viewcvs/gnash/Makefile.am?cvsroot=gnash&r1=1.110&r2=1.111
http://cvs.savannah.gnu.org/viewcvs/gnash/configure.ac?cvsroot=gnash&r1=1.528&r2=1.529
http://cvs.savannah.gnu.org/viewcvs/gnash/gui/dump.cpp?cvsroot=gnash&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/gnash/gui/dump.h?cvsroot=gnash&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/gnash/gui/gui_dump.cpp?cvsroot=gnash&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/gnash/gui/am-frag/dump.am?cvsroot=gnash&rev=1.1
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6471
retrieving revision 1.6472
diff -u -b -r1.6471 -r1.6472
--- ChangeLog 1 May 2008 02:36:25 -0000 1.6471
+++ ChangeLog 1 May 2008 16:30:17 -0000 1.6472
@@ -1,3 +1,7 @@
+2008-05-01 Russ Nelson <address@hidden>
+
+ * incorporate Craig Kelley's "dump" gui code.
+
2008-04-30 Russ Nelson <address@hidden>
* configure.ac: check for dejagnu and throw a warning if not present.
Index: Makefile.am
===================================================================
RCS file: /sources/gnash/gnash/Makefile.am,v
retrieving revision 1.110
retrieving revision 1.111
diff -u -b -r1.110 -r1.111
--- Makefile.am 29 Mar 2008 15:02:36 -0000 1.110
+++ Makefile.am 1 May 2008 16:30:18 -0000 1.111
@@ -278,6 +278,9 @@
if BUILD_HILDON_GUI
@echo " Supported GUI: HILDON"
endif
+if BUILD_DUMP_GUI
+ @echo " Supported GUI: Dump"
+endif
if BUILD_ALP_GUI
@echo " Supported GUI: ALP/Hiker"
endif
Index: configure.ac
===================================================================
RCS file: /sources/gnash/gnash/configure.ac,v
retrieving revision 1.528
retrieving revision 1.529
diff -u -b -r1.528 -r1.529
--- configure.ac 1 May 2008 02:36:26 -0000 1.528
+++ configure.ac 1 May 2008 16:30:18 -0000 1.529
@@ -487,6 +487,7 @@
build_hildon=no
build_alp=no
build_qtopia=no
+build_dump=no
AC_ARG_ENABLE(gui,
AC_HELP_STRING([--enable-gui=], [Use the specified GUI toolkit
(default=gtk,kde)]),
if test -n ${enableval}; then
@@ -535,7 +536,11 @@
fb|FB)
build_fb=yes
;;
+ dump|DUMP)
+ build_dump=yes
+ ;;
all|ALL)
+ build_dump=yes
build_fb=yes
build_fltk=yes
build_kde=yes
@@ -546,7 +551,7 @@
dnl build_alp=yes
dnl build_riscos=yes
;;
- *) AC_MSG_ERROR([invalid gui ${enableval} given (accept:
gtk|kde|fltk|sdl|riscos|aqua|fb|hildon|alp|qtopia)])
+ *) AC_MSG_ERROR([invalid gui ${enableval} given (accept:
gtk|kde|fltk|sdl|riscos|aqua|fb|hildon|alp|qtopia|dump)])
;;
esac]
enableval=`echo ${enableval} | cut -d ' ' -f 2-6`
@@ -612,6 +617,9 @@
if test x$build_fltk = xyes; then
AC_MSG_ERROR([OpenGL renderer is not supported by FLTK gui. Use
--enable-renderer=AGG]);
fi
+ if test x$build_dump = xyes; then
+ AC_MSG_ERROR([OpenGL renderer is not supported by Dump gui. Use
--enable-renderer=AGG]);
+ fi
AC_DEFINE([RENDERER_OPENGL], [], [Use OpenGL renderer])
fi
@@ -1269,6 +1277,9 @@
AC_CHECK_HEADERS(libgen.h)
AC_CHECK_HEADERS(pwd.h)
AC_CHECK_HEADERS(sys/utsname.h)
+AC_CHECK_HEADERS(signal.h)
+AC_CHECK_HEADERS(unistd.h)
+AC_CHECK_HEADERS(sys/time.h)
AC_CHECK_LIB(lber, der_free)
AC_CHECK_LIB(m, sqrt)
AC_CHECK_LIB(c, getpwnam, AC_DEFINE(HAVE_GETPWNAM, 1, [Has getpwnam] ))
@@ -1604,6 +1615,7 @@
AM_CONDITIONAL(BUILD_FB_GUI, [ test x$build_fb = xyes ])
AM_CONDITIONAL(BUILD_AQUA_GUI, [ test x$build_aqua = xyes ])
AM_CONDITIONAL(BUILD_RISCOS_GUI, [ test x$build_riscos = xyes ])
+AM_CONDITIONAL(BUILD_DUMP_GUI, [ test x$build_dump = xyes ])
# plugin building flags
AM_CONDITIONAL(NSAPI, [test x$nsapi = xyes])
@@ -1755,6 +1767,9 @@
if test x$build_kde = xyes; then
AC_MSG_ERROR([Cairo renderer is not supported by KDE gui. Use
--enable-renderer=AGG]);
fi
+ if test x$build_dump = xyes; then
+ AC_MSG_ERROR([Cairo renderer is not supported by Dump gui. Use
--enable-renderer=AGG]);
+ fi
AC_DEFINE([RENDERER_CAIRO], [], [Use cairo renderer])
fi
@@ -2033,6 +2048,9 @@
if test x$build_aqua = xyes; then
SUPPORTED_GUIS="${SUPPORTED_GUIS},aqua"
fi
+if test x$build_dump = xyes; then
+ SUPPORTED_GUIS="${SUPPORTED_GUIS},dump"
+fi
SUPPORTED_GUIS="`echo ${SUPPORTED_GUIS} | sed 's/,//'`" # Strip leading comma
AC_SUBST(SUPPORTED_GUIS)
Index: gui/dump.cpp
===================================================================
RCS file: gui/dump.cpp
diff -N gui/dump.cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gui/dump.cpp 1 May 2008 16:30:19 -0000 1.1
@@ -0,0 +1,351 @@
+// dump.cpp: headless player that dumps a video and audio stream
+//
+// Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+// This "gui" is actually a file dumper. It will write the raw rendered frames
+// to a file. It will not display anything on the screen, but it will print
out
+// information about the file to cout. This information is in a /bin/sh
sourceable
+// format to make it easy to script.
+
+#ifdef HAVE_CONFIG_H
+#include "gnashconfig.h"
+#endif
+
+#include "log.h"
+
+#include "gui.h"
+#include "rc.h"
+#include "sound_handler.h"
+#include "gnash.h" // for get_sound_handler
+#include "render_handler.h"
+#include "VM.h"
+
+#include <iostream>
+#include <string>
+
+#ifndef RENDERER_AGG
+#error Dump gui requires AGG renderer
+#endif
+
+#ifndef HAVE_UNISTD_H
+#error Dump gui requires unistd.h header (POSIX)
+#endif
+
+#ifndef HAVE_SYS_TIME_H
+#error Dump gui requires sys/time.h header (POSIX)
+#endif
+
+// For gettimeofday TODO: Use something better for main loop;
+// something that works on Windows?
+#include <sys/time.h>
+#include <unistd.h>
+
+// Only include signal handlers on OS' that support it
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+
+#include "dump.h"
+#include "render_handler_agg.h"
+
+namespace gnash
+{
+
+bool _terminate_request = false; // signals need to be able to access...
+
+#ifdef HAVE_SIGNAL_H
+// Called on CTRL-C and alike
+void terminate_signal(int /*signo*/) {
+ _terminate_request = true;
+ signal(SIGINT, SIG_DFL);
+ signal(SIGTERM, SIG_DFL);
+}
+#endif
+
+DumpGui::DumpGui(unsigned long xid, float scale, bool loop, unsigned int
depth) :
+ Gui(xid, scale, loop, depth)
+{
+
+ _agg_renderer = NULL;
+ _offscreenbuf = NULL;
+ _offscreenbuf_size = -1;
+ _file_output = NULL;
+ _file_stream = NULL;
+ _timeout = 0;
+ _framecount = 0;
+ _bpp = 32; // TODO: Let user decide bits-per-pixel
+
+ // TODO: let user decide colorspace (see also _bpp above!)
+ strncpy(_pixelformat, "BGRA32", sizeof(_pixelformat));
+ if (loop) {
+ std::cout << "# WARNING: Gnash was told to loop the movie" <<
std::endl;
+ }
+ if (_xid) {
+ std::cout << "# WARNING: Ignoring request to display in X11 window"
<< std::endl;
+ }
+}
+
+DumpGui::~DumpGui()
+{
+ if (_offscreenbuf) {
+ free(_offscreenbuf);
+ _offscreenbuf=NULL;
+ }
+ if ((DumpGui::_file_stream != NULL) && (DumpGui::_file_stream->is_open()))
{
+ DumpGui::_file_stream->close();
+ std::cout << "# Finished writing file" << std::endl;
+ }
+ std::cout << "FRAMECOUNT=" << _framecount << "" << std::endl;
+}
+
+bool
+DumpGui::init(int argc, char **argv[])
+{
+
+ char c;
+ int origopterr = opterr;
+
+ if (_xid) {
+ log_error (_("Ignoring request to display in X11 window"));
+ }
+
+ optind = 0;
+ opterr = 0;
+ while ((c = getopt (argc, *argv, "D:")) != -1) {
+ if (c == 'D') {
+ _file_output = optarg;
+ }
+ }
+ opterr = origopterr;
+
+ if (_file_output == NULL) {
+ std::cout <<
+ _("# FATAL: No filename given with -D argument.") << std::endl;
+ return false;
+ }
+
+#ifdef HAVE_SIGNAL_H
+ signal(SIGINT, terminate_signal);
+ signal(SIGTERM, terminate_signal);
+#endif
+
+ init_dumpfile();
+ _agg_renderer = create_render_handler_agg(_pixelformat);
+ set_render_handler(_agg_renderer);
+
+ return true;
+}
+
+bool
+DumpGui::run()
+{
+
+ struct timeval tv;
+
+ // TODO: Polling is awful; should be an OS-agnostic u-sec callback
+ // timer system for C++ out there (boost?). This code is
+ // from the fb gui, and made a bit nicer by lengthening the
+ // usleep values with educated guesses. It's possible for
+ // slow systems to fall behind with this code, which would
+ // cause the audio stream to get out of sync (bad?).
+
+ double timer_start;
+ unsigned int sleep_usecs;
+
+ if (gettimeofday(&tv, NULL) == 0) {
+ timer_start = (double)tv.tv_sec + (double)tv.tv_usec / 1000000.0;
+ }
+ else {
+ log_error(_("Unable to call gettimeofday."));
+ return false;
+ }
+
+ _terminate_request = false;
+
+ // first frame
+ Gui::advance_movie(this);
+ writeFrame();
+
+ double timer_current = timer_start;
+ double timer_nextframe = timer_start;
+ double interval_s = (double)_interval / 1000.0;
+ double timer_exit = timer_start + ((double)_timeout / 1000.0);
+
+ while (!_terminate_request) {
+
+ timer_nextframe += interval_s;
+
+ // polling loop
+ while (timer_current < timer_nextframe) {
+ // sleep for 95% of remaining usecs, floored at 50
+ sleep_usecs = (int)((timer_nextframe - timer_current) * 950000.0);
+ usleep((sleep_usecs < 50) ? 50 : sleep_usecs);
+ if (gettimeofday(&tv, NULL) == 0) {
+ timer_current = (double)tv.tv_sec + (double)tv.tv_usec /
1000000.0;
+ } else {
+ log_error(_("Unable to call gettimeofday."));
+ return false;
+ }
+ }
+
+ // advance movie now
+ Gui::advance_movie(this);
+ writeFrame();
+
+ // check if we've reached a timeout
+ if (_timeout && (timer_current > timer_exit)) {
+ _terminate_request = true;
+ }
+ }
+
+ if ((timer_current - timer_start) != 0.0) {
+ std::cout << "TIME=" << (timer_current - timer_start) << std::endl;
+ std::cout << "FPS_ACTUAL=" <<
+ ((double)(_framecount-1) / (timer_current - timer_start)) <<
std::endl;
+ }
+ return true;
+}
+
+void
+DumpGui::setTimeout(unsigned int timeout)
+{
+ _timeout = timeout;
+}
+
+void
+DumpGui::setInterval(unsigned int interval)
+{
+ std::cout << "INTERVAL=" << interval << std::endl;
+ std::cout << "FPS_DESIRED=" << (1000.0 / (double)interval) << std::endl;
+ _interval = interval;
+}
+
+bool
+DumpGui::createWindow(int width, int height)
+{
+
+ _width = width;
+ _height = height;
+ _validbounds.setTo(0, 0, _width-1, _height-1);
+ setRenderHandlerSize(_width, _height);
+ return true;
+}
+
+void
+DumpGui::writeFrame()
+{
+ assert(_file_stream != NULL);
+ if (_file_stream->is_open()) {
+ _file_stream->write((char*)_offscreenbuf, _offscreenbuf_size);
+ //_file_stream->flush();
+ _framecount++;
+ } else {
+ std::cout << _("# FATAL: Unable to write to closed output file.") <<
"" << std::endl;
+ log_error(_("Unable to write to closed output file."));
+ quit();
+ }
+}
+
+void
+DumpGui::init_dumpfile()
+{
+ if (_file_output == NULL) {
+ log_error(_("Please supply a dump filename for gnash-dump."));
+ exit(1);
+ } else {
+ _file_stream = new std::ofstream();
+ _file_stream->open(_file_output);
+ if (_file_stream->fail()) {
+ log_error(_("Unable to write file '%s'."), _file_output);
+ std::cout << "# FATAL: Unable to write file '" << _file_output <<
"'" << std::endl;
+ exit(1);
+ } else {
+ // Yes, this should go to cout. The user needs to know this
+ // information in order to process the file. Print out in a
+ // format that is easy to source into shell.
+ std::cout <<
+ "# Gnash created a raw dump file with the following
properties:" << std::endl <<
+ "COLORSPACE=" << _pixelformat << std::endl <<
+ "NAME=" << _file_output << std::endl;
+ }
+ }
+}
+
+void
+DumpGui::setRenderHandlerSize(int width, int height)
+{
+ assert(width>0);
+ assert(height>0);
+ assert(_agg_renderer!=NULL);
+
+ if ((_offscreenbuf != NULL) && (width == _width) && (height == _height))
+ return;
+
+ _width = width;
+ _height = height;
+ std::cout << "WIDTH=" << _width << std::endl <<
+ "HEIGHT=" << _height << std::endl;
+ if (_offscreenbuf) {
+ free(_offscreenbuf);
+ _offscreenbuf = NULL;
+ }
+
+ int row_size = width*((_bpp+7)/8);
+ int new_bufsize = row_size * height;
+
+ // TODO: At the moment we only increase the buffer and never decrease it.
Should be
+ // changed sometime; movies which change the stage size will probably cause
+ // all sorts of havok with raw data, but that's not our problem...
+ if (new_bufsize > _offscreenbuf_size) {
+ // TODO: C++ conform alternative to realloc?
+ _offscreenbuf = static_cast<unsigned char *>( realloc(_offscreenbuf,
new_bufsize) );
+ if (!_offscreenbuf) {
+ log_debug("Could not allocate %i bytes for offscreen buffer: %s",
+ new_bufsize, strerror(errno)
+ );
+ return;
+ }
+
+ log_debug("DUMP-AGG: %i bytes offscreen buffer allocated",
new_bufsize);
+
+ _offscreenbuf_size = new_bufsize;
+ memset(_offscreenbuf, 0, new_bufsize);
+ }
+
+ static_cast<render_handler_agg_base *> (_agg_renderer)->init_buffer
+ (_offscreenbuf,
+ _offscreenbuf_size,
+ _width,
+ _height,
+ row_size
+ );
+}
+
+void
+DumpGui::beforeRendering()
+{
+}
+
+void
+DumpGui::quit()
+{
+ _terminate_request = true;
+}
+
+} // end of namespace gnash
+
Index: gui/dump.h
===================================================================
RCS file: gui/dump.h
diff -N gui/dump.h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gui/dump.h 1 May 2008 16:30:19 -0000 1.1
@@ -0,0 +1,82 @@
+//
+// Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+#ifndef __DUMP_H__
+#define __DUMP_H__
+
+#ifdef HAVE_CONFIG_H
+#include "gnashconfig.h"
+#endif
+
+#include "gnash.h"
+#include "tu_config.h" // for DSOEXPORT
+
+namespace gnash
+{
+
+typedef bool (*callback_t)(void*, int, void *data);
+
+class DSOEXPORT DumpGui : public Gui
+{
+ public:
+ DumpGui(unsigned long xid, float scale, bool loop, unsigned int depth);
+ ~DumpGui();
+ void beforeRendering();
+ bool createMenu() { return true; }
+ bool createMenuBar() { return true; }
+ bool createWindow(int width, int height);
+ bool createWindow(const char* /*title*/, int width, int height)
+ { return createWindow(width, height); }
+ bool init(int argc, char **argv[]);
+ void quit();
+ void renderBuffer() {return; }
+ void render() { return; }
+ void render(int /*minx*/, int /*miny*/, int /*maxx*/, int /*maxy*/)
+ { render(); }
+ bool run();
+ void setInterval(unsigned int interval);
+ void setTimeout(unsigned int timeout);
+ bool setupEvents() { return true; }
+ void setFullscreen() { return; }
+ void setInvalidatedRegion(const rect& /*bounds*/) { return; }
+ void setInvalidatedRegions(const InvalidatedRanges& /*ranges*/) { return; }
+ void setCursor(gnash_cursor_type /*newcursor*/) { return; }
+ void setRenderHandlerSize(int width, int height);
+ void unsetFullscreen() { return; }
+ bool want_multiple_regions() { return true; }
+ bool want_redraw() { return false; }
+ void writeFrame();
+
+ private:
+ unsigned int _bpp; /* bits per pixel */
+ char _pixelformat[16]; /* colorspace name (eg, "RGB24") */
+ char* _file_output; /* path to output file */
+ std::ofstream* _file_stream; /* stream for output file */
+ unsigned int _timeout; /* maximum length of movie */
+ unsigned int _framecount; /* number of frames rendered */
+ void init_dumpfile(); /* convenience method to create dump
file */
+ render_handler *_agg_renderer; /* pointer to AGG renderer */
+ unsigned char *_offscreenbuf; /* our "window" */
+ int _offscreenbuf_size; /* size of window (bytes) */
+
+};
+
+// end of namespace gnash
+}
+
+// end of __DUMP_H__
+#endif
Index: gui/gui_dump.cpp
===================================================================
RCS file: gui/gui_dump.cpp
diff -N gui/gui_dump.cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gui/gui_dump.cpp 1 May 2008 16:30:20 -0000 1.1
@@ -0,0 +1,46 @@
+// gui_gtk.cpp: Wrapper for Gnome ToolKit graphical user interface, for Gnash.
+//
+// Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+//
+
+#ifdef HAVE_CONFIG_H
+#include "gnashconfig.h"
+#endif
+
+#include "gui.h"
+#include "GnashException.h"
+
+#ifdef GUI_DUMP
+#include "dump.h"
+#endif
+
+namespace gnash {
+
+#ifdef GUI_DUMP
+std::auto_ptr<Gui> createDumpGui(unsigned long windowid, float scale, bool
do_loop, unsigned int bit_depth)
+{
+ return std::auto_ptr<Gui>(new DumpGui(windowid, scale, do_loop,
bit_depth));
+}
+#else // ! GUI_DUMP
+std::auto_ptr<Gui> createDumpGui(unsigned long , float , bool , unsigned int )
+{
+ throw GnashException("Support for DUMP gui was not compiled in");
+}
+#endif // ! GUI_DUMP
+
+} // namespace gnash
+
Index: gui/am-frag/dump.am
===================================================================
RCS file: gui/am-frag/dump.am
diff -N gui/am-frag/dump.am
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gui/am-frag/dump.am 1 May 2008 16:30:21 -0000 1.1
@@ -0,0 +1,31 @@
+#
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+#
+
+#
+# Build the DUMP gui
+#
+if BUILD_DUMP_GUI
+if BUILD_AGG_RENDERER
+bin_PROGRAMS += dump-gnash
+dump_gnash_SOURCES = $(GUI_SRCS) gui_dump.cpp dump.cpp dump.h
+dump_gnash_CPPFLAGS = -DGUI_DUMP -DGUI_CONFIG=\"DUMP\" \
+ $(AM_CPPFLAGS) $(DUMP_CFLAGS) $(AGG_CFLAGS)
+dump_gnash_LDFLAGS = $(LIBLTDL) -export-dynamic $(AM_LDFLAGS) \
+ $(top_builddir)/backend/libgnashagg.la \
+ $(GNASH_LIBS) $(DUMP_LIBS) $(AGG_LIBS) $(CAIRO_LIBS)
+endif # BUILD_AGG_RENDERER
+endif # BUILD_DUMP_GUI
- [Gnash-commit] gnash ChangeLog Makefile.am configure.ac gui/du...,
Russ Nelson <=