summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-11-28 16:42:28 -0500
committerJune McEnroe <june@causal.agency>2018-11-28 16:42:28 -0500
commitd4abb6a766978ae4bdbdb54362b178e7da337d92 (patch)
treeb2e04209937bf56ef6836cd03acfc9186d3b857d
parentRename project catgirl (diff)
downloadcatgirl-d4abb6a766978ae4bdbdb54362b178e7da337d92.tar.gz
catgirl-d4abb6a766978ae4bdbdb54362b178e7da337d92.zip
Make use of config.mk and add Darwin.mk
Diffstat (limited to '')
-rw-r--r--.gitignore1
-rw-r--r--Darwin.mk1
-rw-r--r--Makefile56
3 files changed, 32 insertions, 26 deletions
diff --git a/.gitignore b/.gitignore
index b701a89..af70b85 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,5 +2,6 @@
 *.t
 catgirl
 chroot.tar
+config.mk
 root
 tags
diff --git a/Darwin.mk b/Darwin.mk
new file mode 100644
index 0000000..fd73e53
--- /dev/null
+++ b/Darwin.mk
@@ -0,0 +1 @@
+LDLIBS = -lcurses -ltls
diff --git a/Makefile b/Makefile
index 3efcbd8..14a4a37 100644
--- a/Makefile
+++ b/Makefile
@@ -1,14 +1,16 @@
 PREFIX = ~/.local
-MANPATH = $(PREFIX)/share/man
-LIBRESSL_PREFIX = /usr/local /usr/local/opt/libressl
+MANDIR = $(PREFIX)/share/man/man
 CHROOT_USER = chat
 CHROOT_GROUP = $(CHROOT_USER)
+LIBRESSL_PREFIX = /usr/local
 
-CFLAGS += -Wall -Wextra -Wpedantic
-CFLAGS += $(LIBRESSL_PREFIX:%=-I%/include)
-LDFLAGS += $(LIBRESSL_PREFIX:%=-L%/lib)
+CFLAGS += -std=c11 -Wall -Wextra -Wpedantic
+CFLAGS += -I$(LIBRESSL_PREFIX)/include
+LDFLAGS += -L$(LIBRESSL_PREFIX)/lib
 LDLIBS = -lcursesw -ltls
 
+-include config.mk
+
 OBJS += chat.o
 OBJS += edit.o
 OBJS += event.o
@@ -29,30 +31,30 @@ TESTS += term.t
 
 all: tags catgirl test
 
-tags: *.h *.c
-	ctags -w *.h *.c
+$(OBJS): chat.h
 
 catgirl: $(OBJS)
 	$(CC) $(LDFLAGS) $(OBJS) $(LDLIBS) -o $@
 
-$(OBJS): chat.h
-
-test: $(TESTS)
-	set -e; $(TESTS:%=./%;)
-
 .SUFFIXES: .t
 
 .c.t:
 	$(CC) $(CFLAGS) -DTEST $(LDFLAGS) $< $(LDLIBS) -o $@
 
+test: $(TESTS)
+	set -e; $(TESTS:%=./%;)
+
+tags: *.h *.c
+	ctags -w *.h *.c
+
 install: catgirl catgirl.1
-	install -d $(PREFIX)/bin $(MANPATH)/man1
+	install -d $(PREFIX)/bin $(MANDIR)1
 	install catgirl $(PREFIX)/bin/catgirl
-	install -m 644 catgirl.1 $(MANPATH)/man1/catgirl.1
+	install -m 644 catgirl.1 $(MANDIR)1/catgirl.1
 
 uninstall:
 	rm -f $(PREFIX)/bin/catgirl
-	rm -f $(MANPATH)/man1/catgirl.1
+	rm -f $(MANDIR)1/catgirl.1
 
 chroot.tar: catgirl catgirl.1 man.sh
 	install -d -o root -g wheel \
@@ -67,10 +69,9 @@ chroot.tar: catgirl catgirl.1 man.sh
 		root/usr/share/man \
 		root/usr/share/misc
 	install -d -o $(CHROOT_USER) -g $(CHROOT_GROUP) root/home/$(CHROOT_USER)
-	cp -p -f /libexec/ld-elf.so.1 root/libexec
-	cp -p -f \
+	cp -fp /libexec/ld-elf.so.1 root/libexec
+	cp -fp \
 		/lib/libc.so.7 \
-	    /lib/libedit.so.7 \
 		/lib/libncursesw.so.8 \
 		/lib/libthr.so.3 \
 		/lib/libz.so.6 \
@@ -78,17 +79,20 @@ chroot.tar: catgirl catgirl.1 man.sh
 		/usr/local/lib/libssl.so.45 \
 		/usr/local/lib/libtls.so.17 \
 		root/lib
-	cp -p -f /etc/hosts /etc/resolv.conf root/etc
-	cp -p -f /usr/local/etc/ssl/cert.pem root/usr/local/etc/ssl
-	cp -a -f /usr/share/locale root/usr/share
-	cp -p -f /usr/share/misc/termcap.db root/usr/share/misc
-	cp -p -f /bin/sh /usr/bin/mandoc /usr/bin/less root/bin
+	cp -fp /etc/hosts /etc/resolv.conf root/etc
+	cp -fp /usr/local/etc/ssl/cert.pem root/usr/local/etc/ssl
+	cp -af /usr/share/locale root/usr/share
+	cp -fp /usr/share/misc/termcap.db root/usr/share/misc
+	cp -fp /rescue/sh /usr/bin/mandoc /usr/bin/less root/bin
 	$(MAKE) install PREFIX=root/usr
 	install man.sh root/usr/bin/man
-	tar -c -f chroot.tar -C root bin etc home lib libexec usr
+	tar -cf chroot.tar -C root bin etc home lib libexec usr
+
+install-chroot: chroot.tar
+	tar -xf chroot.tar -C /home/$(CHROOT_USER)
 
 clean:
-	rm -rf tags catgirl $(OBJS) $(TESTS) root chroot.tar
+	rm -fr $(OBJS) catgirl $(TESTS) tags root chroot.tar
 
 README: catgirl.7
-	mandoc catgirl.7 | col -b -x > README
+	mandoc catgirl.7 | col -bx > README
/tr> Do some extra work by adding the portion before the cursor to the input window twice, but simplify the interaction with the split point. This fixes the awkward behaviour when moving the cursor across colour codes where the code would be partially interpreted up to the cursor. 2022-02-18Fix M-f orderingJune McEnroe 2022-02-12Move sandman build to scripts/MakefileJune McEnroe 2022-02-12Use compat_readpassphrase.c on LinuxJune McEnroe 2022-02-12Copy RPP defines from oconfigureJune McEnroe