ccws13% more ~ftp/vos3/converters/makefile 
FFLAGS = -i,E,U,P,PL,LT,L,EU,CL,CU -W0,'LANGLVL(CONTI199,DARG(L),H8000)'
sample:         fconv.o \
       	        sample.o
(TAB)	f77 $(FFLAGS) -o sample sample.o fconv.o
fconv.o:
(TAB)	cc -c fconv.c
sample.o:
(TAB)	f77 $(FFLAGS) -c sample.f
  | ターゲット/依存関係行 | 1桁目から書く (ex.) sample: fconv.o sample.o | 
| コマンド行 | 先頭はタブ (ex.) cc -c fconv.c | 
| 推論規則 | 付録Bを参照のこと | 
| コメント | # ではじまる。次行に継続しない。 | 
| 行の継続 | 行末に \ | 
例) OBJ = prog1.o prog2.o prog3.o target.out : $(OBJ) $(CC) -o $@ $(OBJ) echo #? was recompiled. cp $@ bin/$*
SUBDIR = lib usr.lib bin usr.bin etc ucb games local all: $(SUBDIR) $(SUBDIR): cd $@; make $(MFLAGS) install: for i in $(SUBDIR); do \ (cd $$1; make $(MFLAGS) DESTDIR=$(DESTDIR) install); done clean: rm -f a.out core *.s *.o for i in $(SUBDIR); do (cd $$1; make $(MFLAGS) clean); done
        ________  ________
        |      ↓↓       |		cb: 清書プログラム
       cb  <--  vi  -->  lint		    % cb < main.c >new.c
                ↓			lint: 文法検査
		cc			    % lint -axc main.c
               |↓
               |ld
               ↓↓
               a.out
                ↑
                dbx
/lib/cpp Preprocessor(#include の展開) ↓ /lib/ccom Compiler Path1 ↓ /lib/c2 Compiler Path2 (.s の作成) (??, 95/8/21) ↓ /bin/as Assembler (.o の作成) ↓ /bin/ld Linkage editor (a.out の作成)
| -c | .o の作成 | 
| -g | dbx 用の実行可能ファイルを作成 | 
| -O | 最適化 | 
| -S | .s の作成 | 
| -E | プリプロセッサ処理のみ | 
| -C | 注釈行を除去しない | 
| -o | 出力ファイル名. 省略すると a.out | 
| -D name=value | "#define name=value" と同一。 | 
| -V name | #defin で定義した名称の取消。 | 
| -I directory | #include 文で指定したファイルを捜すディレクトリ名。 | 
| HP-UX | HI-UX | |||
|---|---|---|---|---|
| default | -a,archive | default | -a,archive | |
| C | yes | no | yes | no | 
| f77 | yes | no | 01-08 | no | 
| f90 | ||||
例)  .c.obj:
      (TAB)	$(CC) $(CFLAGS) $
2000/ 6/29 Converted to HTML format.