diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..bf4ff53 --- /dev/null +++ b/Makefile @@ -0,0 +1,35 @@ +CXX = gcc +TARGET = exe +SOURCEFILE = main +CFLAGS = -Wall -Werror -I. -ansi -pedantic -fpic -g +LIST_LIBRARY = matrix/libMatrix + +#Generating the executable +$(TARGET): $(SOURCEFILE).o + @echo "Generating the executable" + $(CXX) $(CFLAGS) $(SOURCEFILE).o -o $(TARGET) + +$(SOURCEFILE).o: $(LIST_LIBRARY).so + @echo "Generating $(SOURCEFILE).o" + $(CXX) $(CFLAGS) -Lmatrix -lmatrix -c $(SOURCEFILE).c -o $@ -LlibMatrix -llibMatrix.so + +$(LIST_LIBRARY).so:clean + @echo "Generating libMatrix.so" $@ + #gcc matrix.c -I. -Wall -Werror -fpic -shared -o $(LIST_LIBRARY).so + $(CXX) -Wall -Werror -ansi -pedantic -I. matrix.c -o $(LIST_LIBRARY).so -shared -fpic + + +#Cleaning the executable +clean: + @echo "Cleaning temporary files and libMatrix.so" + rm -rf *.o *- *.so $(TARGET) + rm -rf $(LIST_LIBRARY).so +#Generating library +lib: + @echo "Generating libMatrix.so" + $(CXX) -Wall -Werror -ansi -pedantic -I. matrix.c -o $(LIST_LIBRARY).so -shared -fpic + +release: + @echo "Generating a release version of the program" + make CFLAGS= '-Wall -Werror -I. -ansi -pedantic -fpic' +