cnotes/Makefile

56 lines
1.7 KiB
Makefile
Raw Permalink Normal View History

# Makefile for cnotes - GCC on Linux/Unix/macOS
# Strict C89/ANSI compliant build
CC = gcc
2026-01-30 12:37:28 +00:00
CFLAGS = -ansi -Wpedantic -Wall -Wextra -O2
INCLUDES = -I include
SRCDIR = src
INCDIR = include
BUILDDIR = build
2026-01-30 14:56:03 +00:00
SOURCES = $(SRCDIR)/cnadd.c $(SRCDIR)/cndump.c $(SRCDIR)/cncount.c $(SRCDIR)/cndel.c $(SRCDIR)/cnfind.c $(SRCDIR)/cnhelp.c
2026-01-30 12:37:28 +00:00
HEADERS = $(INCDIR)/platform.h $(INCDIR)/config.h
2026-01-30 14:56:03 +00:00
TARGETS = $(BUILDDIR)/cnadd $(BUILDDIR)/cndump $(BUILDDIR)/cncount $(BUILDDIR)/cndel $(BUILDDIR)/cnfind $(BUILDDIR)/cnhelp
.PHONY: all clean install uninstall
all: $(BUILDDIR) $(TARGETS)
$(BUILDDIR):
mkdir -p $(BUILDDIR)
2026-01-30 12:37:28 +00:00
$(BUILDDIR)/cnadd: $(SRCDIR)/cnadd.c $(HEADERS)
$(CC) $(CFLAGS) $(INCLUDES) -o $@ $(SRCDIR)/cnadd.c
2026-01-30 12:37:28 +00:00
$(BUILDDIR)/cndump: $(SRCDIR)/cndump.c $(HEADERS)
$(CC) $(CFLAGS) $(INCLUDES) -o $@ $(SRCDIR)/cndump.c
2026-01-30 13:35:14 +00:00
$(BUILDDIR)/cncount: $(SRCDIR)/cncount.c $(HEADERS)
$(CC) $(CFLAGS) $(INCLUDES) -o $@ $(SRCDIR)/cncount.c
$(BUILDDIR)/cndel: $(SRCDIR)/cndel.c $(HEADERS)
$(CC) $(CFLAGS) $(INCLUDES) -o $@ $(SRCDIR)/cndel.c
2026-01-30 13:39:48 +00:00
$(BUILDDIR)/cnfind: $(SRCDIR)/cnfind.c $(HEADERS)
$(CC) $(CFLAGS) $(INCLUDES) -o $@ $(SRCDIR)/cnfind.c
2026-01-30 14:56:03 +00:00
$(BUILDDIR)/cnhelp: $(SRCDIR)/cnhelp.c
$(CC) $(CFLAGS) -o $@ $(SRCDIR)/cnhelp.c
clean:
rm -rf $(BUILDDIR)
# Install to /usr/local/bin (optional, run with sudo)
install: $(TARGETS)
2026-01-30 12:37:28 +00:00
install -m 755 $(BUILDDIR)/cnadd /usr/local/bin/
install -m 755 $(BUILDDIR)/cndump /usr/local/bin/
2026-01-30 13:35:14 +00:00
install -m 755 $(BUILDDIR)/cncount /usr/local/bin/
install -m 755 $(BUILDDIR)/cndel /usr/local/bin/
2026-01-30 13:39:48 +00:00
install -m 755 $(BUILDDIR)/cnfind /usr/local/bin/
2026-01-30 14:56:03 +00:00
install -m 755 $(BUILDDIR)/cnhelp /usr/local/bin/
uninstall:
2026-01-30 14:56:03 +00:00
rm -f /usr/local/bin/cnadd /usr/local/bin/cndump /usr/local/bin/cncount /usr/local/bin/cndel /usr/local/bin/cnfind /usr/local/bin/cnhelp