From 4d7c506a29a5153a2b6ab903d2f4731bbab6abcb Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Thu, 7 Dec 2017 23:48:45 +0100 Subject: Start on libblind MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- blind.mk | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) (limited to 'blind.mk') 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 -- cgit v1.2.3-70-g09d2