forked from verilog-to-routing/vtr-verilog-to-routing
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
executable file
·48 lines (36 loc) · 3.17 KB
/
Makefile
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
#####################################################################
# Makefile to build CAD tools in Verilog-to-Routing (VTR) Framework #
#####################################################################
SUBDIRS = ODIN_II vpr abc_with_bb_support libarchfpga liblog ace2 libsdc_parse
all: notifications subdirs
subdirs: $(SUBDIRS)
$(SUBDIRS):
@ $(MAKE) -C $@ --no-print-directory VERBOSITY=0
notifications:
# checks if required packages are installed, and notifies the user if not
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep exuberant-ctags -c >>/dev/null; then echo "\n\n\n\n***************************************************************\n* Required package 'ctags' not found. *\n* Type 'make packages' to install all packages, or *\n* 'sudo apt-get install exuberant-ctags' to install manually. *\n***************************************************************\n\n\n\n"; fi; fi
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep bison -c >>/dev/null; then echo "\n\n\n\n*****************************************************\n* Required package 'bison' not found. *\n* Type 'make packages' to install all packages, or *\n* 'sudo apt-get install bison' to install manually. *\n*****************************************************\n\n\n\n"; fi; fi
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep flex -c >>/dev/null; then echo "\n\n\n\n*****************************************************\n* Required package 'flex' not found. *\n* Type 'make packages' to install all packages, or *\n* 'sudo apt-get install flex' to install manually. *\n*****************************************************\n\n\n\n"; fi; fi
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep g++ -c >>/dev/null; then echo "\n\n\n\n*****************************************************\n* Required package 'g++' not found. * \n* Type 'make packages' to install all packages, or *\n* 'sudo apt-get install g++' to install manually. *\n*****************************************************\n\n\n\n"; fi; fi
packages:
# checks if required packages are installed, and installs them if not
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep exuberant-ctags -c >>/dev/null; then sudo apt-get install exuberant-ctags; fi; fi
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep bison -c >>/dev/null; then sudo apt-get install bison; fi; fi
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep flex -c >>/dev/null; then sudo apt-get install flex; fi; fi
@ if cat /etc/issue | grep Ubuntu -c >>/dev/null; then if ! dpkg -l | grep g++ -c >>/dev/null; then sudo apt-get install g++; fi; fi
@ cd vpr && make packages
ODIN_II: libarchfpga
vpr: libarchfpga libsdc_parse
libarchfpga: liblog
ace2: abc_with_bb_support
clean:
@ cd ODIN_II && make clean
@ cd abc_with_bb_support && make clean
@ cd ace2 && make clean
@ cd vpr && make clean
@ cd libarchfpga && make clean
@ cd libsdc_parse && make clean
@ cd liblog && make clean
clean_vpr:
@ cd vpr && make clean
.PHONY: packages subdirs $(SUBDIRS)