packages/net/mdnsresponder/patches/001-cross_compile.patch

126 lines
4.6 KiB
Diff
Raw Normal View History

diff -u --recursive mDNSResponder-214.3.2-vanilla/Clients/Makefile mDNSResponder-214.3.2/Clients/Makefile
--- mDNSResponder-214.3.2-vanilla/Clients/Makefile 2010-10-15 08:38:44.817282399 -0500
+++ mDNSResponder-214.3.2/Clients/Makefile 2010-10-15 08:40:09.696672081 -0500
@@ -62,6 +62,8 @@
#############################################################################
+CC = @cc
+
# On OS X the dns_sd library functions are included in libSystem, which is implicitly linked with every executable
# 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
ifneq "$(wildcard /usr/lib/libSystem.dylib)" ""
@@ -81,10 +83,10 @@
mkdir build
build/dns-sd: build dns-sd.c ClientCommon.c
- cc $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@
+ $(CC) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@
build/dns-sd64: build dns-sd.c ClientCommon.c
- cc $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ -m64
+ $(CC) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ -m64
# Note, we can make a 'fat' version of dns-sd using 'lipo', as shown below, but we
# don't, because we don't want or need a 'fat' version of dns-sd, because it will
diff -u --recursive mDNSResponder-214.3.2-vanilla/mDNSPosix/Makefile mDNSResponder-214.3.2/mDNSPosix/Makefile
--- mDNSResponder-214.3.2-vanilla/mDNSPosix/Makefile 2010-10-15 08:38:44.798283212 -0500
+++ mDNSResponder-214.3.2/mDNSPosix/Makefile 2010-10-15 08:46:28.739548087 -0500
@@ -316,10 +316,11 @@
SHAREDDIR ?= ../mDNSShared
JDK = /usr/jdk
-CC = @cc
+CC = @gcc
BISON = @bison
FLEX = @flex
-LD = ld -shared
+LD = @ld
+SOOPTS = -shared
CP = cp
RM = rm
LN = ln -s -f
@@ -344,7 +345,7 @@
CFLAGS_DEBUG = -Os -DMDNS_DEBUGMSGS=0
OBJDIR ?= objects/prod
BUILDDIR ?= build/prod
-STRIP = strip -S
+STRIP = @strip -S
endif
# Configure per-OS peculiarities
@@ -353,7 +354,7 @@
CFLAGS_OS = -DNOT_HAVE_DAEMON -DNOT_HAVE_SA_LEN -DNOT_HAVE_SOCKLEN_T -DNOT_HAVE_IF_NAMETOINDEX \
-DLOG_PERROR=0 -D_XPG4_2 -D__EXTENSIONS__ -DHAVE_BROKEN_RECVIF_NAME -DTARGET_OS_SOLARIS
CC = gcc
-LD = gcc -shared
+LD = gcc
LINKOPTS = -lsocket -lnsl -lresolv
JAVACFLAGS_OS += -I$(JDK)/include/solaris
ifneq ($(DEBUG),1)
@@ -404,7 +405,8 @@
CFLAGS_OS = -DHAVE_IPV6 -no-cpp-precomp -Werror -Wdeclaration-after-statement \
-D__MAC_OS_X_VERSION_MIN_REQUIRED=__MAC_OS_X_VERSION_10_4 #-Wunreachable-code
CC = @gcc-4.0
-LD = $(CC) -dynamiclib
+LD = $(CC)
+SOOPTS = -dynamiclib
LINKOPTS = -lSystem
LDSUFFIX = dylib
JDK = /System/Library/Frameworks/JavaVM.framework/Home
@@ -426,8 +428,9 @@
NSSLINKNAME := $(NSSLIBNAME).so.2
NSSINSTPATH := /lib
-# If not otherwise defined, we install into /usr/lib and /usr/include
+# If not otherwise defined, we install into /usr/lib, /usr/include and /etc
# and our startup script is called mdns (e.g. /etc/init.d/mdns)
+ETCBASE?=/etc
INSTBASE?=/usr
STARTUPSCRIPTNAME?=mdns
@@ -511,7 +514,7 @@
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) $(LINKOPTS) -o $@ $+
+ @$(LD) $(SOOPTS) $(LINKOPTS) -o $@ $+
@$(STRIP) $@
Clients: setup libdns_sd ../Clients/build/dns-sd
@@ -546,7 +549,7 @@
InstalledClients: $(INSTBASE)/bin/dns-sd
@echo $+ " installed"
-InstalledNSS: $(NSSINSTPATH)/$(NSSLINKNAME) /etc/nss_mdns.conf $(MANPATH)/man5/nss_mdns.conf.5 $(MANPATH)/man8/libnss_mdns.8
+InstalledNSS: $(NSSINSTPATH)/$(NSSLINKNAME) $(ETCBASE)/nss_mdns.conf $(MANPATH)/man5/nss_mdns.conf.5 $(MANPATH)/man8/libnss_mdns.8
@echo $+ " installed"
# Note: If daemon already installed, we make sure it's stopped before overwriting it
@@ -601,19 +604,21 @@
$(NSSINSTPATH)/$(NSSLINKNAME): $(NSSINSTPATH)/$(NSSLIBFILE)
$(LN) $< $@
- ldconfig
+ifdef LDCONFIG
+ $(LDCONFIG)
+endif
$(NSSINSTPATH)/$(NSSLIBFILE): $(BUILDDIR)/$(NSSLIBFILE)
$(CP) $< $@
chmod 444 $@
-/etc/nss_mdns.conf: nss_mdns.conf
+$(ETCBASE)/nss_mdns.conf: nss_mdns.conf
$(CP) $< $@
chmod 444 $@
# Check the nsswitch.conf file.
# If 'mdns' does not already appear on the "hosts:" line, then add it right before 'dns'
- cp -f /etc/nsswitch.conf /etc/nsswitch.conf.pre-mdns
- sed -e '/mdns/!s/^\(hosts:.*\)dns\(.*\)/\1mdns dns\2/' /etc/nsswitch.conf.pre-mdns > /etc/nsswitch.conf
+ -[ -f $(ETCBASE)/nsswitch.conf ] && cp -f $(ETCBASE)/nsswitch.conf $(ETCBASE)/nsswitch.conf.pre-mdns
+ -[ -f $(ETCBASE)/nsswitch.conf ] && sed -e '/mdns/!s/^\(hosts:.*\)dns\(.*\)/\1mdns dns\2/' $(ETCBASE)/nsswitch.conf.pre-mdns > $(ETCBASE)/nsswitch.conf
#############################################################################