forked from rmanohar/layout
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMakefile
More file actions
77 lines (57 loc) · 2.6 KB
/
Copy pathMakefile
File metadata and controls
77 lines (57 loc) · 2.6 KB
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
#-------------------------------------------------------------------------
#
# Copyright (c) 2018 Rajit Manohar
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
#-------------------------------------------------------------------------
EXE=act2lef.$(EXT)
REFRESH_TEST=layout_refresh_test.$(EXT)
CLEAN=$(REFRESH_TEST)
TARGETINCS=geom.h tile.h attrib.h subcell.h
TARGETINCSUBDIR=layout
TARGETS=$(EXE) $(EXE2)
TARGETSCRIPTS=mag.pl rect2lef.pl mag2rect.py gds2rect.py rect2gds.py gds2rect.sh
TARGETLIBS=libact_layout.so pass_stk.so pass_layout.so
OBJS_EXE=main.o
REFRESH_TEST_OBJS=layout_refresh_test.o
SHOBJS=geom.os tile.os subcell.os \
geom_layer.os \
geom_blob.os attrib.os
SHOBJS_PASS=stk_pass.os
SHOBJS_PASS2=stk_pass.os stk_layout.os
OBJS=$(OBJS_EXE) $(OBJS_EXE2) $(REFRESH_TEST_OBJS) $(SHOBJS) $(SHOBJS_PASS) $(SHOBJS_PASS2)
SRCS=$(OBJS_EXE:.o=.cc) $(OBJS_EXE2:.os=.cc) $(SHOBJS:.os=.cc) $(SHOBJS_PASS:.os=.cc) $(SHOBJS_PASS2:.os=.cc)
LAY_SH_INCL=-L$(ACT_HOME)/lib -lact_layout
include $(ACT_HOME)/scripts/Makefile.std
$(EXE): $(OBJS_EXE) $(REFRESH_TEST)
$(CXX) $(SH_EXE_OPTIONS) $(CFLAGS) main.o -o $(EXE) $(SHLIBACTPASS)
$(REFRESH_TEST): $(REFRESH_TEST_OBJS) pass_layout.so
$(CXX) $(SH_EXE_OPTIONS) $(CFLAGS) $(REFRESH_TEST_OBJS) pass_layout.so -o $(REFRESH_TEST) $(SHLIBACTPASS)
layout_refresh_test.o: test/layout_refresh_test.cc stk_layout.h
$(CXX) $(CFLAGS) $(DFLAGS) -c test/layout_refresh_test.cc -o $@
libact_layout.so: $(SHOBJS)
$(ACT_HOME)/scripts/linkso libact_layout.so $(SHOBJS) $(SHLIBACTPASS)
$(ACT_HOME)/scripts/install libact_layout.so $(INSTALLLIB)/libact_layout.so
pass_stk.so: $(SHOBJS_PASS) $(ACTPASSDEPEND)
$(ACT_HOME)/scripts/linkso pass_stk.so $(SHOBJS_PASS) $(SHLIBACTPASS)
pass_layout.so: $(SHOBJS_PASS2) $(ACTPASSDEPEND) libact_layout.so
$(ACT_HOME)/scripts/linkso pass_layout.so $(SHOBJS_PASS2) $(LAY_SH_INCL) $(SHLIBACTPASS)
mag.pl:
git checkout mag.pl
rect2lef.pl:
git checkout rect2lef.pl
-include Makefile.deps