C/C++のソースコードを生成するツール
ソースをささっと書きたい、でも後で使うときに備えてそれなりの体裁に整えておきたい。そんなニーズを満たすべく、ソースコードを吐き出すツールを作っています。
https://github.com/vottie/codegen
使い方ですが、codegen.sh cって打つと、以下のような形でプロジェクト名とファイル名を入れてくださいって表示されます。
codegen % codegen.sh c
USAGE:
codegen.sh c project_name file_name
codegen %
hello world的なものをやりたいなぁですと、
codegen % codegen.sh hello hello
これでhelloってディレクトリができます。その中に入って見ると、以下のファイルが出来上がっているはずです。
% ls
Makefile hello.c hello.h main.c
%
hello % cat main.c
#include <stdio.h>
#include "hello.h"
int main(int argc, char **args) {
return 0;
}
hello % cat hello.c
#include <stdio.h>
#include "hello.h"
int execute() {
return 0;
}
hello % cat hello.h
#ifndef HELLO_H_
#define HELLO_H_
/**
*
*/
int execute();
#endif // HELLO_H_
hello % cat Makefile
CXX=gcc
CXXFLAGS= -O0 -Wall -g
LDFLAGS=
TARGET=main
OPT=
INC=
LIB=
SRC=$(shell ls *.c)
HEAD=$(shell ls *.h)
OBJ=$(SRC:. c=.o)
all: $(TARGET)
$(TARGET): $(OBJ)
$(CXX) $(CXXFLAGS) -o $(TARGET) $(OBJ) $(LIB)
clean:
$(RM) $(TARGET) *.o
私はMakefileを書くのは苦手です。コピペして作れば良いとは思うんですけど、さくっと書いて動かしたい時に、ニーズにあったMakefileを探すのが面倒だったり。ですので、Makefileを自動生成するツールを作ってみました。
上記のソースについては、execute()の中身を実装してmain.c側で呼び出してあげるように実装し、makeを実行すれば、mainという実行ファイルができると思います。
Trackbacks and Pingbacks on this post
No trackbacks.
- TrackBack URL
Comments on this post