diff options
author | Jakob Kaivo <jkk@ung.org> | 2022-09-08 11:11:06 -0400 |
---|---|---|
committer | Jakob Kaivo <jkk@ung.org> | 2022-09-08 11:11:06 -0400 |
commit | fd528d27b11f1d85dbf6afcd65b6bb4140e56070 (patch) | |
tree | aa92db77886e45ab1cbd0616eeaefa1129d98556 /Makefile | |
parent | 5a8d69ea869636e29807955d621fa45d8a21a8d8 (diff) |
handle predefined and command line macro definitions
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 56 |
1 files changed, 40 insertions, 16 deletions
@@ -1,23 +1,47 @@ .POSIX: -CFLAGS=-g -D_POSIX_C_SOURCE=200809L -YFLAGS=-d -LIBS=-ly -ll -PROGRAM=cc -SYMLINKS=c89 c99 lint cflow ctags -OBJECTS=main.o trigraph.o cpp.tab.o link.o -GENERATED=trigraph.c *.tab.c *.tab.h +# This Makefile was generated by maje +# See https://src.kaivo.net/dev/maje/ for more information +# Do not edit this Makefile by hand -all: $(PROGRAM) $(SYMLINKS) +CC=c99 +LD=$(CC) +CFLAGS=-Wall -Wextra -Wpedantic -Werror -g +LDFLAGS= +LDLIBS= +SRCDIR=. +OBJDIR=. +BINDIR=$(OBJDIR) +LIBDIR=$(OBJDIR) +DESTDIR=/usr/local -$(SYMLINKS): $(PROGRAM) - ln -s $(PROGRAM) $@ +all: $(BINDIR)/cc -cpp.tab.c cpp.tab.h: cpp.y - $(YACC) $(YFLAGS) -p cpp -b cpp cpp.y +clean: + rm -f $(BINDIR)/cc $(OBJDIR)/*.o -cc: $(OBJECTS) - $(CC) -o $@ $(OBJECTS) $(LIBS) +install: $(BINDIR)/cc + mkdir -p $(DESTDIR)/bin + cp $(BINDIR)/cc $(DESTDIR)/bin -clean: - rm -f $(PROGRAM) $(SYMLINKS) $(GENERATED) *.o +$(BINDIR)/cc: $(OBJDIR)/cc.o +$(OBJDIR)/cc.o: $(SRCDIR)/cc.h +$(OBJDIR)/cc.o: $(SRCDIR)/cc.c + @mkdir -p $(@D) + $(CC) $(CFLAGS) -o $@ -c $(SRCDIR)/cc.c + +$(BINDIR)/cc: $(OBJDIR)/link.o +$(OBJDIR)/link.o: $(SRCDIR)/link.h +$(OBJDIR)/link.o: $(SRCDIR)/link.c + @mkdir -p $(@D) + $(CC) $(CFLAGS) -o $@ -c $(SRCDIR)/link.c + +$(BINDIR)/cc: $(OBJDIR)/cpp.o +$(OBJDIR)/cpp.o: $(SRCDIR)/cc.h +$(OBJDIR)/cpp.o: $(SRCDIR)/cpp.c + @mkdir -p $(@D) + $(CC) $(CFLAGS) -o $@ -c $(SRCDIR)/cpp.c + +$(BINDIR)/cc: + @mkdir -p $(@D) + $(LD) $(LDFLAGS) -o $@ $(OBJDIR)/*.o $(LDLIBS) |