aboutsummaryrefslogtreecommitdiffstats
path: root/blind.mk
diff options
context:
space:
mode:
Diffstat (limited to 'blind.mk')
-rw-r--r--blind.mk30
1 files changed, 13 insertions, 17 deletions
diff --git a/blind.mk b/blind.mk
index ac30c20..1e5de6a 100644
--- a/blind.mk
+++ b/blind.mk
@@ -3,41 +3,37 @@
CONFIGFILE = config.mk
SCRIPTS = $(SH_SCRIPTS) $(KSH_SCRIPTS)
-MAN1 = $(BIN:=.1) $(SCRIPTS:=.1)
-MAN7 = blind.7
BOBJ = $(BIN:=.bo)
OBJ = $(BIN:=.o) $(COMMON_OBJ)
+C_DEPS = $(HDR) build/platform.h
DIST_MAN = $(MAN1) $(MAN7)
DIST_MISC = $(HDR) $(SRC) $(SCRIPTS) $(MISCFILES) $(EXAMPLEFILES)
-DEPS = build/common-files.mk blind.mk $(CONFIGFILE)
-MCB_DEPS = build/files.mk $(DEPS)
-
-include $(CONFIGFILE)
include build/files.mk
include build/common-files.mk
+include $(CONFIGFILE)
all: $(BIN)
mcb: blind-mcb
-$(BIN): $(@:=.o) $(COMMON_OBJ) $(DEPS)
+$(BIN): $(@:=.o) $(COMMON_OBJ)
.o:
$(CC) -o $@ $< $(COMMON_OBJ) $(LDFLAGS)
+ -@rm $@.o
-$(OBJ): src/$(@:.o=:c) $(HDR) build/platform.h $(DEPS)
+$(OBJ): src/$(@:.o=:c) $(C_DEPS)
$(OBJ):
$(CC) $(CFLAGS) -c -o $$$$.$@ src/$*.c && mv $$$$.$@ $@
-build/blind-mcb.o: $(MCB_DEPS)
.c.o:
$(CC) $(CFLAGS) -c -o $@ $<
-$(BOBJ): src/$(@:.bo=:c) $(HDR) build/platform.h $(DEPS)
+$(BOBJ): src/$(@:.bo=:c) $(C_DEPS)
$(BOBJ):
$(CC) $(CFLAGS) -Dmain="$$(printf 'main_%s\n' $* | tr -- - _)" -c -o $@ src/$*.c
-build/blind-mcb.c: $(MCB_DEPS)
+build/blind-mcb.c: build/files.mk
mkdir -p $(@D)
printf '#include <%s.h>\n' stdio string > $@
printf 'int main_%s(int argc, char *argv[]);\n' $(BIN) | tr -- - _ >> $@
@@ -52,15 +48,15 @@ build/blind-mcb.c: $(MCB_DEPS)
printf 'return 1;\n' >> $@
printf '}\n' >> $@
-blind-mcb: build/blind-mcb.o $(BOBJ) $(COMMON_OBJ) $(MCB_DEPS)
+blind-mcb: build/blind-mcb.o $(BOBJ) $(COMMON_OBJ)
$(CC) -o $@ build/blind-mcb.o $(BOBJ) $(COMMON_OBJ) $(LDFLAGS)
-build/generate-macros: src/generate-macros.c $(DEPS)
+build/generate-macros: src/generate-macros.c
@mkdir -p -- $(@D)
$(CC) $(CFLAGS) -o $@.$$$$ src/generate-macros.c $(LDFLAGS) && mv $@.$$$$ $@
src/../build/platform.h: build/platform.h
-build/platform.h: build/generate-macros $(DEPS)
+build/platform.h: build/generate-macros
@mkdir -p -- $(@D)
build/generate-macros > $@.$$$$ && mv $@.$$$$ $@
@@ -89,8 +85,8 @@ install-common:
cd -- "$(DESTDIR)$(MANPREFIX)" && chmod 644 $(MAN)
uninstall:
- cd -- "$(DESTDIR)$(PREFIX)/bin" && rm -f $(BIN) $(SCRIPTS)
- cd -- "$(DESTDIR)$(MANPREFIX)" && rm -f $(MAN)
+ cd -- "$(DESTDIR)$(PREFIX)/bin" && rm -f -- $(BIN) $(SCRIPTS)
+ cd -- "$(DESTDIR)$(MANPREFIX)" && rm -f -- $(MAN)
dist:
-rm -rf "blind-$(VERSION)"
@@ -106,4 +102,4 @@ dist:
.SUFFIXES: .o .bo .c
.PHONY: all mcb install install-mcb install-common uninstall dist
-.PRECIOUS: $(COMMON_OBJ) build/platform.h
+.PRECIOUS: $(COMMON_OBJ) $(BOBJ) build/platform.h