Annotation of multiplexer/makefile, revision 1.9

1.1       oskar       1: # make iso 13818-1 stream multiplexer
                      2: 
1.4       frankro     3: INCLUDEDIR = /usr/local/include
1.2       oskar       4: SHELL = /bin/bash
1.4       frankro     5: BINDIR = /usr/local/bin
                      6: MANDIR = /usr/local/man/man1
1.1       oskar       7: 
1.8       oskar       8: CFLAGS = -O -c -Wall -I$(INCLUDEDIR)
1.1       oskar       9: CC = gcc
                     10: 
1.9     ! oskar      11: OBJS_G = dispatch.o init.o error.o crc32.o input.o output.o command.o global.o descref.o splitpes.o splitps.o splitts.o splice.o
1.1       oskar      12: OBJ_ts = splicets.o
                     13: OBJ_ps = spliceps.o
1.2       oskar      14: OBJS_S = $(OBJ_ts) $(OBJ_ps)
                     15: OBJS = $(OBJS_G) $(OBJS_S)
1.6       jacob      16: OBJS_O = repeatts.o showts.o
1.9     ! oskar      17: OBJS_TS2PES = ts2pes.o ts2pesdescr.o
        !            18: OBJS_PES2ES = pes2es.o crc16.o
1.1       oskar      19: 
                     20: TRGSTEM = iso13818
1.5       oskar      21: TARGETS_I = $(TRGSTEM)ts $(TRGSTEM)ps
1.6       jacob      22: TARGETS_O = repeatts showts
1.9     ! oskar      23: TARGET_TS2PES = ts2pes
        !            24: TARGET_PES2ES = pes2es
        !            25: TARGETS = $(TARGETS_O) $(TARGETS_I) $(TARGET_TS2PES) $(TARGET_PES2ES)
1.1       oskar      26: 
1.9     ! oskar      27: HEADERS = dispatch.h error.h crc32.h input.h output.h command.h global.h descref.h splitpes.h splitps.h splitts.h splice.h pes.h ps.h ts.h makefile
1.1       oskar      28: 
1.7       oskar      29: .PHONY:        all clean install uninstall
1.1       oskar      30: 
                     31: all:   $(TARGETS)
                     32: 
1.5       oskar      33: $(TARGETS_I):  $(OBJS)
1.1       oskar      34:        $(CC) -o $@ $(OBJS_G) $($(subst $(TRGSTEM),OBJ_,$@))
                     35: 
1.6       jacob      36: $(TARGETS_O): % : %.o
                     37:        $(CC) -o $* $@.o
1.5       oskar      38: 
1.9     ! oskar      39: $(TARGET_TS2PES):      $(OBJS_TS2PES) crc32.o
        !            40:        $(CC) -o $@ $(OBJS_TS2PES) crc32.o
        !            41: 
        !            42: $(TARGET_PES2ES):      $(OBJS_PES2ES)
        !            43:        $(CC) -o $@ $(OBJS_PES2ES)
        !            44: 
1.5       oskar      45: $(OBJS_G) $(OBJS_O):   %.o:    %.c $(HEADERS)
1.2       oskar      46:        $(CC) $(CFLAGS) -o $@ $<
                     47: 
                     48: $(OBJS_S):     %.o:    %.c %.h $(HEADERS)
1.1       oskar      49:        $(CC) $(CFLAGS) -o $@ $<
                     50: 
1.9     ! oskar      51: $(OBJS_TS2PES):        %.o:    %.c %.h $($(subst .o,.h,$@))
        !            52:        $(CC) $(CFLAGS) -o $@ $<
        !            53: 
        !            54: $(OBJS_PES2ES):        %.o:    %.c %.h $($(subst .o,.h,$@))
        !            55:        $(CC) $(CFLAGS) -o $@ $<
        !            56: 
1.3       oskar      57: clean:
1.5       oskar      58:        rm -f *.o *~ $(TARGETS)
1.3       oskar      59: 
1.7       oskar      60: install:       $(TARGETS)
1.2       oskar      61:        install -d $(BINDIR) $(MANDIR)
1.5       oskar      62:        install -c -m 755 $(TARGETS) $(BINDIR)
                     63:        install -c -m 644 *.1 $(MANDIR)
1.7       oskar      64: 
                     65: uninstall:
                     66:        cd $(BINDIR) ; rm -vf $(TARGETS)
                     67:        cd $(MANDIR) ; rm -vf $(addsuffix .1,$(TARGETS))
1.1       oskar      68: 

LinuxTV legacy CVS <linuxtv.org/cvs>