From 884bfabe2789a8189f9cc8f1e4b537f559633e99 Mon Sep 17 00:00:00 2001 From: Christophe Massiot Date: Sat, 18 Nov 2000 03:15:01 +0000 Subject: [PATCH] * Added --enable-debug, --enable-stats and --disable-optims (sam could you check I did'nt make a mess of it ?). * Added todo things in the TODO file. --- ChangeLog | 4 ++-- Makefile.in | 22 ++++++++++--------- TODO | 51 +++++++++++++++++++++++++++++++++++++++++++-- configure | 30 ++++++++++++++++++++++++++ configure.in | 15 +++++++++++++ include/config.h.in | 2 +- 6 files changed, 109 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 94ff0037ac..eb8c109718 100644 --- a/ChangeLog +++ b/ChangeLog @@ -9,14 +9,14 @@ * Added --broadcast option for network input. * Screen is now emptied when framebuffer output exits. * Totally new frame dropping algorithm. - * Fixed a bug in video_ouput.c which made the stream go backwards - sometimes. * Fixed a bug in video_ouput.c which trashed more late pictures than necessary. * Fixed the DEBUG mode in the Makefile. * Fixed a bug in mwait() which made us wait too long. * The video_decoder can now be split into several threads to take advantage of the SMP machines. + * Added --enable-debug, --enable-stats, and --disable-optims in the + GNU configure stuff. Mon, 28 Aug 2000 02:34:18 +0200 0.1.99i : diff --git a/Makefile.in b/Makefile.in index d867a08708..fc1a9d2b6e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -10,7 +10,9 @@ ################################################################################ # Debugging mode on or off (set to 1 to activate) -DEBUG=0 +DEBUG=@DEBUG@ +STATS=@STATS@ +OPTIMS=@OPTIMS@ SYS=@SYS@ PLUGINS=@PLUGINS@ @@ -29,7 +31,11 @@ prefix=@prefix@ PROGRAM_OPTIONS = $(SYS) $(ARCH) ifeq ($(DEBUG),1) PROGRAM_OPTIONS += DEBUG -DEFINE += -DDEBUG -g +DEFINE += -DDEBUG +endif +ifeq ($(STATS),1) +PROGRAM_OPTIONS += DEBUG +DEFINE += -DSTATS endif # PROGRAM_BUILD is a complete identification of the build @@ -90,7 +96,7 @@ CFLAGS += -Wno-multichar -Wno-ctor-dtor-privacy -Woverloaded-virtual endif # Optimizations : don't compile debug versions with them -ifeq ($(DEBUG),0) +ifeq ($(OPTIMS),1) CFLAGS += -O6 CFLAGS += -ffast-math -funroll-loops -fargument-noalias-global CFLAGS += -fomit-frame-pointer @@ -98,7 +104,7 @@ CFLAGS += -fomit-frame-pointer # Optimizations for x86 familiy ifneq (,$(findstring 86,$(ARCH))) CFLAGS += -malign-double -# Eventual Pentium Pro optimizations +# Optional Pentium Pro optimizations ifneq (,$(findstring ppro,$(ARCH))) ifneq ($(SYS), BSD) CFLAGS += -march=pentiumpro @@ -126,7 +132,7 @@ endif # /debug endif -# Eventual MMX optimizations for x86 +# Optional MMX optimizations for x86 ifneq (,$(findstring mmx,$(ARCH))) CFLAGS += -DHAVE_MMX endif @@ -151,12 +157,8 @@ LCFLAGS += -Wall # # Debugging and profiling support -ifneq ($(DEBUG),0) -ifeq ($(SYS),beos) +ifneq ($(OPTIMS),0) CFLAGS += -g -else -CFLAGS += -pg -endif endif ################################################################################# diff --git a/TODO b/TODO index 3d1836cc6b..954f1e21dd 100644 --- a/TODO +++ b/TODO @@ -7,6 +7,53 @@ # # Urgency values: Wishlist, Normal, Important, Critical +Task: 0x3e +Difficulty: Guru +Urgency: Critical +Description: Fix backwards moves + Sometimes the frames seem to go backwards for a short period of + time. This is due to the output methods and is known to happen + with the x11 and SDL plugins. +Status: Todo + +Task: 0x3d +Difficulty: Easy +Urgency: Normal +Description: Have more statistics messages displayed + The vlc has structures to keep track of the interesting + events, but there is no way to print these structures. In stats + mode, we should print these structures regularly, or at quit + time (whichever is the more convenient). +Status: Todo + +Task: 0x3c +Difficulty: Easy +Urgency: Important +Description: Separate optimizations from debug mode + We sometimes want to have the debug mode (which writes an + interesting log of debug messages) along with the compiler + optimizations (which allow decoding of more than 2 fps). +Status: Done 18 Nov 2000 (Meuuh) + +Task: 0x3b +Difficulty: Easy +Urgency: Important +Description: Write intf_WarnMsg and intf_StatMsg + We have intf_ErrMsg to display fatal errors, but warnings are + drowned in an ocean of unreadable intf_DbgMsg. Same for + statistics messages. +Status: Todo + +Task: 0x3a +Difficulty: Hard +Urgency: Important +Description: Support SDL Overlay + The SDL livrary has routines to use the video board to do the YUV + conversion, scaling and displaying. Using them will require a + partial rewrite of the video_output way of handling rendering + and displaying. +Status: Todo + Task: 0x39 Difficulty: Medium Urgency: Wishlist @@ -368,7 +415,7 @@ Description: Fix synchro is not smart enough on fast machines and does not detect when it has enough time for a frame. Perhaps a better handling of the dates might help. -Status: Todo +Status: Done 13 Nov 2000 (Meuuh) Task: 0x0b Difficulty: Medium @@ -419,7 +466,7 @@ Urgency: Critical Description: Fix VDEC_SMP segfaults When compiled to support SMP, the vlc segfaults. The synchro code lacks locks, but there might be bugs elsewhere as well. -Status: Todo +Status: Done 16 Nov 2000 (Meuuh) Task: 0x06 Difficulty: Guru diff --git a/configure b/configure index 95544453cf..a7d641f8e0 100755 --- a/configure +++ b/configure @@ -11,6 +11,12 @@ ac_help= ac_default_prefix=/usr/local # Any additions from configure.in: +ac_help="$ac_help + --enable-debug Enable debug mode (default is no)" +ac_help="$ac_help + --enable-stats Enable printing of statistics (default is yes)" +ac_help="$ac_help + --disable-optimizations Disable compiler optimizations (default enabled)" ac_help="$ac_help --enable-ppro Enable PentiumPro optimizations (default is no)" ac_help="$ac_help @@ -3062,6 +3068,24 @@ if test "${enable_mmx+set}" = set; then if test x`echo $ARCH | cut -b3-4` = x86 ; then if test x$enableval = xyes; then ARCH=${ARCH}" mmx"; PLUGINS=${PLUGINS}"yuvmmx "; fi; fi fi +# Check whether --enable-debug or --disable-debug was given. +if test "${enable_debug+set}" = set; then + enableval="$enable_debug" + if test x$enableval = xyes; then DEBUG=1; fi +fi + +# Check whether --enable-stats or --disable-stats was given. +if test "${enable_stats+set}" = set; then + enableval="$enable_stats" +fi +if test x$enable_stats != xno; then STATS=1; fi + +# Check whether --enable-optims or --disable-optims was given. +if test "${enable_optims+set}" = set; then + enableval="$enable_optims" +fi +if test x$enable_optims != xno; then OPTIMS=1; fi + SYS=${host_os} @@ -3287,6 +3311,9 @@ s%@SYS@%$SYS%g s%@ARCH@%$ARCH%g s%@PLUGINS@%$PLUGINS%g s%@ALIASES@%$ALIASES%g +s%@DEBUG@%$DEBUG%g +s%@STATS@%$STATS%g +s%@OPTIMS@%$OPTIMS%g CEOF EOF @@ -3513,6 +3540,9 @@ vlc configuration vlc version : ${VLC_VERSION} system : ${SYS} architecture : ${ARCH} +debug mode : ${DEBUG} +statistics : ${STATS} +optimizations : ${OPTIMS} plugins : ${PLUGINS} vlc aliases : ${ALIASES} " diff --git a/configure.in b/configure.in index 615a9041ad..1e6ee23b98 100644 --- a/configure.in +++ b/configure.in @@ -72,6 +72,15 @@ AC_ARG_ENABLE(ppro, AC_ARG_ENABLE(mmx, [ --enable-mmx Enable MMX optimizations (default is no)], [ if test x`echo $ARCH | cut -b3-4` = x86 ; then if test x$enableval = xyes; then ARCH=${ARCH}" mmx"; PLUGINS=${PLUGINS}"yuvmmx "; fi; fi ]) +AC_ARG_ENABLE(debug, +[ --enable-debug Enable debug mode (default is no)], +[ if test x$enableval = xyes; then DEBUG=1; fi ]) +AC_ARG_ENABLE(stats, +[ --enable-stats Enable printing of statistics (default is yes)], +[ if test x$enableval != xno; then STATS=1; fi ]) +AC_ARG_ENABLE(optimizations, +[ --enable-optimizations Enable compiler optimizations (default enabled)], +[ if test x$enableval != xno; then OPTIMS=1; fi ]) SYS=${host_os} @@ -116,6 +125,9 @@ AC_SUBST(SYS) AC_SUBST(ARCH) AC_SUBST(PLUGINS) AC_SUBST(ALIASES) +AC_SUBST(DEBUG) +AC_SUBST(STATS) +AC_SUBST(OPTIMS) AC_OUTPUT([Makefile include/config.h]) @@ -125,6 +137,9 @@ vlc configuration vlc version : ${VLC_VERSION} system : ${SYS} architecture : ${ARCH} +debug mode : ${DEBUG} +statistics : ${STATS} +optimizations : ${OPTIMS} plugins : ${PLUGINS} vlc aliases : ${ALIASES} " diff --git a/include/config.h.in b/include/config.h.in index 3400baa542..ffe2302f33 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -65,7 +65,7 @@ /* Define for profiling and statistics support - such informations, like FPS * or pictures count won't be available if it not set */ -#define STATS +/* #define STATS --moved in Makefile */ /* Define for unthreaded version of the program FIXME: not yet implemented ??*/ //#define NO_THREAD -- 2.39.2