1 # 2 # CDDL HEADER START 3 # 4 # The contents of this file are subject to the terms of the 5 # Common Development and Distribution License (the "License"). 6 # You may not use this file except in compliance with the License. 7 # 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 # or http://www.opensolaris.org/os/licensing. 10 # See the License for the specific language governing permissions 11 # and limitations under the License. 12 # 13 # When distributing Covered Code, include this CDDL HEADER in each 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 # If applicable, add the following below this CDDL HEADER, with the 16 # fields enclosed by brackets "[]" replaced with your own identifying 17 # information: Portions Copyright [yyyy] [name of copyright owner] 18 # 19 # CDDL HEADER END 20 # 21 # Copyright 2007 Sun Microsystems, Inc. All rights reserved. 22 # Use is subject to license terms. 23 # Copyright 2016 Toomas Soome <tsoome@me.com> 24 # 25 # Copyright (c) 2018, Joyent, Inc. 26 27 PROG= mdnsd 28 MANIFEST= multicast.xml 29 30 CMN_DIR= $(SRC)/lib/libdns_sd/common 31 CMN_OBJS= dnssd_ipc.o 32 CMN_SRCS= $(CMN_OBJS:%.o=$(CMN_DIR)/%.c) 33 34 LOCAL_OBJS= DNSCommon.o DNSDigest.o GenLinkedList.o \ 35 PlatformCommon.o PosixDaemon.o \ 36 mDNS.o mDNSDebug.o mDNSPosix.o mDNSUNP.o \ 37 uDNS.o uds_daemon.o CryptoAlg.o anonymous.o 38 LOCAL_SRCS= $(LOCAL_OBJS:%.o=%.c) 39 40 SRCS= $(LOCAL_SRCS) $(CMN_SRCS) 41 OBJS= $(LOCAL_OBJS) $(CMN_OBJS) 42 43 44 MDNSFLAGS= -DNOT_HAVE_SA_LEN \ 45 -DLOG_PERROR=0 -DHAVE_SOLARIS -DTARGET_OS_SOLARIS \ 46 -D_XPG4_2 -D__EXTENSIONS__ -DHAVE_BROKEN_RECVIF_NAME \ 47 -DHAVE_IPV6=1 -Dasm=__asm -DMDNSD_NOROOT \ 48 -DPID_FILE=\"\" -DMDNSD_USER=\"noaccess\" \ 49 -DMDNS_VERSIONSTR_NODTS 50 51 include ../../../Makefile.cmd 52 53 CERRWARN += -_gcc=-Wno-unused-variable 54 CERRWARN += -_gcc=-Wno-implicit-function-declaration 55 CERRWARN += -_gcc=-Wno-uninitialized 56 57 # not linted 58 SMATCH=off 59 60 ROOTMANIFESTDIR= $(ROOTSVCNETWORKDNS) 61 $(ROOTMANIFEST) := FILEMODE= 444 62 63 .PARALLEL: $(LOCAL_OBJS) 64 .WAIT: $(PROG) 65 .KEEP_STATE: 66 67 all: $(PROG) 68 69 $(PROG): $(OBJS) 70 $(LINK.c) $(OBJS) -o $@ $(LDLIBS) 71 $(POST_PROCESS) 72 73 include ../Makefile.lib 74 75 CSTD = $(CSTD_GNU99) 76 CPPFLAGS += -D_REENTRANT $(MDNSFLAGS) -I$(CMN_DIR) 77 LDLIBS += -lsocket -lnsl 78 79 install: all $(ROOTLIBINETPROG) $(ROOTMANIFEST) 80 81 %.o: $(CMN_DIR)/%.c 82 $(COMPILE.c) $(OUTPUT_OPTION) $< 83 $(POST_PROCESS_O) 84 85 check: $(CHKMANIFEST) 86 87 clean: 88 $(RM) $(OBJS) 89 90 lint: lint_SRCS 91 92 include ../../../Makefile.targ