CC=gcc CFLAGS=-Wall -Werror -pedantic -fpic -g -std=c89 LIBSDIR=-L/usr/lib -L../Libs INCLUDEDIR=-I/usr/include -I. #Library variables LIBTARGET=libMatrix.so LIBSOURCE=list CellElement matrix LIBSOURCECFILE=$(LIBSOURCE:=.c) LIBSOURCEOFILE=$(LIBSOURCE:=.o) #Generating the library binary $(LIBTARGET): $(LIBSOURCEOFILE) @echo "\n Generating the library binary" $(CC) $(CFLAGS) -shared $(LIBSOURCEOFILE) -o ../Libs/$(LIBTARGET) #Generating object files .c.o: @echo "\n Generating " $@ " from " $< $(CC) $(CFLAGS) $(INCLUDEDIR) -c -o $@ $< #Cleaning clean: @echo "\n Cleaning" rm -rf *.o *.exe *.so