1# 2# Makefile for rpc.lockd 3# 4 5Project = rpc.lockd 6 7inplace: 8 @$(MAKE) all SRCROOT=. OBJROOT=. SYMROOT=. DSTROOT=/ 9 10include $(MAKEFILEPATH)/CoreOS/ReleaseControl/Common.make 11 12SDKROOT ?= / 13 14WARNING_FLAGS = -Wall -Wextra -Wformat=2 -Wpointer-arith -Wcast-align \ 15 -Wwrite-strings -Wno-unknown-pragmas \ 16 -Wno-missing-field-initializers \ 17 -Wshadow -Wmissing-prototypes \ 18 -Wmissing-declarations -Wno-discard-qual 19Extra_CC_Flags = $(WARNING_FLAGS) -D_FORTIFY_SOURCE=2 \ 20 -F$(SDKROOT)/System/Library/PrivateFrameworks -I $(SRCROOT) -I $(OBJROOT) -fPIE 21Extra_LD_Flags = -Wl,-pie -lutil -framework oncrpc -dead_strip 22 23ifeq "$(RC_TARGET_CONFIG)" "iPhone" 24Extra_CC_Flags += -isysroot $(SDKROOT) 25endif 26 27DST_DIR = $(DSTROOT)/usr/sbin 28MAN_DIR = $(DSTROOT)/usr/share/man/man8 29LAUNCHDAEMONS_DIR = $(DSTROOT)/System/Library/LaunchDaemons 30 31# 32# Standard B&I targets 33# 34all: $(SYMROOT)/rpc.lockd 35 36install:: all 37 install -d -o root -g wheel -m 755 $(DST_DIR) 38 install -c -o root -g wheel -m 555 -s $(SYMROOT)/rpc.lockd $(DST_DIR) 39 install -d -o root -g wheel -m 755 $(MAN_DIR) 40 install -c -o root -g wheel -m 444 $(SRCROOT)/rpc.lockd.8 $(MAN_DIR) 41 install -d -o root -g wheel -m 755 $(LAUNCHDAEMONS_DIR) 42 install -c -o root -g wheel -m 644 $(SRCROOT)/com.apple.lockd.plist $(DSTROOT)/System/Library/LaunchDaemons 43 44clean:: 45 -rm -f *.o rpc.lockd $(MIG_GEN_FILES) 46# 47# Build 48# 49 50MIG_DEF_FILES = $(SRCROOT)/lockd_mach.defs 51MIG_GEN_CFILES = lockd_machServer.c lockd_machUser.c 52MIG_GEN_HFILES = lockd_mach.h lockd_machServer.h 53MIG_GEN_FILES = $(MIG_GEN_CFILES) $(MIG_GEN_HFILES) 54MIG_OUT_FILES = $(MIG_GEN_FILES:%=$(OBJROOT)/%) 55CFILES = kern.c lock_proc.c lockd.c lockd_lock.c nlm_prot_svc.c \ 56 nlm_prot_xdr.c sm_inter_xdr.c 57HFILES = lockd.h lockd_lock.h 58OFILES = $(CFILES:.c=.o) lockd_machServer.o 59 60#$(CFILES:%=$(SRCROOT)/%): $(HFILES:%=$(SRCROOT)/%) $(MIG_OUT_FILES) 61 62$(OFILES:%=$(OBJROOT)/%): $(HFILES:%=$(SRCROOT)/%) $(MIG_GEN_HFILES:%=$(OBJROOT)/%) 63$(OFILES): $(HFILES) $(MIG_GEN_HFILES) 64 65#$(MIG_GEN_CFILES:%.c=$(OBJROOT)/%.o): $(MIG_GEN_CFILES:%.c=$(OBJROOT)/%.c) 66# $(CC) -c $(CFLAGS) -o $@ $< 67 68$(OBJROOT)/%.o: $(SRCROOT)/%.c 69 $(CC) -c $(CFLAGS) -o $@ $< 70 71$(MIG_OUT_FILES): $(MIG_DEF_FILES) 72 mig \ 73 -user $(OBJROOT)/lockd_machUser.c \ 74 -header $(OBJROOT)/lockd_mach.h \ 75 -server $(OBJROOT)/lockd_machServer.c \ 76 -sheader $(OBJROOT)/lockd_machServer.h \ 77 $(MIG_DEF_FILES) 78 79$(SYMROOT)/rpc.lockd: $(addprefix $(OBJROOT)/, $(OFILES)) 80 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ 81 82