From: Siraaj Khandkar <siraaj@khandkar.net>
Date: Sat, 31 Aug 2019 20:59:39 +0000 (-0400)
Subject: Implement a mini dependency management system
X-Git-Url: https://git.xandkar.net/?a=commitdiff_plain;h=b59a4c3b614ab4e5d5ccd0c9c9d8630f3dbc41e2;p=khome.git

Implement a mini dependency management system
---

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6713391
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+deps/*/data
diff --git a/Makefile b/Makefile
index 487b43d..5c490ba 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 MAKEFLAGS := --no-builtin-rules
 
-.PHONY: home pkgs_install pkgs_purge pkgs
+.PHONY: home pkgs_install pkgs_purge pkgs deps
 
 home:
 	@cp  -Rp  home/bin           $(HOME)/
@@ -24,3 +24,6 @@ pkgs_install: list pkgs-install
 
 pkgs_purge: list pkgs-purge
 	sudo apt purge $(shell ./list pkgs-purge)
+
+deps:
+	@$(foreach d,$(wildcard deps/*),cd $(d) && make)
diff --git a/deps/terminus-font-4.48/Makefile b/deps/terminus-font-4.48/Makefile
new file mode 100644
index 0000000..cc17239
--- /dev/null
+++ b/deps/terminus-font-4.48/Makefile
@@ -0,0 +1,31 @@
+.PHONY: maybeall all download extract build install
+
+maybeall:
+	$(MAKE) build
+	$(MAKE) install
+
+all:
+	$(MAKE) download
+	$(MAKE) extract
+	$(MAKE) build
+	$(MAKE) install
+
+download:
+	mkdir -p data
+	cd data && wget 'https://sourceforge.net/projects/terminus-font/files/terminus-font-4.48/terminus-font-4.48.tar.gz'
+
+extract:
+	cd data && tar xzf terminus-font-4.48.tar.gz
+
+build: data/terminus-font-4.48
+	cd data/terminus-font-4.48 && ./configure && make -j $(shell nproc)
+
+install: data/terminus-font-4.48
+	cd data/terminus-font-4.48 && make install fontdir
+
+
+data/terminus-font-4.48.tar.gz:
+	$(MAKE) download
+
+data/terminus-font-4.48: data/terminus-font-4.48.tar.gz
+	$(MAKE) extract