GNU make tricks

Author: Me Type: System

在理解 abstract machine 的过程中,难免需要理解Makefile做了什么。

于是有了:

make -nB

可以查看编译选项和编译过程,

但是可读性极差,而且无法直接导出到文件(原因待探索,推测由于输出不是从stdout出去的)。

make -nB ARCH=x86_64-qemu  \
        | grep -ve '^\(\#\|echo\|mkdir\|make\)' \
         | sed "s#$AM_HOME#\$AM_HOME#g" \
          | sed "s#$PWD#.#g" | vim -                         

# OSX不适用以上的脚本,因为OSX的 sed 对于path name escape的支持很差

注意:要vim - 才能让vimstdin读数据

- The file to edit is read from stdin. Commands are read from stderr, which should be a tty. ——— man vim

进去vim,我们又有一些小的trick帮助我们进行formatting

: set nowrap
: %s/ /\r\t/g 

美滋滋 😀

x86_64-linux-gnu-gcc
        -std=gnu11
        -O2
        -MMD
        -Wall
        -Werror
				- ...
...