|  | # SPDX-FileCopyrightText: Copyright 2020 Jecel Mattos de Assumpcao Jr | 
|  | # | 
|  | # SPDX-License-Identifier: Apache-2.0 | 
|  | # | 
|  | # Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | # you may not use this file except in compliance with the License. | 
|  | # You may obtain a copy of the License at | 
|  | # | 
|  | #     https://www.apache.org/licenses/LICENSE-2.0 | 
|  | # | 
|  | # Unless required by applicable law or agreed to in writing, software | 
|  | # distributed under the License is distributed on an "AS IS" BASIS, | 
|  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | # See the License for the specific language governing permissions and | 
|  | # limitations under the License. | 
|  |  | 
|  |  | 
|  |  | 
|  | .PHONY: help | 
|  | help: | 
|  | @echo "      available commands (do 'make <command>')" | 
|  | @echo | 
|  | @awk '/^.PHONY/{print "    " $$2}' Makefile | 
|  |  | 
|  | .PHONY: init_block_flat | 
|  | init_block_flat: | 
|  | @echo | 
|  | @echo "       clearing user_projec_example" | 
|  | @echo | 
|  | rm -fR ../openlane/user_proj_example/* | 
|  | @echo | 
|  | @echo "       overwritting user_proj_example with 16x16 block" | 
|  | @echo | 
|  | cp config_block_flat.tcl ../openlane/user_proj_example/config.tcl | 
|  | cp pin_order.cfg ../openlane/user_proj_example/pin_order.cfg | 
|  |  | 
|  | .PHONY: init_block_cells | 
|  | init_block_cells: | 
|  | @echo | 
|  | @echo "       clearing user_projec_example" | 
|  | @echo | 
|  | rm -fR ../openlane/user_proj_example/* | 
|  | @echo | 
|  | @echo "       overwritting user_proj_example with 16x16 block using black box cells" | 
|  | @echo | 
|  | cp config_block_cells.tcl ../openlane/user_proj_example/config.tcl | 
|  | cp pdn_cells.tcl ../openlane/user_proj_example/pdn.tcl | 
|  | cp pin_order.cfg ../openlane/user_proj_example/pin_order.cfg | 
|  | @echo | 
|  | @echo "      creating new macro_placement.cfg file" | 
|  | @echo | 
|  | @echo -n >../openlane/user_proj_example/macro_placement.cfg | 
|  | @for r in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do \ | 
|  | for c in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do \ | 
|  | echo "mprj.blk.column\["$$c"\].row\["$$r"\].yc "$$(printf %.3f $$((937000+72000*$$c))e-3)" "$$(printf %.3f $$((1255000+90000*$$r))e-3)" S" >> ../openlane/user_proj_example/macro_placement.cfg; \ | 
|  | done \ | 
|  | done | 
|  |  | 
|  | .PHONY: macros_upw | 
|  | macros_upw: | 
|  | @echo | 
|  | @echo "      creating new macro_placement.cfg file for user_project_wrapper" | 
|  | @echo | 
|  | @echo "mprj.wbs 180.000 90.000 N" >../openlane/user_project_wrapper/macro_placement.cfg | 
|  | @for r in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do \ | 
|  | for c in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do \ | 
|  | echo "mprj.blk.column\["$$c"\].row\["$$r"\].yc "$$(printf %.3f $$((937000+72000*$$c))e-3)" "$$(printf %.3f $$((1255000+90000*$$r))e-3)" S" >> ../openlane/user_project_wrapper/macro_placement.cfg; \ | 
|  | done \ | 
|  | done | 
|  |  |