blob: 390ca04c216289519377204d550f4a769b9e7fb0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
#
# qflow project scripts makefile
#
# Main compiler arguments
CFLAGS = -g -O2
DEFS = -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SETENV=1 -DHAVE_PUTENV=1 -DTCLSH_PATH=\"/bin/tclsh\" -DQFLOW_MAGIC_PATH=\"/usr/local/bin/magic\" -DQFLOW_QROUTER_PATH=\"/usr/local/bin/qrouter\" -DQFLOW_GRAYWOLF_PATH=\"/usr/local/bin/graywolf\" -DQFLOW_YOSYS_PATH=\"/usr/local/bin/yosys\"
LIBS =
LDFLAGS =
INSTALL = /bin/install -c
VERSION = 1.1
REVISION = 14
QFLOW_LIB_DIR = /usr/local/share/qflow
QFLOW_BIN_DIR = /usr/local/bin
TCLSH_PATH = /bin/tclsh
DEFAULTPARSER = @QFLOW_DEFAULT_PARSER@
TCL_SCRIPTS = blif2cel.tcl place2def.tcl place2lef2.tcl
TCL_SCRIPTS += place2net2.tcl ypostproc.tcl ybuffer.tcl
TCL_SCRIPTS += decongest.tcl addspacers.tcl getfillcell.tcl
TCL_SCRIPTS += blifanno.tcl
SHELL_SCRIPTS = synthesize.sh placement.sh router.sh vesta.sh
SHELL_SCRIPTS += qflow.sh checkdirs.sh
SHELL_SCRIPTS += cleanup.sh display.sh createGDS.sh
MAIN_SCRIPT = qflow
SCRIPTINSTALL = ${QFLOW_LIB_DIR}/scripts
TECHINSTALL = ${QFLOW_LIB_DIR}/tech
QFLOWEXECPATH = ${QFLOW_LIB_DIR}/bin
EXECINSTALL = ${QFLOW_BIN_DIR}
all: $(MAIN_SCRIPT).in qflow.sh
$(MAKE) launcher
launcher: $(MAIN_SCRIPT).in
sed -e '/QFLOW_SCRIPT_DIR/s#QFLOW_SCRIPT_DIR#$(SCRIPTINSTALL)#' \
$(MAIN_SCRIPT).in > $(MAIN_SCRIPT)
checkdirs.sh: checkdirs.sh.in
sed -e '/SUBST_TECH_DIR/s#SUBST_TECH_DIR#$(TECHINSTALL)#' \
-e '/SUBST_SCRIPT_DIR/s#SUBST_SCRIPT_DIR#$(SCRIPTINSTALL)#' \
-e '/SUBST_BIN_DIR/s#SUBST_BIN_DIR#$(QFLOWEXECPATH)#' \
checkdirs.sh.in > checkdirs.sh
qflow.sh: qflow.sh.in
sed -e '/QFLOW_SCRIPT_DIR/s#QFLOW_SCRIPT_DIR#$(SCRIPTINSTALL)#' \
-e '/QFLOW_DEFAULT_PARSER/s#QFLOW_DEFAULT_PARSER#$(DEFAULTPARSER)#' \
-e '/QFLOW_REVISION/s#QFLOW_REVISION#$(REVISION)#' \
-e '/QFLOW_VERSION/s#QFLOW_VERSION#$(VERSION)#' \
qflow.sh.in > qflow.sh
blif2cel.tcl: blif2cel.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' blif2cel.tcl.in > $@
place2def.tcl: place2def.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' place2def.tcl.in > $@
place2lef2.tcl: place2def2.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' place2lef2.tcl.in > $@
place2net2.tcl: place2net2.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' place2net2.tcl.in > $@
ypostproc.tcl: ypostproc.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' ypostproc.tcl.in > $@
ybuffer.tcl: ybuffer.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' ybuffer.tcl.in > $@
decongest.tcl: decongest.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' decongest.tcl.in > $@
addspacers.tcl: addspacers.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' addspacers.tcl.in > $@
getfillcell.tcl: getfillcell.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' getfillcell.tcl.in > $@
blifanno.tcl: blifanno.tcl.in
sed -e 's#TCLSH_PATH#$(TCLSH_PATH)#' blifanno.tcl.in > $@
install: $(TCL_SCRIPTS) $(SHELL_SCRIPTS) $(MAIN_SCRIPT)
@echo "Installing qflow scripts"
$(INSTALL) -d $(DESTDIR)${SCRIPTINSTALL}
for target in $(TCL_SCRIPTS); do \
$(INSTALL) $$target $(DESTDIR)${SCRIPTINSTALL} ;\
done
for target in $(SHELL_SCRIPTS); do \
$(INSTALL) $$target $(DESTDIR)${SCRIPTINSTALL} ;\
done
@echo "Installing qflow executable"
$(INSTALL) -d $(DESTDIR)${EXECINSTALL}
$(INSTALL) ${MAIN_SCRIPT} $(DESTDIR)${EXECINSTALL}
clean:
$(RM) $(MAIN_SCRIPT)
$(RM) checkdirs.sh
$(RM) qflow.sh
$(RM) $(TCL_SCRIPTS)
uninstall:
$(RM) -rf ${SCRIPTINSTALL}
$(RM) ${EXECINSTALL}/${MAIN_SCRIPT}
|