---

Now without obvious bugs, but still in need of a bit more work IMO.
Naming is still suboptimal and I think surrounding refactoring is
needed to integrate this more cleanly.

 Makefile  |   17 +++++++++++++----
 configure |   11 ++++++++++-
 2 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/Makefile b/Makefile
index 906bd86..cd00797 100644
--- a/Makefile
+++ b/Makefile
@@ -56,6 +56,12 @@ COMPILE_S = $(call COMPILE,AS)
 
 %.c %.h: TAG = GEN
 
+DOC_EXAMPLES-$(CONFIG_MP3_AAC) += doc/examples/mp3_aac
+ALL_DOC_EXAMPLES += doc/examples/mp3_aac
+
+DOC_EXAMPLES := $(DOC_EXAMPLES-yes:%=%$(EXESUF))
+$(DOC_EXAMPLES:%=%.o): | doc/examples
+
 PROGS-$(CONFIG_AVCONV)   += avconv
 PROGS-$(CONFIG_AVPLAY)   += avplay
 PROGS-$(CONFIG_AVPROBE)  += avprobe
@@ -94,6 +100,8 @@ FF_DEP_LIBS  := $(DEP_LIBS)
 
 all: $(PROGS)
 
+examples: $(DOC_EXAMPLES)
+
 $(TOOLS): %$(EXESUF): %.o $(EXEOBJS)
        $(LD) $(LDFLAGS) $(LD_O) $^ $(ELIBS)
 
@@ -136,12 +144,12 @@ $(1)$(EXESUF): FF_EXTRALIBS += $(LIBS-$(1))
 -include $$(OBJS-$(1):.o=.d)
 endef
 
-$(foreach P,$(PROGS-yes),$(eval $(call DOPROG,$(P))))
+$(foreach P,$(DOC_EXAMPLES-yes) $(PROGS-yes),$(eval $(call DOPROG,$(P))))
 
-$(PROGS): %$(EXESUF): %.o $(FF_DEP_LIBS)
+$(DOC_EXAMPLES) $(PROGS): %$(EXESUF): %.o $(FF_DEP_LIBS)
        $(LD) $(LDFLAGS) $(LD_O) $(OBJS-$*) $(FF_EXTRALIBS)
 
-OBJDIRS += tools
+OBJDIRS += doc/examples tools
 
 -include $(wildcard tools/*.d)
 
@@ -186,8 +194,9 @@ uninstall-data:
        $(RM) -r "$(DATADIR)"
 
 clean::
-       $(RM) $(ALLPROGS)
+       $(RM) $(ALLPROGS) $(ALL_DOC_EXAMPLES)
        $(RM) $(CLEANSUFFIXES)
+       $(RM) $(CLEANSUFFIXES:%=doc/examples/%)
        $(RM) $(CLEANSUFFIXES:%=tools/%)
        $(RM) -rf coverage.info lcov
 
diff --git a/configure b/configure
index 664fe94..2778255 100755
--- a/configure
+++ b/configure
@@ -1041,6 +1041,10 @@ COMPONENT_LIST="
     protocols
 "
 
+EXAMPLE_LIST="
+    mp3_aac
+"
+
 EXTERNAL_LIBRARY_LIST="
     avisynth
     bzlib
@@ -1102,6 +1106,7 @@ PROGRAM_LIST="
 
 CONFIG_LIST="
     $COMPONENT_LIST
+    $EXAMPLE_LIST
     $EXTERNAL_LIBRARY_LIST
     $HWACCEL_LIST
     $LIBRARY_LIST
@@ -1960,6 +1965,10 @@ avserver_deps="avformat fork !shared"
 avserver_select="ffm_muxer rtp_protocol rtsp_demuxer"
 avserver_extralibs='$ldl'
 
+# examples
+
+mp3_aac_deps="avcodec avformat avresample"
+
 doc_deps="texi2html"
 
 # default parameters
@@ -2000,7 +2009,7 @@ target_os_default=$(tolower $(uname -s))
 host_os=$target_os_default
 
 # configurable options
-enable $LIBRARY_LIST $PROGRAM_LIST
+enable $EXAMPLE_LIST $LIBRARY_LIST $PROGRAM_LIST
 
 enable asm
 enable debug
-- 
1.7.9.5

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to