luksrku/Makefile
Johannes Bauer 37b239b179 Fixed issue with member access
This is kind of hacky, but it avoids the segfault at runtime. So,
preferrable. If we ever have more options, we need to properly generate
the argv[] array.
2021-06-27 12:32:44 +02:00

64 lines
1.6 KiB
Makefile

.PHONY: all clean test_s test_c install parsers
all: luksrku
BUILD_REVISION := $(shell git describe --abbrev=10 --dirty --always --tags)
INSTALL_PREFIX := /usr/local/
CFLAGS := -Wall -Wextra -Wshadow -Wswitch -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Werror=implicit-function-declaration -Werror=format -Wno-unused-parameter
CFLAGS += -O3 -std=c11 -pthread -D_POSIX_SOURCE -D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=500 -DBUILD_REVISION='"$(BUILD_REVISION)"'
CFLAGS += `pkg-config --cflags openssl`
#CFLAGS += -ggdb3 -DDEBUG -fsanitize=address -fsanitize=undefined -fsanitize=leak
PYPGMOPTS := ../Python/pypgmopts/pypgmopts
LDFLAGS := `pkg-config --libs openssl`
TEST_PREFIX := local
OBJS := \
argparse_client.o \
argparse_edit.o \
argparse_server.o \
blacklist.o \
client.o \
editor.o \
exec.o \
file_encryption.o \
keydb.o \
log.o \
luks.o \
luksrku.o \
openssl.o \
pgmopts.o \
server.o \
signals.o \
thread.o \
udp.o \
util.o \
uuid.o \
vaulted_keydb.o \
vault.o
parsers:
$(PYPGMOPTS) -n edit parsers/parser_edit.py
$(PYPGMOPTS) -n server parsers/parser_server.py
$(PYPGMOPTS) -n client parsers/parser_client.py
install: all
strip luksrku
cp luksrku $(INSTALL_PREFIX)sbin/
chown root:root $(INSTALL_PREFIX)sbin/luksrku
chmod 755 $(INSTALL_PREFIX)sbin/luksrku
clean:
rm -f $(OBJS) $(OBJS_CFG) luksrku
test_s: luksrku
./luksrku server -vv testdata/$(TEST_PREFIX)_server.bin
test_c: luksrku
./luksrku client -vv --no-luks testdata/$(TEST_PREFIX)_client.bin
.c.o:
$(CC) $(CFLAGS) -c -o $@ $<
luksrku: $(OBJS)
$(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS)