CC=gcc
CFLAGS=
LIB_FILE = libeasysock.so

.PHONY: all
all: $(LIB_FILE)


$(LIB_FILE): easysock.o
	$(CC) $(CFLAGS) -shared easysock.o -o $(LIB_FILE)

easysock.o: easysock.c easysock.h
	$(CC) $(CFLAGS) -fpic -c easysock.c -o easysock.o

.PHONY: allwarn
allwarn: CFLAGS+=-Wall -Wextra -pedantic
allwarn: $(LIB_FILE)


.PHONY: debug
debug: CFLAGS+=-g
debug: $(LIB_FILE)

.PHONY: static	
static:




.PHONY: install

ifndef PREFIX
PREFIX := /usr/local
endif

install: $(LIB_FILE)
	install -d $(DESTDIR)$(PREFIX)/lib
	install -m 755 $(LIB_FILE) $(DESTDIR)$(PREFIX)/lib
	
	install -d $(DESTDIR)$(PREFIX)/include
	install -m 644 easysock.h $(DESTDIR)$(PREFIX)/include

.PHONY: clean
clean:
	rm *.o
	rm $(LIB_FILE)


.PHONY: uninstall
uninstall:
	rm $(DESTDIR)$(PREFIX)/lib/$(LIB_FILE)
	rm $(DESTDIR)$(PREFIX)/include/easysock.h