Implement a mini dependency management system
authorSiraaj Khandkar <siraaj@khandkar.net>
Sat, 31 Aug 2019 20:59:39 +0000 (16:59 -0400)
committerSiraaj Khandkar <siraaj@khandkar.net>
Sat, 31 Aug 2019 20:59:39 +0000 (16:59 -0400)
.gitignore [new file with mode: 0644]
Makefile
deps/terminus-font-4.48/Makefile [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..6713391
--- /dev/null
@@ -0,0 +1 @@
+deps/*/data
index 487b43d..5c490ba 100644 (file)
--- 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 (file)
index 0000000..cc17239
--- /dev/null
@@ -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
This page took 0.031083 seconds and 4 git commands to generate.