bash-util/Makefile

71 lines
1.6 KiB
Makefile
Raw Permalink Normal View History

UNAME := $(shell uname)
ifeq ($(UNAME),Linux)
OPEN=xdg-open
PREFIX ?= /usr/local
else ifeq ($(UNAME),Darwin)
OPEN=open
PREFIX ?= $(HOME)/.local
else ifeq ($(OS),Windows_NT)
OPEN=start
PREFIX ?= /usr/local
else
OPEN=xdg-open
PREFIX ?= /usr/local
endif
INSTALL ?= install
HELPERS := $(wildcard *.bash)
DIST_HELPERS := $(foreach HELPER,$(HELPERS),dist/lib/bash-util/$(HELPER))
DIST_HELPER_LINKS := $(foreach HELPER,$(HELPERS),dist/bin/$(HELPER))
SCRIPTS := $(shell for fsname in $(wildcard scripts/*); \
do [ ! -d $$fsname ] && echo $$fsname || :; done)
DIST_SCRIPTS := $(foreach SCRIPT,$(SCRIPTS),dist/bin/$(shell basename $(SCRIPT)))
dist: dist/bin dist/lib/bash-util $(DIST_HELPERS) $(DIST_HELPER_LINKS) $(DIST_SCRIPTS) $(PREFIX)/bin/util
dist/bin:
mkdir -pv $@
dist/bin/%.bash: %.bash
ln -sf ../lib/bash-util/$*.bash $@
dist/bin/%: scripts/% dist/bin
sed 's/^\(.\s\+\)\("\)*.\+\/util\//\1\2$(shell \
2024-10-01 10:32:49 -05:00
echo -n $(PREFIX) | sed 's/\([$\/]\)/\\\1/g')\/lib\/bash-util\//' < $< > $@
chmod 755 $@
dist/lib/bash-util:
mkdir -pv $@
dist/lib/bash-util/%.bash: %.bash
cp $< $@
chmod 644 $@
$(PREFIX)/bin/util:
ln -sf $(PREFIX)/lib/bash-util $(PREFIX)/bin/util
install: dist
cd dist && \
for each in *; \
do cp -rv "$$each"/* "$(PREFIX)/$$each/"; \
done
clean:
rm -rf dist
2024-04-14 23:43:00 -05:00
.PHONY: dist install README
### README #####################################################################
pub.css:
wget https://github.com/manuelp/pandoc-stylesheet/raw/acac36b976966f76544176161ba826d519b6f40c/pub.css
# Requires Pandoc to be installed
README.html: README.md pub.css
pandoc $< -s -c pub.css -o README.html
$(OPEN) README.html
README: README.html