# /*------------------------------------------------------------\ # | | # | File : Makefile | # | | # | Author : Jacomme Ludovic | # | | # \------------------------------------------------------------*/ # /*------------------------------------------------------------\ # | | # | Cells | # | | # \------------------------------------------------------------*/ # /*------------------------------------------------------------\ # | | # | Binary | # | | # \------------------------------------------------------------*/ include ../etc/alliance-env.mk SYF = $(ALLIANCE_BIN)/syf ASIMUT = $(ALLIANCE_BIN)/asimut BOOM = $(ALLIANCE_BIN)/boom BOOG = $(ALLIANCE_BIN)/boog LOON = $(ALLIANCE_BIN)/loon OCP = $(ALLIANCE_BIN)/ocp OCR = $(ALLIANCE_BIN)/ocr NERO = $(ALLIANCE_BIN)/nero COUGAR = $(ALLIANCE_BIN)/cougar LVX = $(ALLIANCE_BIN)/lvx DRUC = $(ALLIANCE_BIN)/druc S2R = $(ALLIANCE_BIN)/s2r DREAL = $(ALLIANCE_BIN)/dreal GRAAL = $(ALLIANCE_BIN)/graal XSCH = $(ALLIANCE_BIN)/xsch XPAT = $(ALLIANCE_BIN)/xpat XFSM = $(ALLIANCE_BIN)/xfsm TOUCH = touch TARGET_LIB = $(CELLS_TOP)/sxlib METAL_LEVEL = 2 SPI_MODEL = $(SYSCONF_TOP)/spimodel.cfg # /*------------------------------------------------------------\ # | | # | Environment | # | | # \------------------------------------------------------------*/ ENV_SYF = MBK_WORK_LIB=.; export MBK_WORK_LIB;\ MBK_CATAL_NAME=NO_CATAL; export MBK_CATAL_NAME ENV_BOOM = MBK_WORK_LIB=.; export MBK_WORK_LIB;\ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_BOOG = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ MBK_IN_LO=vst; export MBK_IN_LO; \ MBK_OUT_LO=vst; export MBK_OUT_LO; \ MBK_TARGET_LIB=$(TARGET_LIB); export MBK_TARGET_LIB; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_LOON = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ MBK_IN_LO=vst; export MBK_IN_LO; \ MBK_OUT_LO=vst; export MBK_OUT_LO; \ MBK_TARGET_LIB=$(TARGET_LIB); export MBK_TARGET_LIB; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_ASIMUT_SYF = MBK_WORK_LIB=.; export MBK_WORK_LIB;\ MBK_CATAL_NAME=CATAL_ASIMUT_SYF; export MBK_CATAL_NAME;\ MBK_IN_LO=vst; export MBK_IN_LO;\ MBK_OUT_LO=vst; export MBK_OUT_LO ENV_ASIMUT_SYNTH = MBK_WORK_LIB=.; export MBK_WORK_LIB;\ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME;\ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_IN_LO=vst; export MBK_IN_LO;\ MBK_OUT_LO=vst; export MBK_OUT_LO ENV_OCP = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ MBK_IN_LO=vst; export MBK_IN_LO; \ MBK_OUT_LO=vst; export MBK_OUT_LO; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_IN_PH=ap; export MBK_IN_PH; \ MBK_OUT_PH=ap; export MBK_OUT_PH; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_OCR = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ MBK_IN_LO=vst; export MBK_IN_LO; \ MBK_OUT_LO=vst; export MBK_OUT_LO; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_IN_PH=ap; export MBK_IN_PH; \ MBK_OUT_PH=ap; export MBK_OUT_PH; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_COUGAR = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ MBK_IN_LO=al; export MBK_IN_LO; \ MBK_OUT_LO=al; export MBK_OUT_LO; \ RDS_TECHNO_NAME=$(RDS_TECHNO_REAL); export RDS_TECHNO_NAME; \ RDS_IN=cif; export RDS_IN; \ RDS_OUT=cif; export RDS_OUT; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_IN_PH=ap; export MBK_IN_PH; \ MBK_OUT_PH=ap; export MBK_OUT_PH; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_COUGAR_SPI = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ MBK_IN_LO=spi; export MBK_IN_LO; \ MBK_OUT_LO=spi; export MBK_OUT_LO; \ MBK_SPI_MODEL=$(SPI_MODEL); export MBK_SPI_MODEL; \ MBK_SPI_NAMEDNODES="true"; export MBK_SPI_NAMEDNODES; \ RDS_TECHNO_NAME=$(RDS_TECHNO_REAL); export RDS_TECHNO_NAME; \ RDS_IN=cif; export RDS_IN; \ RDS_OUT=cif; export RDS_OUT; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_IN_PH=ap; export MBK_IN_PH; \ MBK_OUT_PH=ap; export MBK_OUT_PH; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_LVX = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ MBK_IN_LO=vst; export MBK_IN_LO; \ MBK_OUT_LO=vst; export MBK_OUT_LO; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_DRUC = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ RDS_TECHNO_NAME=$(RDS_TECHNO_SYMB); export RDS_TECHNO_NAME; \ MBK_IN_PH=ap; export MBK_IN_PH; \ MBK_OUT_PH=ap; export MBK_OUT_PH; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME ENV_S2R = MBK_WORK_LIB=.; export MBK_WORK_LIB; \ RDS_TECHNO_NAME=$(RDS_TECHNO_REAL); export RDS_TECHNO_NAME; \ RDS_IN=cif; export RDS_IN; \ RDS_OUT=cif; export RDS_OUT; \ MBK_IN_PH=ap; export MBK_IN_PH; \ MBK_OUT_PH=ap; export MBK_OUT_PH; \ MBK_CATA_LIB=$(TARGET_LIB); export MBK_CATA_LIB; \ MBK_CATAL_NAME=CATAL; export MBK_CATAL_NAME all : digi.cif # /*------------------------------------------------------------\ # | | # | Vasy | # | | # \------------------------------------------------------------*/ digi.vbe : digi.fsm $(ENV_SYF); $(SYF) -Va digi digi # /*------------------------------------------------------------\ # | | # | Asimut | # | | # \------------------------------------------------------------*/ res_syf_1.pat : digi.vbe $(ENV_ASIMUT_SYF); $(ASIMUT) -b digi digi res_syf_1 res_synth_1.pat : digi.vst $(ENV_ASIMUT_SYNTH); $(ASIMUT) -i 0 digi digi res_synth_1 # /*------------------------------------------------------------\ # | | # | Boom | # | | # \------------------------------------------------------------*/ boom.done : digi_o.vbe @$(TOUCH) boom.done digi_o.vbe : digi.vbe res_syf_1.pat $(ENV_BOOM); $(BOOM) -V digi digi_o # /*------------------------------------------------------------\ # | | # | Boog | # | | # \------------------------------------------------------------*/ boog.done : digi_o.vst @$(TOUCH) boog.done digi_o.vst : digi_o.vbe $(ENV_BOOG); $(BOOG) digi_o # /*------------------------------------------------------------\ # | | # | Loon | # | | # \------------------------------------------------------------*/ loon.done : digi.vst @$(TOUCH) loon.done digi.vst : digi_o.vst $(ENV_LOON); $(LOON) digi_o digi # /*------------------------------------------------------------\ # | | # | OCP | # | | # \------------------------------------------------------------*/ digi_p.ap : res_synth_1.pat digi.ioc $(ENV_OCP); $(OCP) -v -gnuplot -ioc digi digi digi_p # /*------------------------------------------------------------\ # | | # | OCR | # | | # \------------------------------------------------------------*/ # digi.ap : digi_p.ap digi.vst # $(ENV_OCR); $(OCR) -vv -l $(METAL_LEVEL) -L digi -P digi_p -O digi # /*------------------------------------------------------------\ # | | # | NERO | # | | # \------------------------------------------------------------*/ digi.ap : digi_p.ap digi.vst $(ENV_OCR); $(NERO) -V -$(METAL_LEVEL) -p digi_p digi digi # /*------------------------------------------------------------\ # | | # | Cougar | # | | # \------------------------------------------------------------*/ digi_e.spi : digi.ap $(ENV_COUGAR_SPI); $(COUGAR) -v -ac digi digi_e digi_e.al : digi.ap $(ENV_COUGAR); $(COUGAR) -v -ac digi digi_e digi_et.al : digi.ap $(ENV_COUGAR); $(COUGAR) -v -ac -t digi digi_et digi_et.spi : digi.ap $(ENV_COUGAR_SPI); $(COUGAR) -v -ac -t digi digi_et digi_er.al : digi.cif $(ENV_COUGAR); $(COUGAR) -v -r -t digi digi_er # /*------------------------------------------------------------\ # | | # | Lvx | # | | # \------------------------------------------------------------*/ lvx.done : digi.vst digi_e.al $(ENV_LVX); $(LVX) vst al digi digi_e -f $(TOUCH) lvx.done # /*------------------------------------------------------------\ # | | # | Druc | # | | # \------------------------------------------------------------*/ druc.done : lvx.done digi.ap $(ENV_DRUC); $(DRUC) digi $(TOUCH) druc.done # /*------------------------------------------------------------\ # | | # | S2R | # | | # \------------------------------------------------------------*/ digi.cif : druc.done $(ENV_S2R); $(S2R) -v digi # /*------------------------------------------------------------\ # | | # | TOOLS | # | | # \------------------------------------------------------------*/ graal: digi.ap $(ENV_S2R); $(GRAAL) -l digi xsch: digi.vst $(ENV_LOON); $(XSCH) -l digi xscht: digi_et.al $(ENV_COUGAR); $(XSCH) -l digi_et xfsm: digi.fsm $(ENV_SYF); $(XFSM) -l digi xpat: res_synth_1.pat $(ENV_ASIMUT_SYNTH); $(XPAT) -l res_synth_1 dreal: digi.cif $(ENV_S2R); $(DREAL) -l digi -install # /*------------------------------------------------------------\ # | | # | Clean | # | | # \------------------------------------------------------------*/ realclean : clean clean : $(RM) -f *.vst digi_e.spi *.vbe res_*.pat *.boom *.done *.xsc *.gpl \ *.ap *.drc *.dat *.gds *.cif *.rep \ *.log *.out *.raw *.al