|
Packit |
0ea5da |
maindir ?= $(shell pwd)
|
|
Packit |
0ea5da |
kbddir := $(maindir)/Keyboard
|
|
Packit |
0ea5da |
fntdir := $(maindir)/Fonts
|
|
Packit |
0ea5da |
include rules.mk
|
|
Packit |
0ea5da |
include Keyboard/Makefile
|
|
Packit |
0ea5da |
include Fonts/Makefile
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
# The following two shortcuts will be redefined, so they can not be
|
|
Packit |
0ea5da |
# used in recipes and target specific variables.
|
|
Packit |
0ea5da |
. := $(maindir)
|
|
Packit |
0ea5da |
~ := main
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
prefix := /usr/local
|
|
Packit |
0ea5da |
# etcdir must be either /etc or
|
|
Packit |
0ea5da |
etcdir := $(prefix)/etc
|
|
Packit |
0ea5da |
bootprefix := $(patsubst %/usr,%/,$(prefix:%/=%))
|
|
Packit |
0ea5da |
mandir := $(prefix)/share/man
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
acmfiles := $(wildcard $./acm/*.acm)
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
gzipped_acmfiles := $(addsuffix .gz, $(acmfiles))
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
gzipped-acmfiles : $(gzipped_acmfiles)
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
build-common: gzipped-acmfiles
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: install-common
|
|
Packit |
0ea5da |
install-common: build-common
|
|
Packit |
0ea5da |
install -d $(bootprefix)/bin/
|
|
Packit |
0ea5da |
install setupcon $(bootprefix)/bin/
|
|
Packit |
0ea5da |
install -d $(etcdir)/default
|
|
Packit |
0ea5da |
install -m 644 config/keyboard $(etcdir)/default/
|
|
Packit |
0ea5da |
install -m 644 config/console-setup $(etcdir)/default/
|
|
Packit |
0ea5da |
install -d $(mandir)/man1/
|
|
Packit |
0ea5da |
install -m 644 man/setupcon.1 $(mandir)/man1/
|
|
Packit |
0ea5da |
install -d $(mandir)/man5/
|
|
Packit |
0ea5da |
install -m 644 man/keyboard.5 $(mandir)/man5/
|
|
Packit |
0ea5da |
install -m 644 man/console-setup.5 $(mandir)/man5/
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: install-common-linux
|
|
Packit |
0ea5da |
install-common-linux: build-linux
|
|
Packit |
0ea5da |
install -d $(prefix)/share/consolefonts/
|
|
Packit |
0ea5da |
install -m 644 Fonts/*.psf.gz $(prefix)/share/consolefonts/
|
|
Packit |
0ea5da |
install -d $(prefix)/share/consoletrans
|
|
Packit |
0ea5da |
install -m 644 acm/*.acm.gz $(prefix)/share/consoletrans/
|
|
Packit |
0ea5da |
install -d $(etcdir)/console-setup
|
|
Packit |
0ea5da |
install -m 644 Keyboard/compose.*.inc $(etcdir)/console-setup/
|
|
Packit |
0ea5da |
install -m 644 Keyboard/remap.inc $(etcdir)/console-setup/
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: install-common-freebsd
|
|
Packit |
0ea5da |
install-common-freebsd: build-freebsd
|
|
Packit |
0ea5da |
install -d $(prefix)/share/syscons/fonts/
|
|
Packit |
0ea5da |
install -m 644 Fonts/*.fnt $(prefix)/share/syscons/fonts/
|
|
Packit |
0ea5da |
install -d $(prefix)/share/syscons/scrnmaps/
|
|
Packit |
0ea5da |
install -m 644 Fonts/*.scm $(prefix)/share/syscons/scrnmaps/
|
|
Packit |
0ea5da |
install -d $(prefix)/share/consoletrans
|
|
Packit |
0ea5da |
install -m 644 acm/*.acm $(prefix)/share/consoletrans/
|
|
Packit |
0ea5da |
install -d $(etcdir)/console-setup
|
|
Packit |
0ea5da |
install -m 644 Fonts/terminfo $(etcdir)/console-setup/
|
|
Packit |
0ea5da |
install -m 644 Fonts/termcap $(etcdir)/console-setup/
|
|
Packit |
0ea5da |
install -m 644 Keyboard/dkey.*.inc $(etcdir)/console-setup/
|
|
Packit |
0ea5da |
install -m 644 Keyboard/remap.inc $(etcdir)/console-setup/
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: install-ckbcomp
|
|
Packit |
0ea5da |
install-ckbcomp:
|
|
Packit |
0ea5da |
if [ -z "$(xkbdir)" ]; then \
|
|
Packit |
0ea5da |
mkdir -p $(etcdir)/console-setup \
|
|
Packit |
0ea5da |
&& cp -r Keyboard/ckb/ $(etcdir)/console-setup/ckb; \
|
|
Packit |
0ea5da |
fi
|
|
Packit |
0ea5da |
install -d $(prefix)/bin/
|
|
Packit |
0ea5da |
install -m 755 Keyboard/ckbcomp $(prefix)/bin/
|
|
Packit |
0ea5da |
install -d $(mandir)/man1/
|
|
Packit |
0ea5da |
install -m 644 man/ckbcomp.1 $(mandir)/man1/
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY : install-ckbcomp-mini
|
|
Packit |
0ea5da |
install-ckbcomp-mini: build-mini-linux build-mini-freebsd
|
|
Packit |
0ea5da |
install -d $(prefix)/share/console-setup/
|
|
Packit |
0ea5da |
-install -m 644 Keyboard/*.ekmap.gz $(prefix)/share/console-setup/
|
|
Packit |
0ea5da |
-install -m 644 Keyboard/*.ekbd.gz $(prefix)/share/console-setup/
|
|
Packit |
0ea5da |
install -m 644 Keyboard/charmap_functions.sh $(prefix)/share/console-setup/
|
|
Packit |
0ea5da |
install -d $(prefix)/bin/
|
|
Packit |
0ea5da |
install -m 755 Keyboard/ckbcomp-mini $(prefix)/bin/
|
|
Packit |
0ea5da |
ln -s ckbcomp-mini $(prefix)/bin/ckbcomp
|
|
Packit |
0ea5da |
install -d $(mandir)/man1/
|
|
Packit |
0ea5da |
install -m 644 man/ckbcomp.1 $(mandir)/man1/
|
|
Packit |
0ea5da |
ln -s ckbcomp.1 $(mandir)/man1/ckbcomp-mini.1
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: install-linux
|
|
Packit |
0ea5da |
install-linux: install-common install-common-linux install-ckbcomp
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: install-freebsd
|
|
Packit |
0ea5da |
install-freebsd: install-common install-common-freebsd install-ckbcomp
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY : install-mini-linux
|
|
Packit |
0ea5da |
install-mini-linux: install-common install-common-linux install-ckbcomp-mini
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY : install-mini-freebsd
|
|
Packit |
0ea5da |
install-mini-freebsd: install-common install-common-freebsd install-ckbcomp-mini
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
common-uninstall: | build-linux build-mini-linux build-freebsd build-mini-freebsd
|
|
Packit |
0ea5da |
-for font in Fonts/*.psf.gz; do \
|
|
Packit |
0ea5da |
rm $(prefix)/share/consolefonts/$${font##*/}; \
|
|
Packit |
0ea5da |
done
|
|
Packit |
0ea5da |
-for acm in acm/*.acm.gz acm/*.acm; do \
|
|
Packit |
0ea5da |
rm $(prefix)/share/consoletrans/$${acm##*/}; \
|
|
Packit |
0ea5da |
done
|
|
Packit |
0ea5da |
-for font in Fonts/*.fnt; do \
|
|
Packit |
0ea5da |
rm $(prefix)/share/syscons/fonts/$${font##*/}; \
|
|
Packit |
0ea5da |
done
|
|
Packit |
0ea5da |
-for scm in Fonts/*.scm; do \
|
|
Packit |
0ea5da |
rm $(prefix)/share/syscons/scrnmaps/$${scm##*/}; \
|
|
Packit |
0ea5da |
done
|
|
Packit |
0ea5da |
-rm -r $(prefix)/share/console-setup/
|
|
Packit |
0ea5da |
-rm $(prefix)/share/man/man1/ckbcomp.1
|
|
Packit |
0ea5da |
-rm $(prefix)/share/man/man1/setupcon.1
|
|
Packit |
0ea5da |
-rm $(prefix)/share/man/man5/keyboard.5
|
|
Packit |
0ea5da |
-rm $(prefix)/share/man/man5/console-setup.5
|
|
Packit |
0ea5da |
-rm -r $(etcdir)/console-setup/
|
|
Packit |
0ea5da |
-rm $(etcdir)/default/keyboard
|
|
Packit |
0ea5da |
-rm $(etcdir)/default/console-setup
|
|
Packit |
0ea5da |
-rm $(prefix)/bin/ckbcomp
|
|
Packit |
0ea5da |
-rm $(bootprefix)/bin/setupcon
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: uninstall-linux
|
|
Packit |
0ea5da |
uninstall-linux: build-linux common-uninstall
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: uninstall-mini-linux
|
|
Packit |
0ea5da |
uninstall-mini-linux: build-mini-linux common-uninstall
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: uninstall-freebsd
|
|
Packit |
0ea5da |
uninstall-freebsd: build-freebsd common-uninstall
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
.PHONY: uninstall-mini-freebsd
|
|
Packit |
0ea5da |
uninstall-mini-freebsd: build-mini-freebsd common-uninstall
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
%.txt : %
|
|
Packit |
0ea5da |
groff -mandoc -Tascii $< | col -bx >$@
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
txtmanpages := $./man/bdf2psf.1.txt $./man/console-setup.5.txt \
|
|
Packit |
0ea5da |
$./man/setupcon.1.txt $./man/ckbcomp.1.txt $./man/keyboard.5.txt
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
clean .PHONY : $~clean
|
|
Packit |
0ea5da |
$~clean:
|
|
Packit |
0ea5da |
-rm -f $(maindir)/acm/*.acm.gz
|
|
Packit |
0ea5da |
-rm -f $(maindir)/*~
|
|
Packit |
0ea5da |
|
|
Packit |
0ea5da |
maintainer-clean .PHONY : $~maintainer-clean
|
|
Packit |
0ea5da |
$~maintainer-clean: $~clean
|
|
Packit |
0ea5da |
-rm -f $(txtmanpages)
|
|
Packit |
0ea5da |
$(MAKE) $(txtmanpages)
|