]> git.sesse.net Git - vlc/blobdiff - Makefile
* ./src/misc/objects.c: two big changes in the object API: now objects can
[vlc] / Makefile
index f883bdaab22462b78c6c49fd6d5a839109e2e80b..bef5e835a6527a07cb1fabc7d331d94564a1e32d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -20,9 +20,9 @@ VLC := vlc
 LIBVLC := libvlc
 INTERFACE := interface intf_eject
 PLAYLIST := playlist
-INPUT := input input_ext-plugins input_ext-dec input_ext-intf input_dec input_programs input_clock mpeg_system input_info
+INPUT := input input_ext-plugins input_ext-dec input_ext-intf input_dec input_programs input_clock input_info
 VIDEO_OUTPUT := video_output video_text vout_pictures vout_subpictures
-AUDIO_OUTPUT := audio_output aout_ext-dec aout_pcm aout_spdif
+AUDIO_OUTPUT := audio_output filters input mixer output
 MISC := mtime modules threads cpu configuration netutils iso_lang messages objects extras
 
 LIBVLC_OBJ :=  $(LIBVLC:%=src/%.o) \
@@ -135,7 +135,7 @@ po-clean:
        -cd po && $(MAKE) clean
 
 plugins-clean:
-       for dir in $(shell echo $(PLUGIN_OBJ) $(BUILTIN_OBJ) | sed 's@\([^ ]*\)/[^ ]*@\1@g' ) ; do ( PWD=`pwd` ; cd $${dir} && $(MAKE) -f $$PWD/Makefile.modules clean ) ; done
+       for dir in $(shell echo $(PLUGIN_OBJ) $(BUILTIN_OBJ) | sed 's@\([^ ]*\)/[^ ]*@\1@g' ) ; do ( PARENT=`pwd` ; cd $${dir} && $(MAKE) -f $$PARENT/Makefile.modules clean PARENT=$$PARENT ) ; done
 
 vlc-clean:
        rm -f $(C_OBJ) $(CPP_OBJ)
@@ -148,7 +148,7 @@ mozilla-clean:
 distclean: clean
        -cd po && $(MAKE) maintainer-clean
        rm -f **/*.o **/*~ *.log
-       rm -f Makefile.opts Makefile.config
+       rm -f Makefile.opts Makefile.config vlc-config
        rm -f include/defs.h include/modules_builtin.h
        rm -f src/misc/modules_builtin.h
        rm -f config*status config*cache config*log conftest*
@@ -182,15 +182,22 @@ endif
        rm -f $(DESTDIR)$(datadir)/vlc/*.psf
        rm -f $(DESTDIR)$(datadir)/vlc/*.png
        rm -f $(DESTDIR)$(datadir)/vlc/*.xpm
+       -rmdir $(DESTDIR)$(datadir)/vlc
 
 plugins-install:
        mkdir -p $(DESTDIR)$(libdir)/vlc
 ifneq (,$(PLUGINS))
-       $(INSTALL) $(PLUGINS:%=modules/%.so) $(DESTDIR)$(libdir)/vlc
+       for plugin in $(PLUGINS) ; \
+               do dir=`echo $$plugin | sed -e 's@/[^ ]*@@g'` ; \
+               mkdir -p $(DESTDIR)$(libdir)/vlc/$$dir ; \
+               cp modules/$${plugin}.so $(DESTDIR)$(libdir)/vlc/$$dir ; \
+       done
 endif
 
 plugins-uninstall:
-       rm -f $(DESTDIR)$(libdir)/vlc/*.so
+       rm -f $(DESTDIR)$(libdir)/vlc/*/*.so
+       -rmdir $(DESTDIR)$(libdir)/vlc/*
+       -rmdir $(DESTDIR)$(libdir)/vlc
 
 builtins-install:
        mkdir -p $(DESTDIR)$(libdir)/vlc
@@ -200,6 +207,7 @@ endif
 
 builtins-uninstall:
        rm -f $(DESTDIR)$(libdir)/vlc/*.a
+       -rmdir $(DESTDIR)$(libdir)/vlc
 
 libvlc-install:
        mkdir -p $(DESTDIR)$(bindir)
@@ -310,12 +318,17 @@ package-win32:
        for file in AUTHORS COPYING ChangeLog README FAQ TODO ; \
                        do cp $$file tmp/$${file}.txt ; \
                        unix2dos tmp/$${file}.txt ; done
-       mkdir tmp/modules
-       cp $(PLUGINS:%=modules/%.so) tmp/modules/ 
-       # don't include these two
-       #rm -f tmp/modules/gtk.so tmp/modules/sdl.so
+       mkdir tmp/plugins
 ifneq (,$(PLUGINS))
-       for i in $(PLUGINS) ; do if test $$i != intfwin ; then $(STRIP) tmp/modules/$$i.so ; fi ; done
+       for i in $(PLUGINS) ; do \
+               DIR=`echo $$i | cut -f1 -d/` ; \
+               mkdir -p tmp/plugins/$$DIR ; \
+               cp modules/$$i.so tmp/plugins/$$DIR ; \
+               if test $$i != gui/win32/win32 ; then \
+                       $(STRIP) \
+                       tmp/plugins/$$DIR/`echo $$i | sed -e 's@.*/@@'`.so ; \
+               fi ; \
+       done
 endif
        mkdir tmp/share
        for file in default8x16.psf default8x9.psf ; \
@@ -402,7 +415,7 @@ src/misc/modules_builtin.h: Makefile.opts Makefile Makefile.config
        @rm -f $@ && cp $@.in $@
 ifneq (,$(BUILTINS))
        @for i in $(BUILTINS) ; do \
-               echo "int vlc_entry__"`basename $$i`"( module_t* );" >>$@; \
+               echo "int vlc_entry__modules_"`echo $$i | sed -e 'y@/@_@' -e 's@\..*@@'`"( module_t* );" >>$@; \
        done
        @echo "" >> $@ ;
 endif
@@ -411,7 +424,7 @@ endif
        @echo "    { \\" >> $@ ;
 ifneq (,$(BUILTINS))
        @for i in $(BUILTINS) ; do \
-               echo "        ALLOCATE_BUILTIN("`basename $$i`"); \\" >> $@ ; \
+               echo "        ALLOCATE_BUILTIN(modules_"`echo $$i | sed -e 'y@/@_@' -e 's@\..*@@'`"); \\" >> $@ ; \
        done
 endif
        @echo "    } while( 0 );" >> $@ ;
@@ -476,7 +489,7 @@ builtins: Makefile.modules Makefile.opts Makefile.dep Makefile $(BUILTIN_OBJ)
 plugins: Makefile.modules Makefile.opts Makefile.dep Makefile $(PLUGIN_OBJ)
 
 modules/%.a modules/%.so: $(H_OBJ) FORCE
-       @cd $(shell echo $@ | sed -e 's@\(.*\)/.*@\1@') && $(MAKE) -f $(shell echo $@ | sed -e 's@[^/]*/@../@g' -e 's@\(.*\)/.*@\1@')/Makefile.modules $(shell echo $@ | sed -e 's@.*/@@') PARENT=$(shell echo $@ | sed -e 's@[^/]*/@../@g' -e 's@\(.*\)/.*@\1@')
+       cd $(shell echo $@ | sed -e 's@\(.*\)/.*@\1@') && $(MAKE) -f $(shell echo $@ | sed -e 's@[^/]*/@../@g' -e 's@\(.*\)/.*@\1@')/Makefile.modules $(shell echo $@ | sed -e 's@.*/@@') PARENT=$(shell echo $@ | sed -e 's@[^/]*/@../@g' -e 's@\(.*\)/.*@\1@') MODULE_PATH=$(shell echo $@ | sed -e 'y@/@_@' -e 's@\..*@@')
 
 #
 # Mozilla plugin target