From 74cbd64cd3d100b50bed497986d5baa8e882819f Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Wed, 6 Aug 2025 08:36:56 +0200 Subject: [PATCH] Makefile added with Version 1.4 --- Makefile | 45 +++++++++++++++++++++++++++++---------------- init | 12 ------------ make.d/init.mk | 15 +++++++++++++++ pylibs | 2 +- 4 files changed, 45 insertions(+), 29 deletions(-) delete mode 100755 init create mode 100755 make.d/init.mk diff --git a/Makefile b/Makefile index d4fd399..cc46279 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,33 @@ -# git helper Makefile: Version 1.3 (2025-08-05) +# git helper Makefile: Version 1.4 (2025-08-05) default: help .ONESHELL: SHELL = /usr/bin/bash .SILENT: +-include make.d/*.mk + GIT_FLAG = ./.git VENV_FLAG = ./.venv_required VENV_FOLDER = ./venv -INIT_FILE = ./init + +localhelp: help: - echo "Possible options are: init, status, venv_flag, clean, cleanall" + echo "Possible common options are:" + echo " - init - Initialise the repository and all folders below with a Makefile" + echo " - giti - Get the git status of all submodules including their submodules" + echo " - update_submodules - Set all submodules to remote master" + echo " - venv_flag - Set the venev flag for the base folder. A venv will be generated" + echo " - clean - clean up" + echo " - deepclean - clean up this and all Makefiles below" + $(MAKE) localhelp + echo "You are able to create files make.d/*.mk and add local rules there. " + echo " - localinit - Will be executed as last step in the init process." + echo " - localhelp - Will be executed in th middle of the help text generation" + echo " - localclean - Will be executed before the clean rule" + +localinit: init: print_head # Init git repo @@ -29,26 +45,23 @@ init: print_head mkvenv fi fi - # Start my init script if needed - if [[ -x $(INIT_FILE) ]]; then - $(INIT_FILE) - fi + # Start local init + $(MAKE) localinit update_submodules: git submodule foreach "git checkout master && git pull && git submodule init && git submodule update" -status: print_head +giti_sub: print_head giti - echo "Submodules:" - echo "-----------" - git submodule --quiet foreach giti + echo " Submodules:" + git submodule --quiet foreach "echo -n ' ' && giti" -statusall: - for subdir in $$(find . -maxdepth 2 -mindepth 2 -name Makefile | sort); do - $(MAKE) --no-print-directory -C $$(dirname $$subdir) status - done +giti: + git submodule --quiet foreach make --no-print-directory giti_sub -clean: +localclean: + +clean: localclean if [[ ! -e $(VENV_FLAG) ]]; then if [[ -d $(VENV_FOLDER) ]]; then rm -rf $(VENV_FOLDER) diff --git a/init b/init deleted file mode 100755 index 45090da..0000000 --- a/init +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -# -echo "* Linking pylibs to venv" -for path in `find pylibs/ -maxdepth 1 -type d`; do - if [[ $path != "pylibs/" ]];then - lib=${path#*/} - echo Creating symbolic link for library $lib - rm -f venv/lib/python*/site-packages/$lib - ln -s ../../../../$path venv/lib/python*/site-packages/ - fi -done - diff --git a/make.d/init.mk b/make.d/init.mk new file mode 100755 index 0000000..41681d1 --- /dev/null +++ b/make.d/init.mk @@ -0,0 +1,15 @@ +.ONESHELL: +SHELL = /usr/bin/bash +.SILENT: + +localinit: + echo "* Linking pylibs to venv" + for path in `find pylibs/ -maxdepth 1 -type d`; do + if [[ $path != "pylibs/" ]];then + lib=${path#*/} + echo Creating symbolic link for library $lib + rm -f venv/lib/python*/site-packages/$lib + ln -s ../../../../$path venv/lib/python*/site-packages/ + fi + done + diff --git a/pylibs b/pylibs index 39994b2..f7af8ee 160000 --- a/pylibs +++ b/pylibs @@ -1 +1 @@ -Subproject commit 39994b26a2ef2e667e7094dac05777c696408857 +Subproject commit f7af8ee09dc57442663c5948a8915ca869ba730a