From 04776b08250dc9ceb4540b987e66ce76123d11ea Mon Sep 17 00:00:00 2001 From: Tom Ryser <rysertom@gmail.com> Date: Wed, 24 Nov 2021 09:52:01 +0100 Subject: [PATCH] #3 add makefile with structure. --- .gitignore | 51 +++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 13 ++++++++++++- Sources/main.c | 7 +++++++ Sources/stack.c | 6 ++++++ include/stack.h | 7 +++++++ makefile | 30 +++++++++++++++++++++++++++++ 6 files changed, 113 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 Sources/main.c create mode 100644 Sources/stack.c create mode 100644 include/stack.h create mode 100644 makefile diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bf9cabf --- /dev/null +++ b/.gitignore @@ -0,0 +1,51 @@ +# Prerequisites +*.d + +# Object files +*.o +*.ko +*.obj +*.elf + +# Linker output +*.ilk +*.map +*.exp + +# Precompiled Headers +*.gch +*.pch + +# Libraries +*.lib +*.la +*.lo + +# Shared objects (inc. Windows DLLs) +*.dll +*.so +*.so.* +*.dylib + +# Executables +*.exe +*.out +*.app +*.i*86 +*.x86_64 +*.hex + +# Debug files +*.dSYM/ +*.su +*.idb +*.pdb + +# Kernel Module Compile Results +*.mod* +*.cmd +.tmp_versions/ +modules.order +Module.symvers +Mkfile.old +dkms.conf diff --git a/README.md b/README.md index 2296846..c0af782 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,13 @@ -# stack +# Stack +``` +📦project + ┣ 📂include + ┃ ┗ 📜.h + ┣ 📂Sources + ┃ ┣ 📜main.c + ┃ ┗ 📜.c + ┣ 📜.gitignore + ┣ 📜makefile + ┗ 📜README.md + ``` \ No newline at end of file diff --git a/Sources/main.c b/Sources/main.c new file mode 100644 index 0000000..7bc6096 --- /dev/null +++ b/Sources/main.c @@ -0,0 +1,7 @@ +#include <stdio.h> +#include "../include/pile.h" + +int main(void) { + helloworld(); + return 0; +} \ No newline at end of file diff --git a/Sources/stack.c b/Sources/stack.c new file mode 100644 index 0000000..6649abe --- /dev/null +++ b/Sources/stack.c @@ -0,0 +1,6 @@ +#include "../include/pile.h" +#include <stdio.h> + +void helloworld(){ + printf("helloworld\n"); +} \ No newline at end of file diff --git a/include/stack.h b/include/stack.h new file mode 100644 index 0000000..24b2c11 --- /dev/null +++ b/include/stack.h @@ -0,0 +1,7 @@ +#ifndef PILE_H +#define PILE_H + +void helloworld(); + + +#endif \ No newline at end of file diff --git a/makefile b/makefile new file mode 100644 index 0000000..f3c5682 --- /dev/null +++ b/makefile @@ -0,0 +1,30 @@ +SRC_DIR := Sources +OBJ_DIR := obj +BIN_DIR := bin + +EXE := $(BIN_DIR)/stack.exe #exe name +SRC := $(wildcard $(SRC_DIR)/*.c) +OBJ := $(SRC:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o) + +CPPFLAGS := -Iinclude -MMD -MP +CFLAGS := -Wall +LDFLAGS := -Llib +LDLIBS := -lm + +.PHONY: all clean + +all: $(EXE) + +$(EXE): $(OBJ) | $(BIN_DIR) + $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@ + +$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c | $(OBJ_DIR) + $(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@ + +$(BIN_DIR) $(OBJ_DIR): + mkdir -p $@ + +clean: + @$(RM) -rv $(BIN_DIR) $(OBJ_DIR) + +-include $(OBJ:.o=.d) \ No newline at end of file -- GitLab