Makefile 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. CROSS_COMPILE ?= arm-linux-
  2. CC := $(CROSS_COMPILE)gcc
  3. CFLAGS := -O2 -ggdb -Wall -Wextra -Wno-unused-parameter -Wmissing-prototypes -ansi -std=c99
  4. LDFLAGS := -Wl,--no-undefined -Wl,--as-needed
  5. override CFLAGS += -D_GNU_SOURCE -DGST_DISABLE_DEPRECATED
  6. GST_CFLAGS := $(shell pkg-config --cflags gstreamer-0.10 gstreamer-base-0.10)
  7. GST_LIBS := $(shell pkg-config --libs gstreamer-0.10 gstreamer-base-0.10)
  8. all:
  9. version := $(shell ./get-version)
  10. prefix := /usr
  11. D = $(DESTDIR)
  12. # plugin
  13. libgstomapfb.so: omapfb.o log.o
  14. libgstomapfb.so: override CFLAGS += $(GST_CFLAGS) -fPIC \
  15. -D VERSION='"$(version)"' -I./include
  16. libgstomapfb.so: override LIBS += $(GST_LIBS)
  17. targets += libgstomapfb.so
  18. all: $(targets)
  19. # pretty print
  20. ifndef V
  21. QUIET_CC = @echo ' CC '$@;
  22. QUIET_LINK = @echo ' LINK '$@;
  23. QUIET_CLEAN = @echo ' CLEAN '$@;
  24. endif
  25. install: $(targets)
  26. install -m 755 -D libgstomapfb.so $(D)/$(prefix)/lib/gstreamer-0.10/libgstomapfb.so
  27. %.o:: %.c
  28. $(QUIET_CC)$(CC) $(CFLAGS) -MMD -o $@ -c $<
  29. %.so::
  30. $(QUIET_LINK)$(CC) $(LDFLAGS) -shared -o $@ $^ $(LIBS)
  31. clean:
  32. $(QUIET_CLEAN)$(RM) -v $(targets) *.o *.d
  33. dist: base := gst-omapfb-$(version)
  34. dist:
  35. git archive --format=tar --prefix=$(base)/ HEAD > /tmp/$(base).tar
  36. mkdir -p $(base)
  37. echo $(version) > $(base)/.version
  38. chmod 664 $(base)/.version
  39. tar --append -f /tmp/$(base).tar --owner root --group root $(base)/.version
  40. rm -r $(base)
  41. gzip /tmp/$(base).tar
  42. -include *.d