Makefile 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. include Makefile.conf
  2. override CFLAGS += -std=c99 -D_GNU_SOURCE -DGST_DISABLE_DEPRECATED
  3. override CFLAGS += -DDSP_API=$(DSP_API) -DSN_API=$(SN_API)
  4. all:
  5. version := $(shell ./get-version)
  6. D = $(DESTDIR)
  7. tidsp.a: tidsp/td_mp4vdec.o tidsp/td_h264dec.o tidsp/td_wmvdec.o \
  8. tidsp/td_jpegdec.o \
  9. tidsp/td_mp4venc.o tidsp/td_jpegenc.o tidsp/td_h264enc.o \
  10. tidsp/td_vpp.o tidsp/td_aacdec.o
  11. tidsp.a: override CFLAGS += -I.
  12. # plugin
  13. gst_plugin := libgstdsp.so
  14. $(gst_plugin): plugin.o gstdspbuffer.o gstdspdummy.o gstdspbase.o gstdspvdec.o \
  15. gstdspvenc.o gstdsph263enc.o gstdspmp4venc.o gstdspjpegenc.o \
  16. dsp_bridge.o util.o log.o gstdspparse.o async_queue.o gstdsph264enc.o \
  17. gstdspvpp.o gstdspadec.o gstdspipp.o \
  18. tidsp.a
  19. $(gst_plugin): override CFLAGS += $(GST_CFLAGS) \
  20. -D VERSION='"$(version)"' -D DSPDIR='"$(dspdir)"'
  21. $(gst_plugin): override LIBS += $(GST_LIBS)
  22. targets += $(gst_plugin)
  23. gst-dsp-parse: parse-test.o gstdspbuffer.o gstdspparse.o gstdspvdec.o \
  24. gstdspbase.o util.o dsp_bridge.o async_queue.o log.o \
  25. tidsp.a
  26. gst-dsp-parse: override CFLAGS += $(GST_CFLAGS) -D DSPDIR='"$(dspdir)"'
  27. gst-dsp-parse: override LIBS += $(GST_LIBS)
  28. bins += gst-dsp-parse
  29. doc: $(gst_plugin)
  30. $(MAKE) -C doc
  31. doc-install: doc
  32. $(MAKE) -C doc install
  33. all: $(targets) $(bins)
  34. # pretty print
  35. ifndef V
  36. QUIET_CC = @echo ' CC '$@;
  37. QUIET_LINK = @echo ' LINK '$@;
  38. QUIET_CLEAN = @echo ' CLEAN '$@;
  39. endif
  40. .PHONY: doc doc-install
  41. %.so: override CFLAGS += -fPIC
  42. install: $(targets) $(bins)
  43. install -m 755 -D libgstdsp.so $(D)$(prefix)/lib/gstreamer-0.10/libgstdsp.so
  44. install -m 755 -D gst-dsp-parse $(D)$(prefix)/bin/gst-dsp-parse
  45. %.o:: %.c
  46. $(QUIET_CC)$(CC) $(CFLAGS) -MMD -MP -o $@ -c $<
  47. $(bins):
  48. $(QUIET_LINK)$(CC) $(LDFLAGS) $^ $(LIBS) -o $@
  49. %.so::
  50. $(QUIET_LINK)$(CC) $(LDFLAGS) -shared $^ $(LIBS) -o $@
  51. %.a::
  52. $(QUIET_LINK)$(AR) rcs $@ $^
  53. clean:
  54. $(QUIET_CLEAN)$(RM) -v $(targets) $(bins) *.o *.d tidsp/*.d tidsp/*.o
  55. dist: base := gst-dsp-$(version)
  56. dist:
  57. git archive --format=tar --prefix=$(base)/ HEAD > /tmp/$(base).tar
  58. mkdir -p $(base)
  59. echo $(version) > $(base)/.version
  60. chmod 664 $(base)/.version
  61. tar --append -f /tmp/$(base).tar --owner root --group root $(base)/.version
  62. rm -r $(base)
  63. gzip /tmp/$(base).tar
  64. -include *.d tidsp/*.d