summaryrefslogtreecommitdiff
path: root/Makefile
blob: 0dd526119fab6555c575785a2165baa9390fe880 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
.POSIX:

LIBDIR=lib
OBJDIR=obj
SRCDIR=src
INCDIR=include
CFLAGS=-I$(INCDIR) -Wall -Wextra -Wpedantic -g

OBJECTS=$(OBJDIR)/mapalloc.o

all: $(LIBDIR)/libmapalloc.a $(LIBDIR)/libmapalloc.so

$(OBJDIR)/mapalloc.o: $(SRCDIR)/mapalloc.c $(INCDIR)/mapalloc.h
	@mkdir -p $(@D)
	$(CC) -c -o $@ $(CFLAGS) $(SRCDIR)/$(*F).c

$(LIBDIR)/libmapalloc.a: $(OBJECTS)
	@mkdir -p $(@D)
	$(AR) $(ARFLAGS) $@ $<

$(LIBDIR)/libmapalloc.so: $(OBJECTS)
	@mkdir -p $(@D)
	$(CC) -o $@ -shared $(OBJECTS)

clean:
	$(RM) -rf $(LIBDIR) $(OBJDIR)