First Commit
[librecmc/package-feed.git] / net / mdnsresponder / patches / 001-cross_compile.patch
1 --- a/Clients/Makefile
2 +++ b/Clients/Makefile
3 @@ -27,6 +27,8 @@
4  
5  #############################################################################
6  
7 +CC = @cc
8 +
9  # On OS X the dns_sd library functions are included in libSystem, which is implicitly linked with every executable
10  # If /usr/lib/libSystem.dylib exists, then we're on OS X, so we don't need also to link the "dns_sd" shared library
11  ifneq "$(wildcard /usr/lib/libSystem.dylib)" ""
12 @@ -46,10 +48,10 @@ build:
13         mkdir build
14  
15  build/dns-sd: build dns-sd.c ClientCommon.c
16 -       $(CC) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@
17 +       $(CC) $(CFLAGS) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@
18  
19  build/dns-sd64: build dns-sd.c ClientCommon.c
20 -       $(CC) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ -m64
21 +       $(CC) $(CFLAGS) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ -m64
22  
23  # Note, we can make a 'fat' version of dns-sd using 'lipo', as shown below, but we
24  # don't, because we don't want or need a 'fat' version of dns-sd, because it will
25 --- a/mDNSPosix/Makefile
26 +++ b/mDNSPosix/Makefile
27 @@ -54,11 +54,12 @@ COREDIR = ../mDNSCore
28  SHAREDDIR ?= ../mDNSShared
29  JDK = /usr/jdk
30  
31 -CC = @cc
32 +CC = @gcc
33  BISON = @bison
34  FLEX = @flex
35  ST = @strip
36 -LD = ld -shared
37 +LD = @ld
38 +SOOPTS = -shared
39  CP = cp
40  RM = rm
41  LN = ln -s -f
42 @@ -92,7 +93,7 @@ CFLAGS_DEBUG = -O0 -DMDNS_DEBUGMSGS=0
43  CFLAGS_OS = -DNOT_HAVE_DAEMON -DNOT_HAVE_SA_LEN -DNOT_HAVE_SOCKLEN_T -DNOT_HAVE_IF_NAMETOINDEX \
44          -DLOG_PERROR=0 -D_XPG4_2 -D__EXTENSIONS__ -DHAVE_BROKEN_RECVIF_NAME -DTARGET_OS_SOLARIS
45  CC = gcc
46 -LD = gcc -shared
47 +LD = gcc
48  LINKOPTS = -lsocket -lnsl -lresolv
49  JAVACFLAGS_OS += -I$(JDK)/include/solaris
50  ifneq ($(DEBUG),1)
51 @@ -148,7 +149,8 @@ CFLAGS_OS = -DHAVE_IPV6 -no-cpp-precomp
52         -D__MAC_OS_X_VERSION_MIN_REQUIRED=__MAC_OS_X_VERSION_10_4 \
53         -D__APPLE_USE_RFC_2292 #-Wunreachable-code
54  CC = gcc
55 -LD = $(CC) -dynamiclib
56 +LD = $(CC)
57 +SOOPTS= -dynamiclib
58  LINKOPTS = -lSystem
59  LDSUFFIX = dylib
60  JDK = /System/Library/Frameworks/JavaVM.framework/Home
61 @@ -170,8 +172,9 @@ NSSLIBFILE  := $(NSSLIBNAME)-$(NSSVERSIO
62  NSSLINKNAME := $(NSSLIBNAME).so.2
63  NSSINSTPATH := /lib
64  
65 -# If not otherwise defined, we install into /usr/lib and /usr/include
66 +# If not otherwise defined, we install into /usr/lib, /usr/include and /etc
67  # and our startup script is called mdns (e.g. /etc/init.d/mdns)
68 +ETCBASE?=/etc
69  INSTBASE?=/usr
70  STARTUPSCRIPTNAME?=mdns
71  
72 @@ -257,7 +260,7 @@ libdns_sd: setup $(BUILDDIR)/libdns_sd.$
73  CLIENTLIBOBJS = $(OBJDIR)/dnssd_clientlib.c.so.o $(OBJDIR)/dnssd_clientstub.c.so.o $(OBJDIR)/dnssd_ipc.c.so.o
74  
75  $(BUILDDIR)/libdns_sd.$(LDSUFFIX): $(CLIENTLIBOBJS)
76 -       @$(LD) $(LINKOPTS) -o $@ $+
77 +       @$(LD) $(SOOPTS) $(LINKOPTS) -o $@ $+
78         @$(STRIP) $@
79  
80  Clients: setup libdns_sd ../Clients/build/dns-sd
81 @@ -292,7 +295,7 @@ InstalledManPages: $(MANPATH)/man8/mdnsd
82  InstalledClients: $(INSTBASE)/bin/dns-sd
83         @echo $+ " installed"
84  
85 -InstalledNSS: $(NSSINSTPATH)/$(NSSLINKNAME) /etc/nss_mdns.conf $(MANPATH)/man5/nss_mdns.conf.5 $(MANPATH)/man8/libnss_mdns.8
86 +InstalledNSS: $(NSSINSTPATH)/$(NSSLINKNAME) $(ETCBASE)/nss_mdns.conf $(MANPATH)/man5/nss_mdns.conf.5 $(MANPATH)/man8/libnss_mdns.8
87         @echo $+ " installed"
88  
89  # Note: If daemon already installed, we make sure it's stopped before overwriting it
90 @@ -347,19 +350,21 @@ $(INSTBASE)/bin/dns-sd: ../Clients/build
91  
92  $(NSSINSTPATH)/$(NSSLINKNAME): $(NSSINSTPATH)/$(NSSLIBFILE)
93         $(LN) $< $@
94 -       ldconfig
95 +ifdef LDCONFIG
96 +       $(LDCONFIG)
97 +endif
98  
99  $(NSSINSTPATH)/$(NSSLIBFILE): $(BUILDDIR)/$(NSSLIBFILE)
100         $(CP) $< $@
101         chmod 444 $@
102  
103 -/etc/nss_mdns.conf: nss_mdns.conf
104 +$(ETCBASE)/nss_mdns.conf: nss_mdns.conf
105         $(CP) $< $@
106         chmod 444 $@
107         # Check the nsswitch.conf file.
108         # If 'mdns' does not already appear on the "hosts:" line, then add it right before 'dns'
109 -       cp -f /etc/nsswitch.conf /etc/nsswitch.conf.pre-mdns
110 -       sed -e '/mdns/!s/^\(hosts:.*\)dns\(.*\)/\1mdns dns\2/' /etc/nsswitch.conf.pre-mdns > /etc/nsswitch.conf
111 +       -[ -f $(ETCBASE)/nsswitch.conf ] && cp -f $(ETCBASE)/nsswitch.conf $(ETCBASE)/nsswitch.conf.pre-mdns
112 +       -[ -f $(ETCBASE)/nsswitch.conf ] && sed -e '/mdns/!s/^\(hosts:.*\)dns\(.*\)/\1mdns dns\2/' $(ETCBASE)/nsswitch.conf.pre-mdns > $(ETCBASE)/nsswitch.conf
113  
114  #############################################################################
115