# Copyright (c) 2012-2013, Texas Instruments Incorporated # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # # * Neither the name of Texas Instruments Incorporated nor the names of # its contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # Contact information for paper mail: # Texas Instruments # Post Office Box 655303 # Dallas, Texas 75265 # Contact information: # http://www-k.ext.ti.com/sc/technical-support/product-information-centers.htm? # DCMP=TIHomeTracking&HQS=Other+OT+home_d_contact # ============================================================================ # # # # ====== Toplevel Makefile ====== # # # Standard Boilerplate definitions which get overwritten by configure # CC = @CC@ VERSION = @PACKAGE_VERSION@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_DIST = $(PACKAGE_TARNAME)-$(VERSION) DESKTOP_FILE_DIR = /usr/share RM = rm CFLAGS = @CFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ libdir = @libdir@ docdir = @docdir@ datarootdir = @datarootdir@ datadir = @datadir@ ifdef DESTDIR else DESTDIR = endif DOXYGEN = doxygen # # ====== Flags ====== # INC_DIR := include INC_CONFIG := . PKG_CONFIG_CFLAGS := `pkg-config --cflags gtk+-2.0 gstreamer-0.10 gstreamer-interfaces-0.10` CFLAGS += -Wall -ansi -pedantic -std=c99 CFLAGS += -I$(INC_DIR) -I$(INC_CONFIG) -DGST_APP_DEBUG $(PKG_CONFIG_CFLAGS) PKG_CONFIG_LDFLAGS := `pkg-config --libs gtk+-2.0 gstreamer-0.10 gstreamer-interfaces-0.10` LDFLAGS += $(PKG_CONFIG_LDFLAGS) # # ====== Support Verbose/Silent ====== # VERBOSE ?= false ifeq ($(VERBOSE), true) Q := else Q := @ endif # # ====== All targets ====== # all: dual-decode dual-decode: main.o gst-controller.o gui.o @echo LD $^ $(Q)$(CC) -g $^ -o $@ $(LDFLAGS) %.o: src/%.c @echo CC $^ $(Q)$(CC) -c $< $(CFLAGS) clean: @echo CLEAN $(Q)$(RM) -f *.o */*~ dual-decode distclean: clean @echo DISTCLEAN $(Q)$(RM) -rf config.h config.status config.log configure \ config.h.in aclocal.m4 Makefile autom4te.cache install: install -d $(DESTDIR)$(bindir) $(DESTDIR)$(docdir) $(DESTDIR)$(datadir)/$(PACKAGE_NAME) install dual-decode $(DESTDIR)$(bindir) install res/gui.xml $(DESTDIR)$(datadir)/$(PACKAGE_NAME) mkdir -p $(DESTDIR)$(DESKTOP_FILE_DIR)/pixmaps install res/dual-decode.png $(DESTDIR)$(DESKTOP_FILE_DIR)/pixmaps mkdir -p $(DESTDIR)$(DESKTOP_FILE_DIR)/applications install dual-decode.desktop $(DESTDIR)$(DESKTOP_FILE_DIR)/applications uninstall: rm -r $(DESTDIR)$(docdir) rm -r $(DESTDIR)$(bindir)/$(PACKAGE_NAME) rm -r $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/gui.xml rm -r $(DESTDIR)$(DESKTOP_FILE_DIR)/pixmaps/dual-decode.png rm -r $(DESTDIR)$(DESKTOP_FILE_DIR)/applications/dual-decode.desktop doxygen: $(Q)$(DOXYGEN) dist: @echo DIST @echo MKDIR $(Q)mkdir $(PACKAGE_DIST) @echo CP $(Q)for i in include src; do \ cp -rf $$i $(PACKAGE_DIST); \ done $(Q)for i in autogen.sh aclocal.m4 config.h.in Makefile.in configure; do \ cp $$i $(PACKAGE_DIST); \ done @echo TAR $(Q)tar -c $(PACKAGE_DIST) -af $(PACKAGE_DIST).tar.gz @echo RM $(Q)rm -rf $(PACKAGE_DIST) help: @echo @echo "all: Build $(PACKAGE_NAME)" @echo "clean: Clean $(PACKAGE_NAME)" @echo "doxygen: Generate Documentation" @echo "distclean: Clean and delete autoconf generated files" @echo "dist: Regenerate the release tarball" @echo "install: Install $(PACKAGE_NAME)" @echo