From 72405143f9d16514e70b88bc4843c9634b88036a Mon Sep 17 00:00:00 2001
|
From: Brendan Le Foll <brendan.le.foll@intel.com>
|
Date: Tue, 3 Mar 2015 11:42:57 +0000
|
Subject: [PATCH 2/2] mdns: cross compilation fixes for bitbake
|
|
Fixes several build errors when incorrect compiler or
|
compiler flags are used.
|
|
Upstream-Status: Inappropriate [OE-specific]
|
|
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
|
---
|
mDNSPosix/Makefile | 44 ++++++++++++++++++++------------------------
|
1 file changed, 20 insertions(+), 24 deletions(-)
|
|
diff --git a/mDNSPosix/Makefile b/mDNSPosix/Makefile
|
index 78222e0..18a3af5 100755
|
--- a/mDNSPosix/Makefile
|
+++ b/mDNSPosix/Makefile
|
@@ -50,6 +50,7 @@
|
|
LIBVERS = 1
|
|
+POSIXDIR = ../mDNSPosix
|
COREDIR = ../mDNSCore
|
SHAREDDIR ?= ../mDNSShared
|
DSODIR ?= ../DSO
|
@@ -62,16 +63,16 @@ else ifeq ($(SYSTEM), Linux)
|
os=linux
|
endif
|
|
-CC = cc
|
-BISON = bison
|
-FLEX = flex
|
-ST = strip
|
-LD = ld
|
+CC ?= cc
|
+BISON ?= bison
|
+FLEX ?= flex
|
+ST ?= strip
|
+LD ?= ld
|
SOOPTS = -shared
|
CP = cp
|
RM = rm
|
LN = ln -s -f
|
-CFLAGS_COMMON = -I$(COREDIR) -I$(SHAREDDIR) -I$(DSODIR) -I$(PROXYDIR) -I$(OBJDIR) -fwrapv -W -Wall -DPID_FILE=\"/var/run/mdnsd.pid\" -DMDNS_UDS_SERVERPATH=\"/var/run/mdnsd\"
|
+CFLAGS_COMMON = -I$(POSIXDIR) -I$(COREDIR) -I$(SHAREDDIR) -I$(DSODIR) -I$(PROXYDIR) -I$(OBJDIR) -fwrapv -W -Wall -DPID_FILE=\"/var/run/mdnsd.pid\" -DMDNS_UDS_SERVERPATH=\"/var/run/mdnsd\"
|
CFLAGS_PTHREAD =
|
LINKOPTS =
|
LINKOPTS_PTHREAD = -lpthread
|
@@ -85,6 +86,7 @@ CFLAGS_OPEN_SOURCE=
|
endif
|
|
# Set up diverging paths for debug vs. prod builds
|
+DEBUG ?= 1
|
ifeq "$(DEBUG)" "1"
|
CFLAGS_DEBUGGING = -g -DMDNS_DEBUGMSGS=2
|
OBJDIR = objects/debug
|
@@ -101,8 +103,8 @@ else
|
# 1. We want to make small binaries, suitable for putting into hardware devices
|
# 2. Some of the code analysis warnings only work when some form of optimization is enabled
|
CFLAGS_DEBUGGING = -g -DMDNS_DEBUGMSGS=0
|
-OBJDIR ?= objects/prod
|
-BUILDDIR ?= build/prod
|
+OBJDIR = objects/prod
|
+BUILDDIR = build/prod
|
STRIP = $(ST) -S
|
endif
|
endif
|
@@ -125,7 +127,7 @@ else
|
# any target that contains the string "linux"
|
ifeq ($(findstring linux,$(os)),linux)
|
CFLAGS_OS = -D_GNU_SOURCE -DHAVE_IPV6 -DNOT_HAVE_SA_LEN -DUSES_NETLINK -DHAVE_LINUX -DTARGET_OS_LINUX -ftabstop=4
|
-LD = $(CC)
|
+LD ?= $(CC)
|
SOOPTS = -shared
|
FLEXFLAGS_OS = -l
|
JAVACFLAGS_OS += -I$(JDK)/include/linux
|
@@ -276,8 +278,7 @@ Daemon: setup $(BUILDDIR)/mdnsd
|
@echo "Responder daemon done"
|
|
$(BUILDDIR)/mdnsd: $(DAEMONOBJS)
|
- $(CC) -o $@ $+ $(LINKOPTS)
|
- $(STRIP) $@
|
+ $(LD) -o $@ $+
|
|
# libdns_sd target builds the client library
|
libdns_sd: setup $(BUILDDIR)/libdns_sd.$(LDSUFFIX)
|
@@ -286,13 +287,9 @@ libdns_sd: setup $(BUILDDIR)/libdns_sd.$(LDSUFFIX)
|
CLIENTLIBOBJS = $(OBJDIR)/dnssd_clientlib.c.so.o $(OBJDIR)/dnssd_clientstub.c.so.o $(OBJDIR)/dnssd_ipc.c.so.o
|
|
$(BUILDDIR)/libdns_sd.$(LDSUFFIX): $(CLIENTLIBOBJS)
|
- $(LD) $(SOOPTS) $(LINKOPTS) -o $@ $+
|
- $(STRIP) $@
|
-
|
-Clients: setup libdns_sd ../Clients/build/dns-sd
|
- @echo "Clients done"
|
+ $(LD) -shared $(LINKOPTS) -Wl,-soname,libdns_sd.$(LDSUFFIX).1 -o $@ $+
|
|
-../Clients/build/dns-sd: ../Clients/dns-sd.c
|
+Clients: setup libdns_sd
|
$(MAKE) -C ../Clients DEBUG=$(DEBUG) SUPMAKE_CFLAGS="$(MDNSCFLAGS)"
|
|
# nss_mdns target builds the Name Service Switch module
|
@@ -300,8 +297,7 @@ nss_mdns: setup $(BUILDDIR)/$(NSSLIBFILE)
|
@echo "Name Service Switch module done"
|
|
$(BUILDDIR)/$(NSSLIBFILE): $(CLIENTLIBOBJS) $(OBJDIR)/nss_mdns.c.so.o
|
- $(LD) $(SOOPTS) $(LINKOPTS) -o $@ $+
|
- $(STRIP) $@
|
+ $(LD) -shared $(LINKOPTS) -o $@ $+
|
|
#############################################################################
|
|
@@ -494,21 +490,21 @@ dnsextd: setup $(BUILDDIR)/dnsextd
|
@echo "dnsextd done"
|
|
$(BUILDDIR)/mDNSClientPosix: $(APPOBJ) $(OBJDIR)/Client.c.o
|
- $(CC) $+ -o $@ $(LINKOPTS)
|
+ $(CC) $+ -o $@
|
|
$(BUILDDIR)/mDNSResponderPosix: $(COMMONOBJ) $(OBJDIR)/Responder.c.o
|
- $(CC) $+ -o $@ $(LINKOPTS)
|
+ $(CC) $+ -o $@
|
|
$(BUILDDIR)/mDNSProxyResponderPosix: $(COMMONOBJ) $(OBJDIR)/ProxyResponder.c.o
|
- $(CC) $+ -o $@ $(LINKOPTS)
|
+ $(CC) $+ -o $@
|
|
$(BUILDDIR)/mDNSNetMonitor: $(SPECIALOBJ) $(OBJDIR)/NetMonitor.c.o
|
- $(CC) $+ -o $@ $(LINKOPTS)
|
+ $(CC) $+ -o $@
|
|
$(OBJDIR)/NetMonitor.c.o: $(COREDIR)/mDNS.c # Note: NetMonitor.c textually imports mDNS.c
|
|
$(BUILDDIR)/dnsextd: $(DNSEXTDOBJ) $(OBJDIR)/dnsextd.c.threadsafe.o
|
- $(CC) $+ -o $@ $(LINKOPTS) $(LINKOPTS_PTHREAD)
|
+ $(CC) $+ -o $@ $(LINKOPTS_PTHREAD)
|
|
#############################################################################
|
|
--
|
2.20.1
|