Skip to content

Commit

Permalink
minor tidy up
Browse files Browse the repository at this point in the history
  • Loading branch information
proddy committed Nov 28, 2024
1 parent 4de56af commit 4471c1f
Show file tree
Hide file tree
Showing 5 changed files with 86 additions and 11 deletions.
38 changes: 31 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,25 @@
# This is mainly used to generate the .o files for SonarQube analysis
#

NUMJOBS=${NUMJOBS:-" -j10 "}
MAKEFLAGS+="j "
_mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))
I := $(patsubst %/,%,$(dir $(_mkfile_path)))

ifneq ($(words $(MAKECMDGOALS)),1)
.DEFAULT_GOAL = all
%:
@$(MAKE) $@ --no-print-directory -rRf $(firstword $(MAKEFILE_LIST))
else
ifndef ECHO
T := $(shell $(MAKE) $(MAKECMDGOALS) --no-print-directory \
-nrRf $(firstword $(MAKEFILE_LIST)) \
ECHO="COUNTTHIS" | grep -c "COUNTTHIS")
N := x
C = $(words $N)$(eval N := x $N)
ECHO = python $(I)/echo_progress.py --stepno=$C --nsteps=$T
endif

JOBS ?= $(shell nproc)
MAKEFLAGS += -j $(JOBS) -l $(JOBS)

#----------------------------------------------------------------------
# Project Structure
Expand Down Expand Up @@ -125,23 +142,27 @@ COMPILE.cpp = $(CXX) $(CXX_STANDARD) $(CXXFLAGS) $(DEPFLAGS) -c $< -o $@
.SILENT: $(OUTPUT)

all: $(OUTPUT)
@$(ECHO) All done

$(OUTPUT): $(OBJS)
@mkdir -p $(@D)
@$(ECHO) Linking $@
$(LINK.o)
$(SYMBOLS.out)

$(BUILD)/%.o: %.c
@mkdir -p $(@D)
$(COMPILE.c)
@$(ECHO) Compiling $@
@$(COMPILE.c)

$(BUILD)/%.o: %.cpp
@mkdir -p $(@D)
$(COMPILE.cpp)
@$(ECHO) Compiling $@
@$(COMPILE.cpp)

$(BUILD)/%.o: %.s
@mkdir -p $(@D)
$(COMPILE.s)
@$(COMPILE.s)

cppcheck: $(SOURCES)
$(CPPCHECK) $(CHECKFLAGS) $^
Expand All @@ -150,11 +171,14 @@ run: $(OUTPUT)
@$<

.PHONY: clean

clean:
@$(RM) -rf $(BUILD) $(OUTPUT)

help:
@echo available targets: all run clean
@echo $(OUTPUT)

-include $(DEPS)
-include $(DEPS)

endif
22 changes: 21 additions & 1 deletion cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,25 @@
}
],
"dictionaries": ["project-words"],
"ignorePaths": ["node_modules", "compile_commands.json", "WWWData.h", "**/venv/**", "lib/eModbus", "lib/ESPAsyncWebServer", "lib/espMqttClient", "analyse.html", "dist", "**/*.csv", "**/*.md", "**/*.py", "locale_translations.h", "TZ.tsx", "**/*.txt","build/**", "**/i18n/**", "/project-words.txt"]
"ignorePaths": [
"node_modules",
"compile_commands.json",
"WWWData.h", "**/venv/**",
"lib/eModbus",
"lib/ESPAsyncWebServer",
"lib/espMqttClient",
"analyse.html",
"dist",
"**/*.csv",
"**/*.md",
"**/*.py",
"locale_translations.h",
"TZ.tsx",
"**/*.txt",
"build/**",
"**/i18n/**",
"/project-words.txt",
"Makefile",
"src/modbus_entity_parameters.hpp"
]
}
27 changes: 27 additions & 0 deletions echo_progress.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
"""
Print makefile progress
"""

import argparse
import math
import sys

def main():
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--stepno", type=int, required=True)
parser.add_argument("--nsteps", type=int, required=True)
parser.add_argument("remainder", nargs=argparse.REMAINDER)
args = parser.parse_args()

nchars = int(math.log(args.nsteps, 10)) + 1
fmt_str = "[{:Xd}/{:Xd}]({:6.2f}%)".replace("X", str(nchars))
progress = 100 * args.stepno / args.nsteps
sys.stdout.write(fmt_str.format(args.stepno, args.nsteps, progress))
for item in args.remainder:
sys.stdout.write(" ")
sys.stdout.write(item)
sys.stdout.write("\n")

if __name__ == "__main__":
main()

4 changes: 2 additions & 2 deletions scripts/generate_csv_and_headers.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ EOL

# build emsesp for standalone
make clean
make ARGS=-DEMSESP_STANDALONE
make -s ARGS=-DEMSESP_STANDALONE

# Generate Modbus entity parameters
# One to build the modbus_entity_parameters.hpp header file
Expand All @@ -43,7 +43,7 @@ echo "test entity_dump" | ./emsesp | python3 ./scripts/strip_csv.py | python3 ./
ls -al ./src/modbus_entity_parameters.hpp

# dump_entities.csv
make ARGS=-DEMSESP_STANDALONE
make -s ARGS=-DEMSESP_STANDALONE
rm -f ./docs/dump_entities.csv
echo "test entity_dump" | ./emsesp | python3 ./scripts/strip_csv.py >./docs/dump_entities.csv
ls -al ./docs/dump_entities.csv
Expand Down
6 changes: 5 additions & 1 deletion scripts/update_web.sh → scripts/update_all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

# run from root
# make sure ncu is installed globally (https://github.com/raineorshine/npm-check-updates)
# as well as GNUMake (make) and python3

cd interface
ncu -u
Expand All @@ -16,4 +17,7 @@ yarn set version stable
yarn
yarn format

cd ..
cd ..
npx cspell "**"

sh ./scripts/generate_csv_and_headers.sh

0 comments on commit 4471c1f

Please sign in to comment.