enchive/Makefile

41 lines
1.1 KiB
Makefile
Raw Permalink Normal View History

2017-03-03 14:25:57 +01:00
.POSIX:
.SUFFIXES:
2020-05-19 00:37:30 +02:00
CC = cc
CFLAGS = -ansi -pedantic -Wall -Wextra -Wno-missing-field-initializers -O3 -g
LDFLAGS =
LDLIBS =
PREFIX = /usr/local
2017-03-03 14:25:57 +01:00
2017-03-06 02:20:24 +01:00
sources = src/enchive.c src/chacha.c src/curve25519-donna.c src/sha256.c
2017-03-05 18:54:40 +01:00
objects = $(sources:.c=.o)
2017-03-06 02:20:24 +01:00
headers = config.h src/docs.h src/chacha.h src/sha256.h src/optparse.h
2017-03-03 14:25:57 +01:00
enchive$(EXE): $(objects)
2017-03-03 14:25:57 +01:00
$(CC) $(LDFLAGS) -o $@ $(objects) $(LDLIBS)
2017-03-06 02:20:24 +01:00
src/enchive.o: src/enchive.c config.h src/docs.h
src/chacha.o: src/chacha.c config.h
src/curve25519-donna.o: src/curve25519-donna.c config.h
src/sha256.o: src/sha256.c config.h
2017-03-03 14:25:57 +01:00
2017-03-05 18:54:40 +01:00
enchive-cli.c: $(sources) $(headers)
2017-03-05 19:03:20 +01:00
cat $(headers) $(sources) | sed -r 's@^(#include +".+)@/* \1 */@g' > $@
2017-03-05 18:54:40 +01:00
amalgamation: enchive-cli.c
2017-03-03 14:25:57 +01:00
clean:
rm -f enchive$(EXE) $(objects) enchive-cli.c
2017-03-03 14:25:57 +01:00
install: enchive enchive.1
mkdir -p $(DESTDIR)$(PREFIX)/bin
mkdir -p $(DESTDIR)$(PREFIX)/share/man/man1
install -m 755 enchive$(EXE) $(DESTDIR)$(PREFIX)/bin
gzip < enchive.1 > $(DESTDIR)$(PREFIX)/share/man/man1/enchive.1.gz
uninstall:
rm -f $(DESTDIR)$(PREFIX)/bin/enchive$(EXE)
rm -f $(DESTDIR)$(PREFIX)/share/man/man1/enchive.1.gz
2017-03-03 14:25:57 +01:00
.SUFFIXES: .c .o
.c.o:
$(CC) -c $(CFLAGS) -o $@ $<