(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