Project = nfsiod
pathsearch = $(firstword $(wildcard $(addsuffix /$(1),$(subst :, ,$(PATH)))))
TCONF := $(call pathsearch,tconf)
ifneq "$(TCONF)" ""
Embedded=$(shell tconf --test TARGET_OS_EMBEDDED)
endif
inplace:
@$(MAKE) all SRCROOT=. OBJROOT=. SYMROOT=. DSTROOT=/
include $(MAKEFILEPATH)/CoreOS/ReleaseControl/Common.make
SDKROOT ?= /
WARNING_FLAGS = -Wall -Wextra -Wformat=2 -Wpointer-arith -Wcast-align \
-Wwrite-strings -Wno-unknown-pragmas \
-Wno-missing-field-initializers -Wno-shadow
Extra_CC_Flags = $(WARNING_FLAGS) -D_FORTIFY_SOURCE=2 -fPIE
Extra_LD_Flags = -Wl,-pie -dead_strip
ifeq "$(Embedded)" "YES"
Extra_CC_Flags += -isysroot $(SDKROOT)
endif
DST_DIR = $(DSTROOT)/sbin
MAN_DIR = $(DSTROOT)/usr/share/man/man8
all: $(SYMROOT)/nfsiod
install:: all
install -d -o root -g wheel -m 755 $(DST_DIR)
install -c -o root -g wheel -m 555 -s $(SYMROOT)/nfsiod $(DST_DIR)
install -d -o root -g wheel -m 755 $(MAN_DIR)
install -c -o root -g wheel -m 444 $(SRCROOT)/nfsiod.8 $(MAN_DIR)
clean::
-rm -f *.o nfsiod
CFILES = nfsiod.c
OFILES = $(CFILES:.c=.o)
$(OFILES): $(HFILES)
$(OBJROOT)/%.o: $(SRCROOT)/%.c
$(CC) -c $(CFLAGS) -o $@ $<
$(SYMROOT)/nfsiod: $(addprefix $(OBJROOT)/, $(OFILES))
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^