Recreate repo

This commit is contained in:
cælōrum spectātrīx 2026-02-05 22:05:32 +01:00
commit 56b75106f6
12 changed files with 1195 additions and 0 deletions

50
GNUmakefile Normal file
View file

@ -0,0 +1,50 @@
PREFIX = /usr/local
BINDIR = bin
MANDIR = share/man
MAN1 = man1
PKG_CONFIG = pkg-config
INSTALL = install
CFLAGS = -O2 -pipe
override CFLAGS += -std=gnu23 -Wall -Wextra
override CPPFLAGS += -MMD -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_OPENBSD_SOURCE
LDFLAGS = -Wl,-O1 -Wl,--as-needed
# Platform-dependent checks
PLATFORM = $(shell uname)
ifeq ($(PLATFORM), Linux)
override CPPFLAGS += $(shell $(PKG_CONFIG) --cflags libbsd-overlay)
override LDLIBS += $(shell $(PKG_CONFIG) --libs libbsd-overlay)
endif
ifeq ($(PLATFORM), OpenBSD)
MANDIR = man
override CPPFLAGS += -DHAVE_PLEDGE
endif
ifeq ($(PLATFORM), NetBSD)
MANDIR = man
endif
ifeq ($(PLATFORM), SunOS)
# OpenIndiana ld doesn't recognize GNU ld flags
override LDFLAGS =
endif
PROG = can
OBJS = can.o user.o group.o action.o
DEPS = $(patsubst %.o, %.d, $(OBJS))
.PHONY: all
all: $(PROG)
$(PROG): $(OBJS)
-include $(DEPS)
.PHONY: clean
clean:
rm -f $(PROG) $(OBJS) $(DEPS)
.PHONY: install
install:
$(INSTALL) -Dm755 $(PROG) $(DESTDIR)$(PREFIX)/$(BINDIR)/$(PROG)
$(INSTALL) -Dm644 $(PROG).1 $(DESTDIR)$(PREFIX)/$(MANDIR)/$(MAN1)/$(PROG).1