• Sam Hocevar's avatar
    · cc0f0bb6
    Sam Hocevar authored
    Some heavy changes today:
      * Removed duplicate function checks from configure.in.
      * Added extra magic to Makefile.modules so that the module Makefiles
        are now ridiculously simple. And I mean *simple*. Check it! This will
        make a possible switch to full autoconf/automake a lot easier.
      * Added the vlc version name to the plugin symbols, to be sure we only load
        plugins with the same version number. A nasty consequence is that you
        need to rebuild your tree after midnight if you are using a CVS tree :-)
      * Got rid of modules_export.h by #defining exported functions in the same
        header as their prototype.
      * Added modules_inner.h and other commonly used .h files to common.h so
        there are less and less files to include, and renamed common.h to
        <videolan/vlc.h>.
      * First modifications to the module handling system towards my ultimate
        goal to get rid of the *_Probe functions. Got rid of TestMethod and
        TestCPU, as well as src/misc/tests.c.
      * Wrote the chroma plugin handling functions. No YUV functions have been
        ported yet because it'ls a lot of work, but the core system works, I
        tried it with a naive yv12->rgb16 plugin (which will disappear when the
        real functions are ready).
      * Made a lot of functions in dvd_summary.c one-liners to avoid wasting
        too many output lines.
      * Fixed a segfault in input_dvd.c:DVDInit.
      * Added a fixfiles.sh script in plugins/gtk to be run after Glade has
        generated its C files.
      * Did some work on the KDE interface to make it suck a bit less. It still
        segfaults, but at least it runs and it looks less ugly.
      * RGB SDL rendering works again, though in 16bpp only.
      * Made plugins/vcd/linux_cdrom_tools.c independent of any vlc structure
        so that it'll be easily put in a library. Maybe libdvdcss?
      * Fixed VCD date display.
      * Merged vout_xvideo.c, vout_x11.c and vout_common.c into xcommon.c.
      * Wrote non-Shm XVideo output.
      * Made X11 output work again. Still pretty unstable, only works for 16bpp.
      * Additional french translation in po/fr.po. Any taker for the rest?
      * Fixed a segfault in video_output.c when the allocated pictures were
        not direct buffers.
      * If $DISPLAY isn't set, don't try to run the Gtk+ interface.
      * Replaced 48x48 .xpm images with 32x32 ones to conform to Debian policy
        (Closes Debian bug #126939).
      * Removed the automatic ./configure launch when running `make all' for
        the first time.
    
    Stuff currently more broken than it ought to be:
      * The wall filter. Being fixed.
      * x11 and sdl plugins for depth != 16bpp.
      * Software YUV.
      * gvlc, gnome-vlc, kvlc shortcuts. Use --intf instead for the moment.
    cc0f0bb6
Makefile.dep 2.77 KB
################################################################################
# vlc (VideoLAN Client) dependencies makefile
# (c)1998 VideoLAN
################################################################################
# This Makefile is dedicated to build of .d files. It should not be called
# directly by user, but only through main Makefile.
################################################################################

###############################################################################
# Note on generic rules and dependencies
###############################################################################

# Note on dependencies: each .c file is associated with a .d file, which
# depends of it. The .o file associated with a .c file depends of the .d, of the
# .c itself, and of Makefile. The .d files are stored in a separate .dep/
# directory.
# The dep directory should be ignored by CVS.

# Note on inclusions: depending of the target, the dependencies files must
# or must not be included. The problem is that if we ask make to include a file,
# and this file does not exist, it is made before it can be included. In a
# general way, a .d file should be included if and only if the corresponding .o
# needs to be re-made.

# The object Makefile knows how to make a .o from a .c, and includes
# dependencies for the target, but only those required.

# All settings and options are passed through main Makefile

################################################################################
# Default target
################################################################################

default:
	@echo "This Makefile should not be called directly,"
	@echo "see notes at end of main Makefile."

################################################################################
# Dependencies creation
################################################################################

# A dependencies file needs to be rebuilt if the .c  changed or if one of the 
# dependencies files have been changed. In other words, it depends from the
# .c and from itself.

-include $(MAKECMDGOALS)

CFLAGS += -DMAKE_DEP

$(C_DEP): .dep/%.d: %.c
	@test -d .dep/$(dir $*) || mkdir -p $(shell dirname .dep/$*)
	#@echo "regenerating dependencies for $*.c"
	@$(SHELL) -ec '$(CC) $(DCFLAGS) $(CFLAGS) $(DEFINE) 2>/dev/null $< \
	| sed '\''s/$(subst .,\.,$(notdir $*))\.o[ :]*/$(subst /,\/,$*).o \
	.dep\/$(subst /,\/,$*).d : /g'\'' > $@; \
	[ -s $@ ] || rm -f $@'

$(CPP_DEP): .dep/%.dpp: %.cpp
	@test -d .dep/$(dir $*) || mkdir -p $(shell dirname .dep/$*)
	#@echo "regenerating dependencies for $*.c"
	@$(SHELL) -ec '$(CC) $(DCFLAGS) $(CFLAGS) $(DEFINE) 2>/dev/null $< \
	| sed '\''s/$(subst .,\.,$(notdir $*))\.o[ :]*/$(subst /,\/,$*).o \
	.dep\/$(subst /,\/,$*).dpp : /g'\'' > $@; \
	[ -s $@ ] || rm -f $@'