diff --git a/.gitignore b/.gitignore index a5e439609c2154d55a489b9d93eb0beac2a37603..3902db19af7e13172feab5127a17d23203cdd382 100644 --- a/.gitignore +++ b/.gitignore @@ -79,7 +79,6 @@ CMakeCache.txt CMakeFiles CMakeScripts Testing -Makefile cmake_install.cmake install_manifest.txt compile_commands.json diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..a2d5da9f32eeab1eac6f4e40a4e88697814f70ab --- /dev/null +++ b/Makefile @@ -0,0 +1,25 @@ +# For implementation +CC=gcc -std=c99 +CFLAGS=-I./src -I./include +LIB= +OBJ=./src/utils.o + +%.o: %.c $(DEPS) + $(CC) -c -o $@ $< $(CFLAGS) + +mysh: $(OBJ) + $(CC) -o $@ $^ ./src/main.c $(CFLAGS) + +# For testing +CXX=g++ -std=c++11 +TESTING_FLAGS=-I./tests/src -I./tests/include $(CFLAGS) +TESTING_LIB=-lgtest -lgtest_main -L./tests/lib -lpthread $(LIB) +TESTING_SRC=./tests/src/command_parsing_test.cc +TESTING_EXE=mysh-test + +test: $(OBJ) + $(CXX) $(TESTING_FLAGS) -o $(TESTING_EXE) $(TESTING_SRC) $(OBJ) $(TESTING_LIB) + ./$(TESTING_EXE) + +clean: + rm -f $(TESTING_EXE) $(OBJ) mysh ./src/main.o