topdir.mk: Add target gitignore #102
6 changed files with 126 additions and 51 deletions
63
.gitignore
vendored
63
.gitignore
vendored
|
|
@ -1,16 +1,55 @@
|
||||||
dist
|
*.a
|
||||||
bin/*.sh
|
*.dep.mk
|
||||||
bin/*.py
|
|
||||||
*.done
|
|
||||||
*.dist
|
*.dist
|
||||||
|
*.done
|
||||||
|
*.jw-secret
|
||||||
|
*.jw-secret-file
|
||||||
|
*.ldscript
|
||||||
|
*.o
|
||||||
|
*.old
|
||||||
|
*.orig
|
||||||
*.out
|
*.out
|
||||||
test-out.txt
|
*.pc
|
||||||
make/.cache.mk
|
*.pyc
|
||||||
make/jw-pkg.pc
|
*.rep
|
||||||
minimal-to-master.sh
|
*.secret
|
||||||
pkg-build.dist
|
*.so
|
||||||
pkgconfig/
|
*.so.*
|
||||||
rebase.sh
|
*.swp
|
||||||
__pycache__
|
*_generated_*
|
||||||
|
*tmp*
|
||||||
|
*~
|
||||||
|
-test-out.txt
|
||||||
.cache-project.mk
|
.cache-project.mk
|
||||||
|
.exrc
|
||||||
|
.feedfs_history
|
||||||
|
.gdb_history
|
||||||
|
.jw-agit
|
||||||
|
.mypy_cache
|
||||||
|
.ruff_cache
|
||||||
|
__init__.py
|
||||||
|
__pycache__
|
||||||
|
bin/*.bat
|
||||||
|
bin/*.pl
|
||||||
|
bin/*.pm
|
||||||
|
bin/*.py
|
||||||
|
bin/*.sh
|
||||||
|
bin/*.tcl
|
||||||
|
conftest.py
|
||||||
|
core
|
||||||
|
dist
|
||||||
|
ld-*.conf
|
||||||
|
local.conf
|
||||||
|
local.mk
|
||||||
|
local.mk
|
||||||
|
local.yaml
|
||||||
|
make/*.pc
|
||||||
|
mkspec.sh
|
||||||
|
pr-descr*.txt
|
||||||
|
pre-local.mk
|
||||||
|
pyproject.toml
|
||||||
|
pyrightconfig.json
|
||||||
|
!*.jw-tmpl
|
||||||
|
!*.tmpl
|
||||||
.cache-projects.mk
|
.cache-projects.mk
|
||||||
|
make/ssh-wrapper.sh
|
||||||
|
|
|
||||||
4
Makefile
4
Makefile
|
|
@ -4,12 +4,16 @@ PKG_UPLOAD_URLPREFIX ?= rsync_ssh://$(JANWARE_USER)@pkg.janware.com:/srv/da
|
||||||
all:
|
all:
|
||||||
all: cache-projects
|
all: cache-projects
|
||||||
|
|
||||||
|
GITIGNORE_PATTERNS_TOP =
|
||||||
|
GITIGNORE_PATTERNS_END = .cache-projects.mk make/ssh-wrapper.sh
|
||||||
|
|
||||||
include $(TOPDIR)/make/proj.mk
|
include $(TOPDIR)/make/proj.mk
|
||||||
include $(JWBDIR)/make/topdir.mk
|
include $(JWBDIR)/make/topdir.mk
|
||||||
include $(JWBDIR)/make/srcdist.mk
|
include $(JWBDIR)/make/srcdist.mk
|
||||||
include $(JWBDIR)/make/git-cvs-bridge.mk
|
include $(JWBDIR)/make/git-cvs-bridge.mk
|
||||||
include $(JWBDIR)/make/py-topdir.mk
|
include $(JWBDIR)/make/py-topdir.mk
|
||||||
|
|
||||||
|
|
||||||
clean: clean.pkgconfig
|
clean: clean.pkgconfig
|
||||||
clean.pkgconfig:
|
clean.pkgconfig:
|
||||||
rm -rf pkgconfig
|
rm -rf pkgconfig
|
||||||
|
|
|
||||||
55
conf/templates/gitignore
Normal file
55
conf/templates/gitignore
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
{top}
|
||||||
|
*.a
|
||||||
|
*.dep.mk
|
||||||
|
*.dist
|
||||||
|
*.done
|
||||||
|
*.jw-secret
|
||||||
|
*.jw-secret-file
|
||||||
|
*.ldscript
|
||||||
|
*.o
|
||||||
|
*.old
|
||||||
|
*.orig
|
||||||
|
*.out
|
||||||
|
*.pc
|
||||||
|
*.pyc
|
||||||
|
*.rep
|
||||||
|
*.secret
|
||||||
|
*.so
|
||||||
|
*.so.*
|
||||||
|
*.swp
|
||||||
|
*_generated_*
|
||||||
|
*tmp*
|
||||||
|
*~
|
||||||
|
-test-out.txt
|
||||||
|
.cache-project.mk
|
||||||
|
.exrc
|
||||||
|
.feedfs_history
|
||||||
|
.gdb_history
|
||||||
|
.jw-agit
|
||||||
|
.mypy_cache
|
||||||
|
.ruff_cache
|
||||||
|
__init__.py
|
||||||
|
__pycache__
|
||||||
|
bin/*.bat
|
||||||
|
bin/*.pl
|
||||||
|
bin/*.pm
|
||||||
|
bin/*.py
|
||||||
|
bin/*.sh
|
||||||
|
bin/*.tcl
|
||||||
|
conftest.py
|
||||||
|
core
|
||||||
|
dist
|
||||||
|
ld-*.conf
|
||||||
|
local.conf
|
||||||
|
local.mk
|
||||||
|
local.mk
|
||||||
|
local.yaml
|
||||||
|
make/*.pc
|
||||||
|
mkspec.sh
|
||||||
|
pr-descr*.txt
|
||||||
|
pre-local.mk
|
||||||
|
pyproject.toml
|
||||||
|
pyrightconfig.json
|
||||||
|
!*.jw-tmpl
|
||||||
|
!*.tmpl
|
||||||
|
{end}
|
||||||
|
|
@ -19,8 +19,7 @@ clean: clean.topdir
|
||||||
clean.topdir: clean.py-check
|
clean.topdir: clean.py-check
|
||||||
|
|
||||||
pyproject.toml:
|
pyproject.toml:
|
||||||
$(PYTHON) $(JWB_SCRIPT_DIR)/jw-pkg.py -p $(PROJECTS_DIR) -t $(TOPDIR) --topdir-format unaltered projects create-file --format tmpl \
|
$(JW_PKG_TMPL_UPDATE) $@ --field mypypath='$(MYPY_PATH_DIRECTIVE)' $(PROJECT) > $@.tmp
|
||||||
--template-name $@ --search-path $(JW_PKG_CONF_BASE_DIR)/templates --field mypypath='$(MYPY_PATH_DIRECTIVE)' $(PROJECT) > $@.tmp
|
|
||||||
mv $@.tmp $@
|
mv $@.tmp $@
|
||||||
|
|
||||||
pyrightconfig.json:
|
pyrightconfig.json:
|
||||||
|
|
|
||||||
|
|
@ -95,6 +95,13 @@ ifneq ($(SUBDIRS_TO_ITERATE),)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
JW_PKG_TMPL_SEARCH_PATH ?= $(JW_PKG_CONF_BASE_DIR)/templates
|
||||||
|
JW_PKG_TMPL_UPDATE ?= $(PYTHON) $(JWB_SCRIPT_DIR)/jw-pkg.py -p $(PROJECTS_DIR) -t $(TOPDIR) --topdir-format unaltered \
|
||||||
|
projects create-file --format tmpl --search-path $(subst $(space),:,$(JW_PKG_TMPL_SEARCH_PATH)) --template-name
|
||||||
|
|
||||||
|
GITIGNORE_PATTERNS_TOP ?= $(PROJECT)
|
||||||
|
GITIGNORE_PATTERNS_END ?= $(addprefix !,$(shell git ls-files 2>/dev/null | grep "\(\b$(PROJECT)\b\|__init__.py\)" | xargs))
|
||||||
|
|
||||||
all: topdir config
|
all: topdir config
|
||||||
test: all
|
test: all
|
||||||
|
|
||||||
|
|
@ -307,3 +314,10 @@ Makefile: ;
|
||||||
%: $(TD_COPY_SRC)/% $$(foreach path,$$(TD_COPY_SRC_PATH),$$(wildcard $$(addprefix $$(path)/,$$@))) $$(wildcard $$@.*)
|
%: $(TD_COPY_SRC)/% $$(foreach path,$$(TD_COPY_SRC_PATH),$$(wildcard $$(addprefix $$(path)/,$$@))) $$(wildcard $$@.*)
|
||||||
cat $^ > $@.tmp
|
cat $^ > $@.tmp
|
||||||
mv $@.tmp $@
|
mv $@.tmp $@
|
||||||
|
|
||||||
|
gitignore:
|
||||||
|
$(JW_PKG_TMPL_UPDATE) gitignore --field-keys top,end \
|
||||||
|
$(addprefix --field top=,$(GITIGNORE_PATTERNS_TOP)) \
|
||||||
|
$(addprefix --field end=,$(GITIGNORE_PATTERNS_END)) \
|
||||||
|
--field-separator='%n' $(PROJECT) | grep -v '^[[:space:]]*$$' > .gitignore.tmp
|
||||||
|
mv .gitignore.tmp .gitignore
|
||||||
|
|
|
||||||
|
|
@ -97,42 +97,6 @@ cat_make_project_conf()
|
||||||
EOT
|
EOT
|
||||||
}
|
}
|
||||||
|
|
||||||
cat_gitignore()
|
|
||||||
{
|
|
||||||
cat <<-EOT
|
|
||||||
*.done
|
|
||||||
*.dist
|
|
||||||
*.dep.mk
|
|
||||||
.cache-project.mk
|
|
||||||
*.o
|
|
||||||
*.so.*
|
|
||||||
*.so
|
|
||||||
*.a
|
|
||||||
*.rep
|
|
||||||
ld-*.conf
|
|
||||||
*.ldscript
|
|
||||||
*.pc
|
|
||||||
$name
|
|
||||||
*_generated_*
|
|
||||||
*.secret
|
|
||||||
local.mk
|
|
||||||
.gdb_history
|
|
||||||
dist
|
|
||||||
mkspec.sh
|
|
||||||
*.out
|
|
||||||
*.orig
|
|
||||||
*.old
|
|
||||||
.feedfs_history
|
|
||||||
.exrc
|
|
||||||
*.swp
|
|
||||||
*tmp*
|
|
||||||
__init__.py
|
|
||||||
__pycache__
|
|
||||||
pyproject.toml
|
|
||||||
pyrightconfig.json
|
|
||||||
EOT
|
|
||||||
}
|
|
||||||
|
|
||||||
# ---------------------- here we go
|
# ---------------------- here we go
|
||||||
|
|
||||||
myname=`basename $0`
|
myname=`basename $0`
|
||||||
|
|
@ -193,7 +157,7 @@ cat_make_Makefile > make/Makefile
|
||||||
cat_VERSION > VERSION
|
cat_VERSION > VERSION
|
||||||
cat_make_proj_mk > make/proj.mk
|
cat_make_proj_mk > make/proj.mk
|
||||||
cat_make_project_conf > make/project.conf
|
cat_make_project_conf > make/project.conf
|
||||||
cat_gitignore > .gitignore
|
make gitignore
|
||||||
|
|
||||||
log Successfully created project template \"$name\".
|
log Successfully created project template \"$name\".
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue