(clang) added project for C
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
bin/
|
||||
|
||||
*.o
|
||||
|
||||
*.pdf
|
||||
|
||||
*.a
|
||||
*.so
|
||||
*.tar
|
||||
|
||||
*.zip
|
||||
*.xz
|
||||
*.gz
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
SHELL := /usr/bin/env bash
|
||||
|
||||
PREFIX :=
|
||||
CC := $(PREFIX)gcc
|
||||
LD := $(PREFIX)ld
|
||||
SIZE := $(PREFIX)size
|
||||
GDB := $(PREFIX)gdb
|
||||
|
||||
NAME := c-test-project
|
||||
|
||||
SRC_DIR := ./src
|
||||
INC_DIR := ./inc
|
||||
BIN_DIR := ./bin
|
||||
OBJ_DIR := $(BIN_DIR)/obj
|
||||
|
||||
OPT_LEVEL := -g3 \
|
||||
-O0
|
||||
|
||||
C_SRC := main.c
|
||||
|
||||
C_DEF :=
|
||||
C_DEF := $(addprefix -D, $(C_DEF))
|
||||
|
||||
C_INC := $(INC_DIR)
|
||||
C_INC := $(addprefix -I, $(C_INC))
|
||||
|
||||
C_FLAGS := $(C_DEF) \
|
||||
$(C_INC) \
|
||||
$(OPT_LEVEL) \
|
||||
-Wall \
|
||||
-Wextra \
|
||||
-Wpedantic \
|
||||
-Wconversion \
|
||||
-Wsign-conversion \
|
||||
-Wsign-compare \
|
||||
-Wcast-align=strict \
|
||||
-Wfloat-equal \
|
||||
-Wlogical-op \
|
||||
-Wno-unused-command-line-argument \
|
||||
-Werror
|
||||
|
||||
BINARY := $(BIN_DIR)/$(NAME)
|
||||
|
||||
MKDIR := $(BIN_DIR) $(OBJ_DIR)
|
||||
|
||||
VPATH := $(SRC_DIR)
|
||||
|
||||
|
||||
.PHONY: all clean test
|
||||
|
||||
all: clean $(MKDIR) $(BINARY)
|
||||
|
||||
clean:
|
||||
@rm -rf $(MKDIR)
|
||||
|
||||
$(MKDIR):
|
||||
@mkdir -p $@
|
||||
|
||||
$(BINARY): $(C_SRC)
|
||||
gcc $(C_FLAGS) $^ -o $@
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
printf("hello world");
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user