From 6c271c12023d3aff3e5043a456b156b68042738d Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Sat, 26 Nov 2005 01:52:47 +0000 Subject: added in Jamie's dlopn patch so I can use his binaries; fixed a number of bugs reported on the list; added platform-specific noncvs handling svn path=/trunk/; revision=4035 --- packages/patches/darwin/darwin_dlopen.patch | 65 +++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 packages/patches/darwin/darwin_dlopen.patch (limited to 'packages/patches/darwin') diff --git a/packages/patches/darwin/darwin_dlopen.patch b/packages/patches/darwin/darwin_dlopen.patch new file mode 100644 index 00000000..a93ef7ed --- /dev/null +++ b/packages/patches/darwin/darwin_dlopen.patch @@ -0,0 +1,65 @@ +Index: s_loader.c +=================================================================== +RCS file: /cvsroot/pure-data/pd/src/s_loader.c,v +retrieving revision 1.4 +diff -u -w -r1.4 s_loader.c +--- s_loader.c 6 Sep 2004 20:20:35 -0000 1.4 ++++ s_loader.c 26 Nov 2005 00:27:11 -0000 +@@ -2,6 +2,9 @@ + * For information on usage and redistribution, and for a DISCLAIMER OF ALL + * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ + ++#ifdef __APPLE__ ++#define DL_OPEN ++#endif + #ifdef DL_OPEN + #include + #endif +@@ -13,7 +16,7 @@ + #include + #include + #endif +-#ifdef MACOSX ++#ifdef MACOSX10.2 + #include + #endif + #include +@@ -90,7 +93,7 @@ + if (lastdot = strrchr(nameptr, '.')) + *lastdot = 0; + +-#ifdef MACOSX ++#ifdef MACOSX10.2 + strcpy(symname, "_"); + strcat(symname, nameptr); + #else +@@ -122,7 +125,7 @@ + } + makeout = (t_xxx)GetProcAddress(ntdll, symname); + #endif +-#ifdef MACOSX ++#ifdef MACOSX10.2 + { + NSObjectFileImage image; + void *ret; +@@ -134,8 +137,18 @@ + return 0; + } + ret = NSLinkModule( image, filename, +- NSLINKMODULE_OPTION_BINDNOW + NSLINKMODULE_OPTION_PRIVATE); +- ++ NSLINKMODULE_OPTION_BINDNOW | ++ //NSLINKMODULE_OPTION_PRIVATE | ++ NSLINKMODULE_OPTION_RETURN_ON_ERROR); ++ ++ if (ret == NULL) { ++ int err; ++ const char *fname, *errt; ++ NSLinkEditErrors c; ++ NSLinkEditError(&c, &err, &fname, &errt); ++ post("link error %d %s %s", err, fname, errt); ++ return 0; ++ } + s = NSLookupSymbolInModule(ret, symname); + + if (s) -- cgit v1.2.1