From 9bd21e4676225bf55ecb19a36fb45f58352c2056 Mon Sep 17 00:00:00 2001
From: Marcus Agehall <agehall@gmail.com>
Date: Mon, 3 Jan 2005 14:17:07 +0100
Subject: [PATCH] Added configure test for dlinit() which doesn't exist on many
 platforms.

Rev: src/configure.in:1.865
Rev: src/main.c:1.223
Rev: src/pike_embed.h:1.5
---
 src/configure.in | 11 +++++++++--
 src/main.c       |  4 +++-
 src/pike_embed.h |  4 +++-
 3 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/src/configure.in b/src/configure.in
index 903d2d91ba..5d1df256f2 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1,4 +1,4 @@
-AC_REVISION("$Id: configure.in,v 1.864 2004/12/30 13:43:45 grubba Exp $")
+AC_REVISION("$Id: configure.in,v 1.865 2005/01/03 13:17:07 agehall Exp $")
 AC_INIT(interpret.c)
 AC_CONFIG_HEADER(machine.h)
 
@@ -4720,7 +4720,14 @@ MY_CHECK_FUNCTION(isunordered,
   exit(0);
 ])
 ########################################################################
-
+MY_CHECK_FUNCTION(dlinit,
+[
+#include <dlfcn.h>
+], [
+  dlinit();
+  exit(0);
+})
+########################################################################
 MY_CHECK_FUNCTION(dlopen,
 [
 #include <dlfcn.h>
diff --git a/src/main.c b/src/main.c
index e6b7b520ec..b170c64192 100644
--- a/src/main.c
+++ b/src/main.c
@@ -2,7 +2,7 @@
 || This file is part of Pike. For copyright information see COPYRIGHT.
 || Pike is distributed under GPL, LGPL and MPL. See the file COPYING
 || for more information.
-|| $Id: main.c,v 1.222 2005/01/01 17:35:54 grubba Exp $
+|| $Id: main.c,v 1.223 2005/01/03 13:17:07 agehall Exp $
 */
 
 #include "global.h"
@@ -250,10 +250,12 @@ int main(int argc, char **argv)
   find_lib_dir(argc, argv);
 
 #ifdef LIBPIKE
+#ifdef HAVE_DLINIT
   if (!dlinit()) {
     fprintf(stderr, "dlinit failed.\n");
     exit(1);
   }
+#endif /* HAVE_DLINIT */
 
   if (!(libpike = dlopen(libpike_name, RTLD_NOW))) {
     const char *err = dlerror();
diff --git a/src/pike_embed.h b/src/pike_embed.h
index 0eb70db7f3..cbe98e29bc 100644
--- a/src/pike_embed.h
+++ b/src/pike_embed.h
@@ -1,5 +1,5 @@
 /*
- * $Id: pike_embed.h,v 1.4 2005/01/01 17:35:54 grubba Exp $
+ * $Id: pike_embed.h,v 1.5 2005/01/03 13:17:07 agehall Exp $
  *
  * Pike embedding API.
  *
@@ -65,4 +65,6 @@ DECLSPEC(noreturn) void pike_do_exit(int num) ATTRIBUTE((noreturn));
 void pike_push_argv(int argc, char **argv);
 void pike_push_env(void);
 
+extern char libpike_name[];
+
 #endif /* PIKE_EMBED_H */
-- 
GitLab