diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..86f0ae6 --- /dev/null +++ b/Makefile @@ -0,0 +1,43 @@ +PROJ=libcmd +CC=gcc +CFLAGS=-g3 +LDFLAGS= +RAGEL=ragel +DOT=dot + +SOURCE=cmd cmd_parse +OBJECTS=$(SOURCE:=.o) +SOURCES=$(SOURCE:=.c) + +%.o: %.c + $(CC) $(CFLAGS) -c $< + + +make: dynamic static object + +dynamic: CFLAGS+=-fPIC +dynamic: clean $(OBJECTS) + $(CC) $(CFLAGS) $(OBJECTS) -shared -o $(PROJ).so + +static: clean $(OBJECTS) + ar rcs $(PROJ).a $(OBJECTS) + +object: clean $(OBJECTS) + ld -r $(OBJECTS) -o $(PROJ).o + +ragel: + $(RAGEL) cmd_parse.ragel + +cli: + $(CC) $(CFLAGS) -L./ -I./ -lcmd ./test/cmd_cli.c -o ./cmd_cli + +pdf: + $(RAGEL) -V cmd_parse.ragel -o cmd_parse.dot + $(DOT) -Tpdf cmd_parse.dot -o cmd_parse.pdf + +leak: + valgrind --leak-check=full --track-origins=yes --log-file=log.txt ./cmd_cli + +clean: + rm -f cmd_cli + rm -rf *.so *.o *.dot *.pdf |