emscriptenのmakefile

emscriptenで大きめのプロジェクトをビルドする際に必要だと思ったので、今までmakeを書いたことがなかったゆとりPGが調べて書いた

Makefile

CC=emcc
OBJS=main.o class.o
main: $(OBJS)
        $(CC) -o main.html $(OBJS)

main.o: main.cpp
        $(CC) -c main.cpp

class.o: class.cpp
        $(CC) -c class.cpp

clean:
        rm -f main.html main.js $(OBJS)

ディレクトリのファイル構成は↓

至極シンプル

$ ls
Makefile  class.cpp  class.h  main.cpp

これを emmake make でビルド

$ emmake make
emcc -c main.cpp
emcc -c class.cpp
emcc -o main.html main.o class.o

$ ls
Makefile  class.cpp  class.h  class.o  main.cpp  main.html  main.js  main.o

cleanもできる

$ emmake make clean
rm -f main.html main.js main.o class.o

$ ls
Makefile  class.cpp  class.h  main.cpp

もっとマクロ等を使って効率的に書けるように今後も引き続き調べよう