1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- CC = $(CROSS)$(TARGET)gcc
- STRIP = $(CROSS)$(TARGET)strip
- MKDEP = $(CROSS)$(TARGET)gcc -M -o $*.d $<
-
- BUILD_ID = $(shell date +%F_%R)
- VERSION = $(shell cat RELEASE)
- GIT_VER = $(shell git describe --tags --dirty --always 2>/dev/null)
- ifeq "$(GIT_VER)" ""
- GIT_VER = "release"
- endif
-
- CFLAGS = -O2 -ggdb
- CFLAGS += -Wall -Wextra -Wshadow -Wformat-security
- CFLAGS += -DBUILD_ID=\"$(BUILD_ID)\" -DVERSION=\"$(VERSION)\" -DGIT_VER=\"$(GIT_VER)\"
-
- RM = /bin/rm -f
- Q = @
-
- PREFIX ?= /usr/local
-
- INSTALL_PRG = tsdecrypt
- INSTALL_PRG_DIR = $(subst //,/,$(DESTDIR)/$(PREFIX)/bin)
-
- INSTALL_DOC = tsdecrypt.1
- INSTALL_DOC_DIR = $(subst //,/,$(DESTDIR)/$(PREFIX)/man/man1)
-
- FUNCS_DIR = libfuncs
- FUNCS_LIB = $(FUNCS_DIR)/libfuncs.a
-
- TS_DIR = libtsfuncs
- TS_LIB = $(TS_DIR)/libtsfuncs.a
-
- tsdecrypt_SRC = data.c udp.c util.c camd.c process.c tables.c notify.c tsdecrypt.c
- tsdecrypt_LIBS = -lcrypto -ldvbcsa -lpthread
- tsdecrypt_OBJS = $(tsdecrypt_SRC:.c=.o) $(FUNCS_LIB) $(TS_LIB)
-
- CLEAN_OBJS = tsdecrypt $(tsdecrypt_SRC:.c=.{o,d})
-
- PROGS = tsdecrypt
-
- .PHONY: distclean clean install uninstall
-
- all: $(PROGS)
-
- $(FUNCS_LIB):
- $(Q)echo " MAKE $(FUNCS_LIB)"
- $(Q)$(MAKE) -s -C $(FUNCS_DIR)
-
- $(TS_LIB):
- $(Q)echo " MAKE $(TS_LIB)"
- $(Q)$(MAKE) -s -C $(TS_DIR)
-
- tsdecrypt: $(tsdecrypt_OBJS)
- $(Q)echo " LINK tsdecrypt"
- $(Q)$(CC) $(CFLAGS) $(tsdecrypt_OBJS) $(tsdecrypt_LIBS) -o tsdecrypt
-
- %.o: %.c RELEASE
- @$(MKDEP)
- $(Q)echo " CC tsdecrypt $<"
- $(Q)$(CC) $(CFLAGS) -c $<
-
- -include $(tsdecrypt_SRC:.c=.d)
-
- strip:
- $(Q)echo " STRIP $(PROGS)"
- $(Q)$(STRIP) $(PROGS)
-
- clean:
- $(Q)echo " RM $(CLEAN_OBJS)"
- $(Q)$(RM) $(CLEAN_OBJS)
-
- distclean: clean
- $(Q)$(MAKE) -s -C $(TS_DIR) clean
- $(Q)$(MAKE) -s -C $(FUNCS_DIR) clean
-
- install: all strip
- @install -d "$(INSTALL_PRG_DIR)"
- @install -d "$(INSTALL_DOC_DIR)"
- @echo "INSTALL $(INSTALL_PRG) -> $(INSTALL_PRG_DIR)"
- $(Q)-install $(INSTALL_PRG) "$(INSTALL_PRG_DIR)"
- @echo "INSTALL $(INSTALL_DOC) -> $(INSTALL_DOC_DIR)"
- $(Q)-install --mode 0644 $(INSTALL_DOC) "$(INSTALL_DOC_DIR)"
-
- uninstall:
- @-for FILE in $(INSTALL_PRG); do \
- echo "RM $(INSTALL_PRG_DIR)/$$FILE"; \
- rm "$(INSTALL_PRG_DIR)/$$FILE"; \
- done
- @-for FILE in $(INSTALL_DOC); do \
- echo "RM $(INSTALL_DOC_DIR)/$$FILE"; \
- rm "$(INSTALL_DOC_DIR)/$$FILE"; \
- done
|