develooper Front page | perl.perl5.porters | Postings from January 2004

[PATCH] dl_unload_file for HP-UX

Thread Next
From:
Neil Watkiss
Date:
January 12, 2004 08:45
Subject:
[PATCH] dl_unload_file for HP-UX
Message ID:
20040112154944.GA15412@ActiveState.com
It looks like DynaLoader doesn't implement dl_unload_file() on HP-UX. I
can only assume this is because early versions of HP-UX didn't support
shl_unload(), but it certainly looks like this patch should work.

Without this patch, calling DynaLoader::dl_unload_file() on HP-UX
generates this error message:

----8<----
Can't locate auto/DynaLoader/dl_unload_f.al in @INC (@INC contains: ../blib/arch ../blib/lib /home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/5.6.1/PA-RISC1.1-thread-multi /home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/5.6.1/PA-RISC1.1-thread-multi/home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/5.6.1 /home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/5.6.1/PA-RISC1.1-thread-multi /home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/5.6.1 /home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/site_perl/5.6.1/PA-RISC1.1-thread-multi /home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/site_perl/5.6.1 /home/autobld/autobld-llbertha-pmx-655/src/perl-87425/lib/site_perl .)
---->8----

Neil

--- ext/DynaLoader/dl_hpux.xs.~1~	Sat Jan 10 18:22:45 2004
+++ ext/DynaLoader/dl_hpux.xs	Sat Jan 10 18:22:45 2004
@@ -102,6 +102,19 @@
         sv_setiv( ST(0), PTR2IV(obj) );
 
 
+int
+dl_unload_file(libref)
+    void *	libref
+  CODE:
+    DLDEBUG(1,PerlIO_printf(Perl_debug_log, "dl_unload_file(%lx):\n", PTR2ul(libref)));
+    RETVAL = (shl_unload(libref) == 0 ? 1 : 0);
+    if (!RETVAL)
+	SaveError(aTHX_ "%s", Strerror(errno));
+    DLDEBUG(2,PerlIO_printf(Perl_debug_log, " retval = %d\n", RETVAL));
+  OUTPUT:
+    RETVAL
+
+
 void *
 dl_find_symbol(libhandle, symbolname)
     void *	libhandle
End of Patch.

Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About