Files
hive/util/Makefile
2026-01-04 04:15:11 -05:00

44 lines
944 B
Makefile

# shackle - seccomp jail
# Copyright (C) 2025 Olive <hello@grasswren.net>
# see LICENCE file for licensing information
.POSIX:
VERSION = 1.0.0
PREFIX = /usr/local
WPROFILE = -Wall -Wextra -Wstrict-prototypes -Wmissing-declarations -Wshadow \
-Wswitch-default -Wunreachable-code -Wcast-align -Wpointer-arith -Wcast-qual \
-Wbad-function-cast -Winline -Wundef -Wnested-externs -Wwrite-strings \
-Wno-unused-parameter -Wfloat-equal -Wpedantic
STD = -D_DEFAULT_SOURCE -D_POSIX_C_SOURCE=200809L -D_XOPEN_SOURCE=500
CFLAGS = $(WPROFILE) $(STD) -Os
LDFLAGS = -lseccomp
SRC = shackle.c
OBJ = $(SRC:.c=.o)
all: shackle
.c.o:
$(CC) $(CFLAGS) -c $<
shackle: $(OBJ)
$(CC) $(OBJ) -o $@ $(LDFLAGS)
clean:
rm -f shackle $(OBJ)
install: all
mkdir -p $(PREFIX)/bin
cp -f shackle $(PREFIX)/bin
chown root:users $(PREFIX)/bin/shackle
chmod 4754 $(PREFIX)/bin/shackle
uninstall:
rm -f $(PREFIX)/bin/shackle
.PHONY: all clean install uninstall