blob: 33590ffc57b74564a8225b1e4d487d5f4f8616e8 [file] [log] [blame]
Andrew Geisslerd688a012020-09-18 13:36:00 -05001From 72405143f9d16514e70b88bc4843c9634b88036a Mon Sep 17 00:00:00 2001
2From: Brendan Le Foll <brendan.le.foll@intel.com>
3Date: Tue, 3 Mar 2015 11:42:57 +0000
4Subject: [PATCH 2/2] mdns: cross compilation fixes for bitbake
5
6Fixes several build errors when incorrect compiler or
7compiler flags are used.
8
9Upstream-Status: Inappropriate [OE-specific]
10
11Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
12Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
13---
14 mDNSPosix/Makefile | 44 ++++++++++++++++++++------------------------
15 1 file changed, 20 insertions(+), 24 deletions(-)
16
17diff --git a/mDNSPosix/Makefile b/mDNSPosix/Makefile
18index 78222e0..18a3af5 100755
19--- a/mDNSPosix/Makefile
20+++ b/mDNSPosix/Makefile
21@@ -50,6 +50,7 @@
22
23 LIBVERS = 1
24
25+POSIXDIR = ../mDNSPosix
26 COREDIR = ../mDNSCore
27 SHAREDDIR ?= ../mDNSShared
28 DSODIR ?= ../DSO
29@@ -62,16 +63,16 @@ else ifeq ($(SYSTEM), Linux)
30 os=linux
31 endif
32
33-CC = cc
34-BISON = bison
35-FLEX = flex
36-ST = strip
37-LD = ld
38+CC ?= cc
39+BISON ?= bison
40+FLEX ?= flex
41+ST ?= strip
42+LD ?= ld
43 SOOPTS = -shared
44 CP = cp
45 RM = rm
46 LN = ln -s -f
47-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\"
48+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\"
49 CFLAGS_PTHREAD =
50 LINKOPTS =
51 LINKOPTS_PTHREAD = -lpthread
52@@ -85,6 +86,7 @@ CFLAGS_OPEN_SOURCE=
53 endif
54
55 # Set up diverging paths for debug vs. prod builds
56+DEBUG ?= 1
57 ifeq "$(DEBUG)" "1"
58 CFLAGS_DEBUGGING = -g -DMDNS_DEBUGMSGS=2
59 OBJDIR = objects/debug
60@@ -101,8 +103,8 @@ else
61 # 1. We want to make small binaries, suitable for putting into hardware devices
62 # 2. Some of the code analysis warnings only work when some form of optimization is enabled
63 CFLAGS_DEBUGGING = -g -DMDNS_DEBUGMSGS=0
64-OBJDIR ?= objects/prod
65-BUILDDIR ?= build/prod
66+OBJDIR = objects/prod
67+BUILDDIR = build/prod
68 STRIP = $(ST) -S
69 endif
70 endif
71@@ -125,7 +127,7 @@ else
72 # any target that contains the string "linux"
73 ifeq ($(findstring linux,$(os)),linux)
74 CFLAGS_OS = -D_GNU_SOURCE -DHAVE_IPV6 -DNOT_HAVE_SA_LEN -DUSES_NETLINK -DHAVE_LINUX -DTARGET_OS_LINUX -ftabstop=4
75-LD = $(CC)
76+LD ?= $(CC)
77 SOOPTS = -shared
78 FLEXFLAGS_OS = -l
79 JAVACFLAGS_OS += -I$(JDK)/include/linux
80@@ -276,8 +278,7 @@ Daemon: setup $(BUILDDIR)/mdnsd
81 @echo "Responder daemon done"
82
83 $(BUILDDIR)/mdnsd: $(DAEMONOBJS)
84- $(CC) -o $@ $+ $(LINKOPTS)
85- $(STRIP) $@
86+ $(LD) -o $@ $+
87
88 # libdns_sd target builds the client library
89 libdns_sd: setup $(BUILDDIR)/libdns_sd.$(LDSUFFIX)
90@@ -286,13 +287,9 @@ libdns_sd: setup $(BUILDDIR)/libdns_sd.$(LDSUFFIX)
91 CLIENTLIBOBJS = $(OBJDIR)/dnssd_clientlib.c.so.o $(OBJDIR)/dnssd_clientstub.c.so.o $(OBJDIR)/dnssd_ipc.c.so.o
92
93 $(BUILDDIR)/libdns_sd.$(LDSUFFIX): $(CLIENTLIBOBJS)
94- $(LD) $(SOOPTS) $(LINKOPTS) -o $@ $+
95- $(STRIP) $@
96-
97-Clients: setup libdns_sd ../Clients/build/dns-sd
98- @echo "Clients done"
99+ $(LD) -shared $(LINKOPTS) -Wl,-soname,libdns_sd.$(LDSUFFIX).1 -o $@ $+
100
101-../Clients/build/dns-sd: ../Clients/dns-sd.c
102+Clients: setup libdns_sd
103 $(MAKE) -C ../Clients DEBUG=$(DEBUG) SUPMAKE_CFLAGS="$(MDNSCFLAGS)"
104
105 # nss_mdns target builds the Name Service Switch module
106@@ -300,8 +297,7 @@ nss_mdns: setup $(BUILDDIR)/$(NSSLIBFILE)
107 @echo "Name Service Switch module done"
108
109 $(BUILDDIR)/$(NSSLIBFILE): $(CLIENTLIBOBJS) $(OBJDIR)/nss_mdns.c.so.o
110- $(LD) $(SOOPTS) $(LINKOPTS) -o $@ $+
111- $(STRIP) $@
112+ $(LD) -shared $(LINKOPTS) -o $@ $+
113
114 #############################################################################
115
116@@ -494,21 +490,21 @@ dnsextd: setup $(BUILDDIR)/dnsextd
117 @echo "dnsextd done"
118
119 $(BUILDDIR)/mDNSClientPosix: $(APPOBJ) $(OBJDIR)/Client.c.o
120- $(CC) $+ -o $@ $(LINKOPTS)
121+ $(CC) $+ -o $@
122
123 $(BUILDDIR)/mDNSResponderPosix: $(COMMONOBJ) $(OBJDIR)/Responder.c.o
124- $(CC) $+ -o $@ $(LINKOPTS)
125+ $(CC) $+ -o $@
126
127 $(BUILDDIR)/mDNSProxyResponderPosix: $(COMMONOBJ) $(OBJDIR)/ProxyResponder.c.o
128- $(CC) $+ -o $@ $(LINKOPTS)
129+ $(CC) $+ -o $@
130
131 $(BUILDDIR)/mDNSNetMonitor: $(SPECIALOBJ) $(OBJDIR)/NetMonitor.c.o
132- $(CC) $+ -o $@ $(LINKOPTS)
133+ $(CC) $+ -o $@
134
135 $(OBJDIR)/NetMonitor.c.o: $(COREDIR)/mDNS.c # Note: NetMonitor.c textually imports mDNS.c
136
137 $(BUILDDIR)/dnsextd: $(DNSEXTDOBJ) $(OBJDIR)/dnsextd.c.threadsafe.o
138- $(CC) $+ -o $@ $(LINKOPTS) $(LINKOPTS_PTHREAD)
139+ $(CC) $+ -o $@ $(LINKOPTS_PTHREAD)
140
141 #############################################################################
142
143--
1442.20.1
145