mirror of
https://github.com/thepigeongenerator/tetris_clone.git
synced 2025-12-17 05:55:46 +01:00
sync config files with template
This commit is contained in:
197
.clang-format
Normal file
197
.clang-format
Normal file
@@ -0,0 +1,197 @@
|
|||||||
|
---
|
||||||
|
# ---------------------------
|
||||||
|
# general style settings
|
||||||
|
# ---------------------------
|
||||||
|
BasedOnStyle: '' # (LLVM,Google,Chromium,Mozilla,WebKit,Microsoft,GNU,InheritParentConfig)
|
||||||
|
Standard: Auto # automatically detect the language version
|
||||||
|
ColumnLimit: 0 # 0: disable column limit
|
||||||
|
LineEnding: LF # use LF line endings
|
||||||
|
UseTab: Never # (Never,ForIndentation,ForContinuationAndIndentation,Always)
|
||||||
|
TabWidth: 4 # recommended to set this equal to IndentWidth
|
||||||
|
IndentWidth: 4 # how wide each indent is
|
||||||
|
ContinuationIndentWidth: 4 # width for a line continuation
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# alignment options
|
||||||
|
# ---------------------------
|
||||||
|
AlignAfterOpenBracket: Align # (Align,DontAlign,AlwaysBreak,BlockIndent)
|
||||||
|
AlignArrayOfStructures: Left # (Left,Right,None)
|
||||||
|
AlignConsecutiveMacros: AcrossEmptyLines # (None,Consecutive,AcrossEmptyLines,AcrossComments,AcrossEmptyLinesAndComments)
|
||||||
|
AlignConsecutiveAssignments: None # (None,Consecutive,AcrossEmptyLines,AcrossComments,AcrossEmptyLinesAndComments)
|
||||||
|
AlignConsecutiveBitFields: AcrossEmptyLines # (None,Consecutive,AcrossEmptyLines,AcrossComments,AcrossEmptyLinesAndComments)
|
||||||
|
AlignConsecutiveDeclarations: None # (None,Consecutive,AcrossEmptyLines,AcrossComments,AcrossEmptyLinesAndComments)
|
||||||
|
AlignEscapedNewlines: Left # (DontAlign,Left,LeftWithLastLine,Right)
|
||||||
|
AlignOperands: Align # (DontAlign,Align,AlignAfterOperator)
|
||||||
|
AlignTrailingComments: Always # (Leave,Always,Never)
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# short constructs on a single line
|
||||||
|
# ---------------------------
|
||||||
|
AllowShortBlocksOnASingleLine: Always # (Never,Empty,Always)
|
||||||
|
AllowShortFunctionsOnASingleLine: All # (None,InlineOnly,Empty,All)
|
||||||
|
AllowShortLambdasOnASingleLine: All # (None,Empty,Inline,All)
|
||||||
|
AllowShortIfStatementsOnASingleLine: AllIfsAndElse # (Never,WithoutElse,OnlyFirstIf,AllIfsAndElse)
|
||||||
|
AllowShortCaseLabelsOnASingleLine: true
|
||||||
|
AllowShortEnumsOnASingleLine: true
|
||||||
|
AllowShortLoopsOnASingleLine: true
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# break and wrapping options
|
||||||
|
# ---------------------------
|
||||||
|
AlwaysBreakBeforeMultilineStrings: true # when defining multi-line strings, linebreak should be inserted
|
||||||
|
BreakAfterReturnType: Automatic # is decided by PenaltyReturnTypeOnItsOwnLine
|
||||||
|
BreakTemplateDeclarations: MultiLine # (Leave,No,MultiLine,Yes)
|
||||||
|
BreakBeforeBinaryOperators: None # (None,NonAssignment,All)
|
||||||
|
BreakBeforeConceptDeclarations: Never # (Never,Allowed,Always)
|
||||||
|
BreakBeforeBraces: Attach # (Attach,Linux,Mozilla,Stroustrup,Allman,Whitesmiths,GNU,WebKit,Custom)
|
||||||
|
BreakInheritanceList: BeforeColon # (BeforeColon,BeforeComma,AfterColon)
|
||||||
|
BreakConstructorInitializers: BeforeColon # (BeforeColon,BeforeComma,AfterColon)
|
||||||
|
BreakBeforeTernaryOperators: true
|
||||||
|
BreakStringLiterals: true
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# brace wrapping configuration
|
||||||
|
# ---------------------------
|
||||||
|
BraceWrapping:
|
||||||
|
AfterControlStatement: Never # (Never,MultiLine,Always)
|
||||||
|
AfterCaseLabel: false
|
||||||
|
AfterClass: false
|
||||||
|
AfterEnum: false
|
||||||
|
AfterFunction: false
|
||||||
|
AfterNamespace: false
|
||||||
|
AfterStruct: false
|
||||||
|
AfterUnion: false
|
||||||
|
AfterExternBlock: false
|
||||||
|
BeforeCatch: false
|
||||||
|
BeforeElse: false
|
||||||
|
BeforeLambdaBody: false
|
||||||
|
BeforeWhile: false
|
||||||
|
IndentBraces: false
|
||||||
|
SplitEmptyFunction: false
|
||||||
|
SplitEmptyRecord: false
|
||||||
|
SplitEmptyNamespace: false
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# constructor initializer and parameter packing options
|
||||||
|
# ---------------------------
|
||||||
|
ConstructorInitializerIndentWidth: 4
|
||||||
|
PackConstructorInitializers: BinPack # (Never,BinPack,CurrentLine,NextLine,NextLineOnly)
|
||||||
|
BinPackParameters: true # use bin-packing for paramter lists
|
||||||
|
BinPackArguments: false # false: function calls either on one line or one per line
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# pointer alignment
|
||||||
|
# ---------------------------
|
||||||
|
DerivePointerAlignment: false # automatically detect pointer alignment
|
||||||
|
PointerAlignment: Left # (Left,Right,Middle)
|
||||||
|
ReferenceAlignment: Pointer # (Pointer,Left,Right,Middle)
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# include settings and sorting
|
||||||
|
# ---------------------------
|
||||||
|
IncludeIsMainSourceRegex: '' # only [*.{c,cc,cpp,c++,cxx,m,mm}] are considered to be "main"
|
||||||
|
IncludeIsMainRegex: '([-_](test|unittest))?$' # regex used for identifying an include as "main", to assign catagory 0
|
||||||
|
IncludeBlocks: Regroup # (Preserve,Merge,Regroup)
|
||||||
|
IncludeCategories:
|
||||||
|
- Regex: '^<.*\.h>' # system headers
|
||||||
|
Priority: 1
|
||||||
|
SortPriority: 0
|
||||||
|
CaseSensitive: true
|
||||||
|
- Regex: '^".*' # custom headers
|
||||||
|
Priority: 2
|
||||||
|
SortPriority: 0
|
||||||
|
CaseSensitive: true
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# macro and language-specific settings
|
||||||
|
# ---------------------------
|
||||||
|
AttributeMacros:
|
||||||
|
- __capability
|
||||||
|
ForEachMacros:
|
||||||
|
- foreach
|
||||||
|
- Q_FOREACH
|
||||||
|
- BOOST_FOREACH
|
||||||
|
IfMacros:
|
||||||
|
- KJ_IF_MAYBE
|
||||||
|
StatementAttributeLikeMacros:
|
||||||
|
- Q_EMIT
|
||||||
|
StatementMacros:
|
||||||
|
- Q_UNUSED
|
||||||
|
- QT_REQUIRE_VERSION
|
||||||
|
WhitespaceSensitiveMacros:
|
||||||
|
- STRINGIZE
|
||||||
|
- PP_STRINGIZE
|
||||||
|
- BOOST_PP_STRINGIZE
|
||||||
|
- NS_SWIFT_NAME
|
||||||
|
- CF_SWIFT_NAME
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# additional formatting and sorting details
|
||||||
|
# ---------------------------
|
||||||
|
AllowAllArgumentsOnNextLine: false
|
||||||
|
AllowAllParametersOfDeclarationOnNextLine: false
|
||||||
|
EmptyLineAfterAccessModifier: Never # (Never,Leave,Always)
|
||||||
|
EmptyLineBeforeAccessModifier: LogicalBlock # (Never,Leave,LogicalBlock,Always)
|
||||||
|
ExperimentalAutoDetectBinPacking: false
|
||||||
|
FixNamespaceComments: true # adds comments at namespace delimiters
|
||||||
|
MaxEmptyLinesToKeep: 4 # what the maximum amount of empty lines that we're allowed to keep
|
||||||
|
ReflowComments: true # reflow comment text to match column limits
|
||||||
|
RemoveBracesLLVM: false # don't automatically remove braces
|
||||||
|
SeparateDefinitionBlocks: Leave # (Leave,Always.Never)
|
||||||
|
ShortNamespaceLines: 1 # how many lines a namespaces can be to be regarded "short"
|
||||||
|
SortIncludes: CaseSensitive # (Never,CaseSensitive,CaseInsensitive)
|
||||||
|
SortUsingDeclarations: LexicographicNumeric # (Never,Lexicographic,LexicographicNumeric)
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# spacing options
|
||||||
|
# ---------------------------
|
||||||
|
SpaceAfterCStyleCast: false
|
||||||
|
SpaceAfterLogicalNot: false
|
||||||
|
SpaceAfterTemplateKeyword: false
|
||||||
|
SpaceBeforeAssignmentOperators: true
|
||||||
|
SpaceBeforeCaseColon: false
|
||||||
|
SpaceBeforeCpp11BracedList: false
|
||||||
|
SpaceBeforeCtorInitializerColon: true
|
||||||
|
SpaceBeforeInheritanceColon: true
|
||||||
|
SpaceBeforeParens: ControlStatements # (ControlStatements,ControlStatementsExceptControlMacros,NonEmptyParentheses,Always,Custom)
|
||||||
|
SpaceBeforeParensOptions:
|
||||||
|
AfterControlStatements: true
|
||||||
|
AfterForeachMacros: true
|
||||||
|
AfterFunctionDefinitionName: false
|
||||||
|
AfterFunctionDeclarationName: false
|
||||||
|
AfterIfMacros: true
|
||||||
|
AfterOverloadedOperator: false
|
||||||
|
BeforeNonEmptyParentheses: false
|
||||||
|
SpaceAroundPointerQualifiers: Default # (Default,Before,After,Both) recommend to use Default and let PointerAlignment decide
|
||||||
|
SpaceBeforeRangeBasedForLoopColon: true
|
||||||
|
SpaceInEmptyBlock: true
|
||||||
|
SpacesInParens: Custom
|
||||||
|
SpacesInParensOptions:
|
||||||
|
ExceptDoubleParentheses: false
|
||||||
|
InConditionalStatements: false
|
||||||
|
InCStyleCasts: false
|
||||||
|
Other: false
|
||||||
|
SpacesBeforeTrailingComments: 1
|
||||||
|
SpacesInAngles: Never # (Never,Always,Leave)
|
||||||
|
SpacesInConditionalStatement: false
|
||||||
|
SpacesInContainerLiterals: true
|
||||||
|
SpacesInLineCommentPrefix:
|
||||||
|
Minimum: 1
|
||||||
|
Maximum: 1
|
||||||
|
SpacesInParentheses: false
|
||||||
|
SpacesInSquareBrackets: false
|
||||||
|
SpaceBeforeSquareBrackets: false
|
||||||
|
BitFieldColonSpacing: Both # (Both,None,Before,After)
|
||||||
|
|
||||||
|
# ---------------------------
|
||||||
|
# indentation details
|
||||||
|
# ---------------------------
|
||||||
|
IndentAccessModifiers: false
|
||||||
|
IndentCaseLabels: false
|
||||||
|
IndentCaseBlocks: false
|
||||||
|
IndentGotoLabels: true
|
||||||
|
IndentExternBlock: AfterExternBlock # (AfterExternBlock,NoIndent,Indent)
|
||||||
|
IndentRequiresClause: false
|
||||||
|
IndentPPDirectives: AfterHash # preprocessor indent style (None,AfterHash,BeforeHash)
|
||||||
|
PPIndentWidth: 1
|
||||||
|
...
|
||||||
23
.editorconfig
Normal file
23
.editorconfig
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
charset = utf-8
|
||||||
|
end_of_line = lf
|
||||||
|
insert_final_newline = true
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
|
||||||
|
[*.{rs}]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 4
|
||||||
|
|
||||||
|
[*.{c,h,cpp,hpp}]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 4
|
||||||
|
|
||||||
|
[makefile]
|
||||||
|
indent_style = tab
|
||||||
|
indent_size = 2
|
||||||
|
|
||||||
|
[*.{yaml,json}]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
||||||
28
.gitignore
vendored
28
.gitignore
vendored
@@ -1,7 +1,21 @@
|
|||||||
.cache
|
# ignore all dotfiles by default
|
||||||
.vscode/*
|
.*
|
||||||
!.vscode/tasks.json
|
|
||||||
!.vscode/launch.json
|
# rubbish we don't want to track
|
||||||
bin
|
~*
|
||||||
obj
|
*~
|
||||||
compile_commands.json
|
*.bak
|
||||||
|
|
||||||
|
# ignore output files
|
||||||
|
*.o
|
||||||
|
*.d
|
||||||
|
*.log
|
||||||
|
/bin/
|
||||||
|
/obj/
|
||||||
|
/compile_commands.json
|
||||||
|
|
||||||
|
# unignore dotfiles that we'd like to keep
|
||||||
|
!.gitignore
|
||||||
|
!.editorconfig
|
||||||
|
!/.clang-format
|
||||||
|
!/.github/
|
||||||
|
|||||||
21
.vscode/launch.json
vendored
21
.vscode/launch.json
vendored
@@ -1,21 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "2.0.0",
|
|
||||||
"configurations": [
|
|
||||||
{
|
|
||||||
"name": "(lldb) debug project",
|
|
||||||
"type": "lldb",
|
|
||||||
"request": "launch",
|
|
||||||
"program": "",
|
|
||||||
"linux": {
|
|
||||||
"preLaunchTask": "(dbg) compile linux-x86_64",
|
|
||||||
"program": "bin/linux-x86_64/${workspaceFolderBasename}",
|
|
||||||
"cwd": "bin/linux-x86_64/"
|
|
||||||
},
|
|
||||||
"windows": {
|
|
||||||
"preLaunchTask": "(dbg) compile win-x86_64",
|
|
||||||
"program": "bin/win-x86_64/${workspaceFolderBasename}.exe",
|
|
||||||
"cwd": "bin/win-x86_64/"
|
|
||||||
},
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
15
.vscode/tasks.json
vendored
15
.vscode/tasks.json
vendored
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "2.0.0",
|
|
||||||
"tasks": [
|
|
||||||
{
|
|
||||||
"label": "(dbg) compile linux-x86_64",
|
|
||||||
"type": "shell",
|
|
||||||
"command": "DEBUG=1 make linux-x86_64",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"label": "(dbg) compile win-x86_64",
|
|
||||||
"type": "shell",
|
|
||||||
"command": "DEBUG=1 make win-x86_64",
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
70
makefile
70
makefile
@@ -1,30 +1,41 @@
|
|||||||
|
# dependencies:
|
||||||
|
# - make
|
||||||
|
# - clang
|
||||||
|
# - bear (debug)
|
||||||
|
# - sdl2
|
||||||
|
# - git bash (windows)
|
||||||
|
#
|
||||||
|
# project name = the workspace directory name
|
||||||
NAME := $(shell basename $(PWD))
|
NAME := $(shell basename $(PWD))
|
||||||
|
|
||||||
# compiler settings
|
# compiler settings
|
||||||
CC := clang
|
CC := clang
|
||||||
STD := c17
|
STD := c17
|
||||||
LANG = c
|
LANG = c
|
||||||
CFLAGS := $(shell pkg-config --cflags sdl2 SDL2_ttf) -Wall -Wextra -Wpedantic -Wno-pointer-arith
|
CFLAGS := $(shell pkg-config --cflags sdl2) -Wall -Wextra -Wpedantic -Wno-pointer-arith
|
||||||
LDFLAGS := $(shell pkg-config --libs sdl2 SDL2_ttf) -lm
|
LDFLAGS := $(shell pkg-config --libs sdl2) -lm
|
||||||
|
DEBUG ?= 0
|
||||||
|
|
||||||
ifeq ($(DEBUG),1)
|
ifeq ($(DEBUG),1)
|
||||||
CFLAGS += -DDEBUG -Og -g
|
CFLAGS += -DDEBUG -fsanitize=address,undefined -g -Og
|
||||||
|
PROF := dbg
|
||||||
else
|
else
|
||||||
REL_FLAGS += -O3
|
REL_FLAGS += -O2
|
||||||
|
PROF := rel
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# dirs
|
# dirs
|
||||||
DIR_BIN := bin
|
DIR_BIN := bin
|
||||||
DIR_OBJ := obj
|
DIR_OBJ := obj
|
||||||
DIR_BUILD := $(DIR_BIN)/$(ARCH)
|
DIR_BUILD := $(DIR_BIN)/$(ARCH)/$(PROF)
|
||||||
DIR := $(DIR_BIN)/$(ARCH) $(DIR_OBJ)/$(ARCH)
|
DIR := $(DIR_BIN)/$(ARCH)/$(PROF) $(DIR_OBJ)/$(ARCH)/$(PROF)
|
||||||
|
|
||||||
# source files
|
# source files
|
||||||
SRC := $(wildcard src/*.c) $(wildcard src/**/*.c) $(wildcard src/**/**/*.c) $(wildcard src/**/**/**/*.c) $(wildcard src/**/**/**/**/*.c)
|
SRC := $(wildcard src/*.c) $(wildcard src/**/*.c) $(wildcard src/**/**/*.c) $(wildcard src/**/**/**/*.c) $(wildcard src/**/**/**/**/*.c)
|
||||||
SRC_ASSETS := $(wildcard assets/*)
|
SRC_ASSETS := $(wildcard assets/*)
|
||||||
|
|
||||||
# output locations
|
# output locations
|
||||||
OBJ := $(patsubst src/%,$(DIR_OBJ)/$(ARCH)/%,$(SRC:.c=.o))
|
OBJ := $(patsubst src/%,$(DIR_OBJ)/$(ARCH)/$(PROF)/%,$(SRC:.c=.o))
|
||||||
DEP := $(OBJ:.o=.d)
|
DEP := $(OBJ:.o=.d)
|
||||||
ASSETS := $(patsubst assets/%,$(DIR_BUILD)/%,$(SRC_ASSETS))
|
ASSETS := $(patsubst assets/%,$(DIR_BUILD)/%,$(SRC_ASSETS))
|
||||||
TARGET := $(DIR_BUILD)/$(NAME)$(EXT)
|
TARGET := $(DIR_BUILD)/$(NAME)$(EXT)
|
||||||
@@ -33,50 +44,55 @@ define wr_colour
|
|||||||
@echo -e "\033[$(2)m$(1)\033[0m"
|
@echo -e "\033[$(2)m$(1)\033[0m"
|
||||||
endef
|
endef
|
||||||
|
|
||||||
# sets the variables for the different targets
|
# set the correct environment variables depending on the platform
|
||||||
linux-x86_64:
|
ifeq ($(ARCH),linux-x86_64)
|
||||||
@$(MAKE) _build ARCH=linux-x86_64 CFLAGS="$(CFLAGS) -target x86_64-pc-linux-gnu"
|
CFLAGS += -target x86_64-pc-linux-gnu
|
||||||
win-x86_64:
|
else ifeq ($(ARCH),win-x86_64)
|
||||||
@$(MAKE) _build ARCH=win-x86-64 CFLAGS="$(CFLAGS) -target x86_64-pc-windows-gnu" EXT=".exe"
|
CFLAGS += -target x86_64-pc-windows-gnu
|
||||||
web:
|
EXT=.exe
|
||||||
@$(MAKE) _build ARCH=web CC=emcc EXT=".html"
|
else
|
||||||
|
$(error you must set the ARCH environment variable to one of these: 'linux-x86_64' 'win-x86_64')
|
||||||
|
endif
|
||||||
|
|
||||||
all: linux-x86_64 win-x86_64 web
|
# compiles and execute the binary
|
||||||
_build: compile_commands.json $(DIR) $(TARGET) $(ASSETS)
|
run: compile
|
||||||
|
./$(TARGET)
|
||||||
|
compile: compile_commands.json $(DIR) $(TARGET) $(ASSETS)
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(DIR_BIN) $(DIR_OBJ) compile_commands.json
|
rm -rf $(DIR_BIN) $(DIR_OBJ) compile_commands.json
|
||||||
|
|
||||||
# create the binary
|
# create the binary (linking step)
|
||||||
$(TARGET): $(OBJ)
|
$(TARGET): $(OBJ)
|
||||||
@$(call wr_colour,"using arguments: $(CFLAGS) $(LDFLAGS)",94)
|
@$(call wr_colour,"CC: '$(CC)'",94)
|
||||||
|
@$(call wr_colour,"CFLAGS: '$(CFLAGS)'",94)
|
||||||
|
@$(call wr_colour,"LDFLAGS: '$(LDFLAGS)'",94)
|
||||||
|
@$(call wr_colour,"linking to: '$@'",92)
|
||||||
@$(CC) -o $(TARGET) $^ $(CFLAGS) $(LDFLAGS)
|
@$(CC) -o $(TARGET) $^ $(CFLAGS) $(LDFLAGS)
|
||||||
|
@$(call wr_colour,"current profile: '$(PROF)'",93)
|
||||||
|
|
||||||
# create .o and .d files
|
# create .o and .d files
|
||||||
$(DIR_OBJ)/$(ARCH)/%.o: src/%.c
|
$(DIR_OBJ)/$(ARCH)/$(PROF)/%.o: src/%.c
|
||||||
|
@$(call wr_colour,"compiling $(notdir $@) from $(notdir $<)",92)
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
@$(CC) -o $@ -MD -MP -c $< $(CFLAGS) -std=$(STD) -x $(LANG) -Wno-unused-command-line-argument
|
@$(CC) -o $@ -MD -MP -c $< $(CFLAGS) -std=$(STD) -x $(LANG) -Wno-unused-command-line-argument
|
||||||
|
|
||||||
# copy assets
|
# copy assets
|
||||||
$(DIR_BUILD)/%: assets/%
|
$(DIR_BUILD)/%: assets/%
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
cp $< $@
|
cp -v $< $@
|
||||||
|
|
||||||
# create directories
|
# create directories
|
||||||
$(DIR):
|
$(DIR):
|
||||||
@mkdir -p $@
|
mkdir -p $@
|
||||||
|
|
||||||
# update compile commands if the makefile has been updated (for linting)
|
# update compile commands if the makefile has been updated (for linting)
|
||||||
ifeq ($(DEBUG),1)
|
ifeq ($(DEBUG),1)
|
||||||
compile_commands.json: makefile
|
compile_commands.json: makefile
|
||||||
@$(call wr_colour,"compiling in debug mode",93)
|
|
||||||
$(MAKE) clean
|
$(MAKE) clean
|
||||||
@touch compile_commands.json
|
@touch compile_commands.json
|
||||||
bear -- make
|
bear -- make compile
|
||||||
else
|
else
|
||||||
compile_commands.json: makefile
|
compile_commands.json:
|
||||||
@$(call wr_colour,"compiling in non-debug mode",93)
|
|
||||||
$(MAKE) clean
|
|
||||||
@touch compile_commands.json
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# include the dependencies
|
# include the dependencies
|
||||||
|
|||||||
Reference in New Issue
Block a user