From 57c99b048256602b76dc2c93b8fd557ae637f61e Mon Sep 17 00:00:00 2001
From: Alexander Afanasyev <afanasev@cs.ucla.edu>
Date: Tue, 25 Nov 2008 23:34:27 -0800
Subject: [PATCH] Changes libnsclick compilation under MacOS

---
 m4/click.m4    |    5 ++++-
 ns/Makefile.in |   16 ++++++++++++----
 2 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/m4/click.m4 b/m4/click.m4
index 6a08b39..dd1e06b 100644
--- a/m4/click.m4
+++ b/m4/click.m4
@@ -206,7 +206,10 @@ AC_DEFUN([CLICK_CHECK_DYNAMIC_LINKING], [
     LDMODULEFLAGS=-shared
     if test "x$ac_have_dynamic_linking" = xyes; then
 	if echo "$ac_cv_target" | grep apple-darwin >/dev/null 2>&1; then
-	    LDMODULEFLAGS='-bundle -flat_namespace -undefined suppress'
+dnl	    LDMODULEFLAGS='-bundle -flat_namespace -undefined suppress'
+	    LDMODULEFLAGS='-dynamiclib -flat_namespace -undefined suppress'
+	    MACOS=$ac_cv_target
+	    AC_SUBST(MACOS)
 	fi
     fi
     AC_MSG_RESULT($LDMODULEFLAGS)
diff --git a/ns/Makefile.in b/ns/Makefile.in
index f1ea231..91e5ea7 100644
--- a/ns/Makefile.in
+++ b/ns/Makefile.in
@@ -87,12 +87,18 @@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(DEPCFLAGS)
 CCLD = $(CC)
 LINK = $(CCLD) $(CFLAGS) $(LDFLAGS) -o $@
 
-ifndef MINDRIVER
-ELEMENTSCONF = elements
-INSTALLLIBS = libnsclick.so
-else
+MACOS=@MACOS@
+
+ifdef MINDRIVER
 ELEMENTSCONF = elements_$(MINDRIVER)
 INSTALLLIBS = libns$(MINDRIVER)click.so
+else
+    ELEMENTSCONF = elements
+    ifdef MACOS
+        INSTALLLIBS = libnsclick.dylib
+    else
+        INSTALLLIBS = libnsclick.so
+    endif
 endif
 
 all: $(INSTALLLIBS)
@@ -103,6 +109,8 @@ endif
 
 libnsclick.so: Makefile $(LIBOBJS) $(OBJS)
 	$(CXXLINK) -shared $(LIBOBJS) $(OBJS)
+libnsclick.dylib: Makefile $(LIBOBJS) $(OBJS)
+	$(CXXLINK) -dynamiclib $(LIBOBJS) $(OBJS)
 libnsclick.a: Makefile $(LIBOBJS) $(OBJS)
 	$(AR_CREATE) libnsclick.a $(LIBOBJS) $(OBJS)
 	$(RANLIB) libnsclick.a
-- 
1.6.0.4

