added static lib to Makefile

This commit is contained in:
overflowerror 2021-05-21 16:08:16 +02:00
parent a56e217557
commit 13a260960b

View file

@ -9,13 +9,25 @@ LEX = flex
YACC = bison YACC = bison
YFLAGS = -y -d YFLAGS = -y -d
BIN = bin LIB_OBJS = obj/common.o obj/templates.o
all: $(BIN) BIN = parcival
A_LIB = libparcival.a
all: $(BIN) $(A_LIB)
$(BIN): gen/y.tab.c gen/lex.yy.c src/main.c src/tree.c src/common.c $(BIN): gen/y.tab.c gen/lex.yy.c src/main.c src/tree.c src/common.c
$(CC) $(CFLAGS) -o $@ $^ $(CC) $(CFLAGS) -o $@ $^
$(A_LIB): CFLAGS += -fPIC
$(A_LIB): $(LIB_OBJS)
$(AR) $(ARFLAGS) $@ $^
obj/%.o: src/%.c obj
$(CC) $(CFLAGS) -c -o $@ $<
obj:
mkdir -p $@
gen: gen:
mkdir -p $@ mkdir -p $@
@ -31,3 +43,6 @@ gen/lex.yy.c: src/scanner.l gen/y.tab.h gen
clean: clean:
rm -f gen/* rm -f gen/*
rm -f obj/*
rm -f $(BIN)
rm -f $(A_LIB)