xbps/prog.mk
Juan RP db9ae90dd4 Improve make output similar to what recent GNU configure scripts do.
Also always build the static bins so that it's done in one pass,
that means that objects are PIC and built with SSP.

--HG--
extra : convert_revision : xtraeme%40gmail.com-20091119050337-hkdksjqxy9n7vy7m
2009-11-19 06:03:37 +01:00

48 lines
922 B
Makefile

OBJS ?= main.o
LDFLAGS += -lxbps
%.o: %.c
@echo " [CC] $@"
@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(STATIC_LIBS) -c $<
$(MAN):
@echo " [ASCIIDOC] $(MAN)"
@a2x -f manpage $(MAN).txt
$(BIN).static: $(OBJS)
@echo " [CCLD] $@"
@$(CC) -static $^ $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) \
$(STATIC_LIBS) -o $@ >/dev/null 2>&1
$(BIN): $(OBJS)
@echo " [CCLD] $@"
@$(CC) $^ $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
.PHONY: all
all: $(BIN) $(BIN).static $(MAN)
.PHONY: clean
clean:
-rm -f $(BIN) $(MAN)
-rm -f $(BIN).static
-rm -f $(OBJS)
.PHONY: install
install: all
install -d $(SBINDIR)
install $(INSTALL_STRIPPED) -m 755 $(BIN) $(SBINDIR)
install $(INSTALL_STRIPPED) -m 755 $(BIN).static $(SBINDIR)
ifdef MAN
install -d $(MANDIR)
install -m 644 $(MAN) $(MANDIR)
endif
.PHONY: uninstall
uninstall:
-rm -f $(SBINDIR)/$(BIN)
-rm -f $(SBINDIR)/$(BIN).static
ifdef MAN
-rm -f $(MANDIR)/$(MAN)
endif