From: Gurusamy Sarathy Date: Wed, 22 Mar 2000 18:41:50 +0000 (+0000) Subject: make unloading of extension shared objects (change#5381) a build X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=23d2500b2b45b1beddc8de6ccd7c60068286d061;p=p5sagit%2Fp5-mst-13.2.git make unloading of extension shared objects (change#5381) a build option (use "Configure -Accflags=-DDL_UNLOAD_ALL_AT_EXIT" to enable) p4raw-link: @5381 on //depot/perl: abb9e9dca5a5f1213886f2e81a42c9a565def727 p4raw-id: //depot/perl@5885 --- diff --git a/ext/DynaLoader/dlutils.c b/ext/DynaLoader/dlutils.c index 5c6bbea..7b67cf0 100644 --- a/ext/DynaLoader/dlutils.c +++ b/ext/DynaLoader/dlutils.c @@ -69,7 +69,9 @@ dl_generic_private_init(pTHXo) /* called by dl_*.xs dl_private_init() */ if (!dl_loaded_files) dl_loaded_files = newHV(); /* provide cache for dl_*.xs if needed */ #endif +#ifdef DL_UNLOAD_ALL_AT_EXIT call_atexit(&dl_unload_all_files, (void*)0); +#endif } diff --git a/pod/perldelta.pod b/pod/perldelta.pod index df1e68d..610e84b 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -1484,6 +1484,16 @@ L and L. The Dumpvalue module provides screen dumps of Perl data. +=item DynaLoader + +DynaLoader now supports a dl_unload_file() function on platforms that +support unloading shared objects using dlclose(). + +Perl can also optionally arrange to unload all extension shared objects +loaded by Perl. To enable this, build Perl with the Configure option +C<-Accflags=-DDL_UNLOAD_ALL_AT_EXIT>. (This maybe useful if you are +using Apache with mod_perl.) + =item Benchmark Overall, Benchmark results exhibit lower average error and better timing @@ -1852,6 +1862,11 @@ pathname for FILENAME in scalar context. In list context it returns a two-element list containing the fully qualified directory name and the filename. See L. +=item XSLoader + +The XSLoader extension is a simpler alternative to DynaLoader. +See L. + =item DBM Filters A new feature called "DBM Filters" has been added to all the