diff options
| -rw-r--r-- | .gitignore | 9 | ||||
| -rw-r--r-- | LICENSE | 2 | ||||
| -rw-r--r-- | Makefile | 34 | ||||
| -rw-r--r-- | README | 6 | ||||
| -rw-r--r-- | config.mk | 10 | ||||
| -rw-r--r-- | xkbdbind.1 | 14 | 
6 files changed, 64 insertions, 11 deletions
| @@ -1,4 +1,11 @@ +*\#*  *~ -\#*\#  *.o +*.a +*.lo +*.so +*.su +*.gcov +*.gcno +*.gcda  /xkbdbind @@ -1,6 +1,6 @@  ISC License -© 2018, 2021 Mattias Andrée <maandree@kth.se> +© 2018, 2021, 2023 Mattias Andrée <maandree@kth.se>  Permission to use, copy, modify, and/or distribute this software for any  purpose with or without fee is hereby granted, provided that the above @@ -1,17 +1,39 @@  .POSIX: -CPPFLAGS = -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700 -CFLAGS   = -std=c99 -Wall -Wextra -pedantic -O2 $(CPPFLAGS) -LDFLAGS  = -s -lxcb -lxcb-keysyms +OBJ = xkbdbind.o +HDR = config.h + +CONFIGFILE = config.mk +include $(CONFIGFILE)  all: xkbdbind +$(OBJ): $(HDR) + +xkbdbind: $(OBJ) $(HDR) +	$(CC) -o $@ $(OBJ) $(LDFLAGS) + +.c.o: +	$(CC) -c -o $@ $< $(CFLAGS) + +install: xkbdbind +	mkdir -p -- "$(DESTDIR)$(PREFIX)/bin" +	mkdir -p -- "$(DESTDIR)$(PREFIX)/src/$(PACKAGE)" +	mkdir -p -- "$(DESTDIR)$(MANPREFIX)/man1" +	cp -- xkbdbind "$(DESTDIR)$(PREFIX)/bin/" +	cp -- $(OBJ:.o=.c) $(HDR) Makefile "$(DESTDIR)$(PREFIX)/src/$(PACKAGE)/" +	test ! -e -- "$(DESTDIR)$(PREFIX)/src/$(PACKAGE)/config.mk" +	cp -- $(CONFIGFILE) "$(DESTDIR)$(PREFIX)/src/$(PACKAGE)/config.mk" +	cp -- xkbdbind.1 "$(DESTDIR)$(MANPREFIX)/man1/" -xkbdbind: xkbdbind.c config.h -	$(CC) -o $@ $@.c $(CFLAGS) $(LDFLAGS) +uninstall: +	-rm -f -- "$(DESTDIR)$(PREFIX)/bin/xkbdbind" +	-rm -rf -- "$(DESTDIR)$(PREFIX)/src/$(PACKAGE)" +	-rm -f -- "$(DESTDIR)$(MANPREFIX)/man1/xkbdbind.1"  clean:  	-rm -f -- xkbdbind *.o  .SUFFIXES: +.SUFFIXES: .c .o -.PHONY: all clean +.PHONY: all install uninstall clean @@ -12,9 +12,9 @@ DESCRIPTION  	config.h source file and recompiling the program. The  	user shall therefore have a local copy of the software,  	and a personal installation of it. Thus, xkbdbind is -	not a program that is top be installed system-wide. +	not a program that is to be installed system-wide.  	Download xkbdbind to ~/.local/src/xkbdbind, run make(1)  	in ~/.local/src/xkbdbind, link ~/.local/bin/xkbdbind to -	~/.local/src/xkbdbind/xkbdbind, and ~/.local/bin to the -	PATH environment variable if you haven't already. +	~/.local/src/xkbdbind/xkbdbind, and add ~/.local/bin to +	PATthe H environment variable if you haven't already. diff --git a/config.mk b/config.mk new file mode 100644 index 0000000..e8e1344 --- /dev/null +++ b/config.mk @@ -0,0 +1,10 @@ +PREFIX = /usr +MANPREFIX = $(PREFIX)/share/man + +PACKAGE = xkbdbind + +CC = c99 + +CPPFLAGS = -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700 +CFLAGS   = -Wall -O2 $(CPPFLAGS) +LDFLAGS  = -lxcb -lxcb-keysyms diff --git a/xkbdbind.1 b/xkbdbind.1 new file mode 100644 index 0000000..1694789 --- /dev/null +++ b/xkbdbind.1 @@ -0,0 +1,14 @@ +.TH XKBDBIND 1 xkbdbind +.SH NAME +xkbdbind - global hotkeys for X +.SH SYNOPSIS +.B xkbdbind +.SH DESCRIPTION +.B xkbdbind +lets the user configure keybindings to start programs. +.PP +xkbdbind is a configured by the user by editing the +.I config.h +source file and recompiling the program. The user shall +therefore have a local copy of the software, and a personal +installation of it. | 
