all : help
help:
	@echo "|--------------------------------------------------------------|"
	@echo "| Usage:   make all_sources                                    |"
	@echo "|             (make all sources from generic .c files)         |"
	@echo "|          make re-install                                     |"
	@echo "|             (make all sources from generic .c files)         |"
	@echo "|          make coo_sources                                    |"
	@echo "|             (make coo sources from generic .c files)         |"
	@echo "|          make csr_sources                                    |"
	@echo "|             (make csr sources from generic .c files)         |"
	@echo "|          make csc_sources                                    |"
	@echo "|             (make csc sources from generic .c files)         |"
	@echo "|          make bco_sources                                    |"
	@echo "|             (make bco sources from generic .c files)         |"
	@echo "|          make bsc_sources                                    |"
	@echo "|             (make bsc sources from generic .c files)         |"
	@echo "|          make bsr_sources                                    |"
	@echo "|             (make bsr sources from generic .c files)         |"
	@echo "|          make vbr_sources                                    |"
	@echo "|             (make vbr sources from generic .c files)         |"
	@echo "|--------------------------------------------------------------|"
COOMMSOURCES = \
	dcoommCAB.c    dcoommCaAB.c   dcoovmCAB.c    dcoovmCaAB.c      \
	dcoommCABC.c   dcoommCaABC.c  dcoovmCABC.c   dcoovmCaABC.c     \
	dcoommCABbC.c  dcoommCaABbC.c dcoovmCABbC.c  dcoovmCaABbC.c
CSRMMSOURCES = \
	dcsrmmCAB.c    dcsrmmCaAB.c   dcsrvmCAB.c    dcsrvmCaAB.c      \
	dcsrmmCABC.c   dcsrmmCaABC.c  dcsrvmCABC.c   dcsrvmCaABC.c     \
	dcsrmmCABbC.c  dcsrmmCaABbC.c dcsrvmCABbC.c  dcsrvmCaABbC.c
CSRMTSSOURCES = \
	dcsrmtsCAB.c    dcsrmtsCaAB.c   dcsrvtsCAB.c    dcsrvtsCaAB.c    \
	dcsrmtsCABC.c   dcsrmtsCaABC.c  dcsrvtsCABC.c   dcsrvtsCaABC.c   \
	dcsrmtsCABbC.c  dcsrmtsCaABbC.c dcsrvtsCABbC.c  dcsrvtsCaABbC.c  \
	dcsrmtsCDAB.c    dcsrmtsCaDAB.c   dcsrvtsCDAB.c    dcsrvtsCaDAB.c   \
	dcsrmtsCDABC.c   dcsrmtsCaDABC.c  dcsrvtsCDABC.c   dcsrvtsCaDABC.c  \
	dcsrmtsCDABbC.c  dcsrmtsCaDABbC.c dcsrvtsCDABbC.c  dcsrvtsCaDABbC.c \
	dcsrmtsCADB.c    dcsrmtsCaADB.c   dcsrvtsCADB.c    dcsrvtsCaADB.c   \
	dcsrmtsCADBC.c   dcsrmtsCaADBC.c  dcsrvtsCADBC.c   dcsrvtsCaADBC.c  \
	dcsrmtsCADBbC.c  dcsrmtsCaADBbC.c dcsrvtsCADBbC.c  dcsrvtsCaADBbC.c  \
	dcsrmtsCDADB.c    dcsrmtsCaDADB.c   dcsrvtsCDADB.c    dcsrvtsCaDADB.c \
	dcsrmtsCDADBC.c   dcsrmtsCaDADBC.c  dcsrvtsCDADBC.c   dcsrvtsCaDADBC.c \
	dcsrmtsCDADBbC.c  dcsrmtsCaDADBbC.c dcsrvtsCDADBbC.c  dcsrvtsCaDADBbC.c
CSCMMSOURCES = \
	dcscmmCAB.c    dcscmmCaAB.c   dcscvmCAB.c    dcscvmCaAB.c      \
	dcscmmCABC.c   dcscmmCaABC.c  dcscvmCABC.c   dcscvmCaABC.c     \
	dcscmmCABbC.c  dcscmmCaABbC.c dcscvmCABbC.c  dcscvmCaABbC.c
CSCMTSSOURCES = \
	dcscmtsCAB.c    dcscmtsCaAB.c   dcscvtsCAB.c    dcscvtsCaAB.c    \
	dcscmtsCABC.c   dcscmtsCaABC.c  dcscvtsCABC.c   dcscvtsCaABC.c   \
	dcscmtsCABbC.c  dcscmtsCaABbC.c dcscvtsCABbC.c  dcscvtsCaABbC.c  \
	dcscmtsCDAB.c    dcscmtsCaDAB.c   dcscvtsCDAB.c    dcscvtsCaDAB.c   \
	dcscmtsCDABC.c   dcscmtsCaDABC.c  dcscvtsCDABC.c   dcscvtsCaDABC.c  \
	dcscmtsCDABbC.c  dcscmtsCaDABbC.c dcscvtsCDABbC.c  dcscvtsCaDABbC.c \
	dcscmtsCADB.c    dcscmtsCaADB.c   dcscvtsCADB.c    dcscvtsCaADB.c   \
	dcscmtsCADBC.c   dcscmtsCaADBC.c  dcscvtsCADBC.c   dcscvtsCaADBC.c  \
	dcscmtsCADBbC.c  dcscmtsCaADBbC.c dcscvtsCADBbC.c  dcscvtsCaADBbC.c  \
	dcscmtsCDADB.c    dcscmtsCaDADB.c   dcscvtsCDADB.c    dcscvtsCaDADB.c \
	dcscmtsCDADBC.c   dcscmtsCaDADBC.c  dcscvtsCDADBC.c   dcscvtsCaDADBC.c \
	dcscmtsCDADBbC.c  dcscmtsCaDADBbC.c dcscvtsCDADBbC.c  dcscvtsCaDADBbC.c
BCOMMSOURCES = \
	dbcommCAB.c    dbcommCaAB.c   dbcovmCAB.c    dbcovmCaAB.c      \
	dbcommCABC.c   dbcommCaABC.c  dbcovmCABC.c   dbcovmCaABC.c     \
	dbcommCABbC.c  dbcommCaABbC.c dbcovmCABbC.c  dbcovmCaABbC.c
BSCMMSOURCES = \
	dbscmmCAB.c    dbscmmCaAB.c   dbscvmCAB.c    dbscvmCaAB.c      \
	dbscmmCABC.c   dbscmmCaABC.c  dbscvmCABC.c   dbscvmCaABC.c     \
	dbscmmCABbC.c  dbscmmCaABbC.c dbscvmCABbC.c  dbscvmCaABbC.c
BSCMTSSOURCES = \
	dbscmtsCAB.c    dbscmtsCaAB.c   dbscvtsCAB.c    dbscvtsCaAB.c    \
	dbscmtsCABC.c   dbscmtsCaABC.c  dbscvtsCABC.c   dbscvtsCaABC.c   \
	dbscmtsCABbC.c  dbscmtsCaABbC.c dbscvtsCABbC.c  dbscvtsCaABbC.c  \
	dbscmtsCDAB.c    dbscmtsCaDAB.c   dbscvtsCDAB.c    dbscvtsCaDAB.c   \
	dbscmtsCDABC.c   dbscmtsCaDABC.c  dbscvtsCDABC.c   dbscvtsCaDABC.c  \
	dbscmtsCDABbC.c  dbscmtsCaDABbC.c dbscvtsCDABbC.c  dbscvtsCaDABbC.c \
	dbscmtsCADB.c    dbscmtsCaADB.c   dbscvtsCADB.c    dbscvtsCaADB.c   \
	dbscmtsCADBC.c   dbscmtsCaADBC.c  dbscvtsCADBC.c   dbscvtsCaADBC.c  \
	dbscmtsCADBbC.c  dbscmtsCaADBbC.c dbscvtsCADBbC.c  dbscvtsCaADBbC.c  \
	dbscmtsCDADB.c    dbscmtsCaDADB.c   dbscvtsCDADB.c    dbscvtsCaDADB.c \
	dbscmtsCDADBC.c   dbscmtsCaDADBC.c  dbscvtsCDADBC.c   dbscvtsCaDADBC.c \
	dbscmtsCDADBbC.c  dbscmtsCaDADBbC.c dbscvtsCDADBbC.c  dbscvtsCaDADBbC.c
BSRMMSOURCES = \
	dbsrmmCAB.c    dbsrmmCaAB.c   dbsrvmCAB.c    dbsrvmCaAB.c      \
	dbsrmmCABC.c   dbsrmmCaABC.c  dbsrvmCABC.c   dbsrvmCaABC.c     \
	dbsrmmCABbC.c  dbsrmmCaABbC.c dbsrvmCABbC.c  dbsrvmCaABbC.c
BSRMTSSOURCES = \
	dbsrmtsCAB.c    dbsrmtsCaAB.c   dbsrvtsCAB.c    dbsrvtsCaAB.c    \
	dbsrmtsCABC.c   dbsrmtsCaABC.c  dbsrvtsCABC.c   dbsrvtsCaABC.c   \
	dbsrmtsCABbC.c  dbsrmtsCaABbC.c dbsrvtsCABbC.c  dbsrvtsCaABbC.c  \
	dbsrmtsCDAB.c    dbsrmtsCaDAB.c   dbsrvtsCDAB.c    dbsrvtsCaDAB.c   \
	dbsrmtsCDABC.c   dbsrmtsCaDABC.c  dbsrvtsCDABC.c   dbsrvtsCaDABC.c  \
	dbsrmtsCDABbC.c  dbsrmtsCaDABbC.c dbsrvtsCDABbC.c  dbsrvtsCaDABbC.c \
	dbsrmtsCADB.c    dbsrmtsCaADB.c   dbsrvtsCADB.c    dbsrvtsCaADB.c   \
	dbsrmtsCADBC.c   dbsrmtsCaADBC.c  dbsrvtsCADBC.c   dbsrvtsCaADBC.c  \
	dbsrmtsCADBbC.c  dbsrmtsCaADBbC.c dbsrvtsCADBbC.c  dbsrvtsCaADBbC.c  \
	dbsrmtsCDADB.c    dbsrmtsCaDADB.c   dbsrvtsCDADB.c    dbsrvtsCaDADB.c \
	dbsrmtsCDADBC.c   dbsrmtsCaDADBC.c  dbsrvtsCDADBC.c   dbsrvtsCaDADBC.c \
	dbsrmtsCDADBbC.c  dbsrmtsCaDADBbC.c dbsrvtsCDADBbC.c  dbsrvtsCaDADBbC.c
VBRMMSOURCES = \
	dvbrmmCAB.c    dvbrmmCaAB.c   dvbrvmCAB.c    dvbrvmCaAB.c      \
	dvbrmmCABC.c   dvbrmmCaABC.c  dvbrvmCABC.c   dvbrvmCaABC.c     \
	dvbrmmCABbC.c  dvbrmmCaABbC.c dvbrvmCABbC.c  dvbrvmCaABbC.c
VBRMTSSOURCES = \
	dvbrmtsCAB.c    dvbrmtsCaAB.c   dvbrvtsCAB.c    dvbrvtsCaAB.c    \
	dvbrmtsCABC.c   dvbrmtsCaABC.c  dvbrvtsCABC.c   dvbrvtsCaABC.c   \
	dvbrmtsCABbC.c  dvbrmtsCaABbC.c dvbrvtsCABbC.c  dvbrvtsCaABbC.c  \
	dvbrmtsCDAB.c    dvbrmtsCaDAB.c   dvbrvtsCDAB.c    dvbrvtsCaDAB.c   \
	dvbrmtsCDABC.c   dvbrmtsCaDABC.c  dvbrvtsCDABC.c   dvbrvtsCaDABC.c  \
	dvbrmtsCDABbC.c  dvbrmtsCaDABbC.c dvbrvtsCDABbC.c  dvbrvtsCaDABbC.c \
	dvbrmtsCADB.c    dvbrmtsCaADB.c   dvbrvtsCADB.c    dvbrvtsCaADB.c   \
	dvbrmtsCADBC.c   dvbrmtsCaADBC.c  dvbrvtsCADBC.c   dvbrvtsCaADBC.c  \
	dvbrmtsCADBbC.c  dvbrmtsCaADBbC.c dvbrvtsCADBbC.c  dvbrvtsCaADBbC.c  \
	dvbrmtsCDADB.c    dvbrmtsCaDADB.c   dvbrvtsCDADB.c    dvbrvtsCaDADB.c \
	dvbrmtsCDADBC.c   dvbrmtsCaDADBC.c  dvbrvtsCDADBC.c   dvbrvtsCaDADBC.c \
	dvbrmtsCDADBbC.c  dvbrmtsCaDADBbC.c dvbrvtsCDADBbC.c  dvbrvtsCaDADBbC.c

COOSOURCES = $(COOMMSOURCES)
CSRSOURCES = $(CSRMMSOURCES) $(CSRMTSSOURCES)
CSCSOURCES = $(CSCMMSOURCES) $(CSCMTSSOURCES)
BCOSOURCES = $(BCOMMSOURCES) $(BCOMTSSOURCES)
BSCSOURCES = $(BSCMMSOURCES) $(BSCMTSSOURCES)
BSRSOURCES = $(BSRMMSOURCES) $(BSRMTSSOURCES)
VBRSOURCES = $(VBRMMSOURCES) $(VBRMTSSOURCES)
ALLSOURCES = $(COOSOURCES) $(CSCSOURCES) $(CSRSOURCES) \
             $(BCOSOURCES) $(BSCSOURCES) $(BSRSOURCES) $(VBRSOURCES)

coo_sources :  coo_header $(COOSOURCES) coo_include
csr_sources :  csr_header $(CSRSOURCES) csr_include
csc_sources :  csc_header $(CSCSOURCES) csc_include
bco_sources :  bco_header $(BCOSOURCES) bco_include
bsc_sources :  bsc_header $(BSCSOURCES) bsc_include
bsr_sources :  bsr_header $(BSRSOURCES) bsr_include
vbr_sources :  vbr_header $(VBRSOURCES) vbr_include
all_sources :  coo_sources csr_sources csc_sources \
               bco_sources bsc_sources bsr_sources vbr_sources
re-install : $(ALLSOURCES)

coo_include : 
	cd ../include; make coo_include

csr_include : 
	cd ../include; make csr_include

csc_include : 
	cd ../include; make csc_include

bco_include : 
	cd ../include; make bco_include

bsc_include : 
	cd ../include; make bsc_include

bsr_include : 
	cd ../include; make bsr_include

vbr_include : 
	cd ../include; make vbr_include
%.c :
	./create $@

coo_header : 
	make_header dcoomml.c
	make_header dcoovml.c

csr_header : 
	make_header dcsrmml.c
	make_header dcsrvml.c
	make_header dcsrmtsl.c
	make_header dcsrvtsl.c

csc_header : 
	make_header dcscmml.c
	make_header dcscvml.c
	make_header dcscmtsl.c
	make_header dcscvtsl.c

bco_header : 
	make_header dbcomml.c
	make_header dbcovml.c

bsc_header : 
	make_header dbscmml.c
	make_header dbscvml.c
	make_header dbscmtsl.c
	make_header dbscvtsl.c

bsr_header : 
	make_header dbsrmml.c
	make_header dbsrvml.c
	make_header dbsrmtsl.c
	make_header dbsrvtsl.c

vbr_header : 
	make_header dvbrmml.c
	make_header dvbrvml.c
	make_header dvbrmtsl.c
	make_header dvbrvtsl.c

