Front page | perl.perl5.porters |
Postings from August 2013
how to remove dl_dld.xs?
Thread Next
From:
Nicholas Clark
Date:
August 23, 2013 09:50
Subject:
how to remove dl_dld.xs?
Message ID:
20130823095002.GE74204@plum.flirble.org
I'm not sure if this is the right way to do it:
On Fri, Aug 23, 2013 at 11:41:52AM +0200, Nicholas Clark wrote:
> commit a40caff926bcaadf47e66b4537eebeabc3894ed9
> Author: Nicholas Clark <nick@ccl4.org>
> Date: Fri Aug 23 11:39:40 2013 +0200
>
> Remove support for GNU DLD in DynaLoader
>
> GNU DLD was a library that provided dynamic linking on a.out based systems.
> The last release was in 1996, and it has been superseded by dlopen.
> -----------------------------------------------------------------------
>
> Summary of changes:
> Configure | 13 +--
> Cross/config.sh-arm-linux | 3 +-
> Cross/config.sh-arm-linux-n770 | 3 +-
> MANIFEST | 1 -
> NetWare/config.wc | 3 +-
> Porting/Glossary | 5 -
> Porting/bisect-runner.pl | 2 +-
> Porting/config.sh | 3 +-
> configure.com | 3 +-
> ext/DynaLoader/README | 8 +-
> ext/DynaLoader/dl_dld.xs | 207 -----------------------------------------
> hints/amigaos.sh | 2 +-
> plan9/config_sh.sample | 3 +-
> symbian/config.sh | 1 -
> uconfig.h | 2 +-
> uconfig.sh | 1 -
> uconfig64.sh | 1 -
> win32/config.ce | 3 +-
> win32/config.gc | 5 +-
> win32/config.vc | 5 +-
> 20 files changed, 18 insertions(+), 256 deletions(-)
> delete mode 100644 ext/DynaLoader/dl_dld.xs
In particular
1) should the Configure and hints changes be mixed in with the other changes?
2) Do we actually delete configuration variables?
(in this case i_dld)
Note the tentacles run quite deep on this one. dl_dld.xs is the second level
fallback after dl_dlopen.xs, and it's also mentioned as an example
implementation.
On the upside, it i_dld was never used to create a define in config.h, and
nothing on CPAN uses it: http://grep.cpan.me/?q=i_dld
> diff --git a/Configure b/Configure
> index e4e4075..b9f037a 100755
> --- a/Configure
> +++ b/Configure
> @@ -7914,8 +7906,6 @@ y*) usedl="$define"
> dflt="$dldir/dl_${osname}.xs"
> elif $test "$d_dlopen" = "$define" ; then
> dflt="$dldir/dl_dlopen.xs"
> - elif $test "$i_dld" = "$define" ; then
> - dflt="$dldir/dl_dld.xs"
> else
> dflt=''
> fi
> diff --git a/Porting/Glossary b/Porting/Glossary
> index 1f5b8c9..17d1511 100644
> --- a/Porting/Glossary
> +++ b/Porting/Glossary
> @@ -3027,11 +3027,6 @@ i_dirent (i_dirent.U):
> This variable conditionally defines I_DIRENT, which indicates
> to the C program that it should include <dirent.h>.
>
> -i_dld (i_dld.U):
> - This variable conditionally defines the I_DLD symbol, which
> - indicates to the C program that <dld.h> (GNU dynamic loading)
> - exists and should be included.
> -
> i_dlfcn (i_dlfcn.U):
> This variable conditionally defines the I_DLFCN symbol, which
> indicates to the C program that <dlfcn.h> exists and should
> diff --git a/ext/DynaLoader/README b/ext/DynaLoader/README
> index 0551cf3..0b3e9eb 100644
> --- a/ext/DynaLoader/README
> +++ b/ext/DynaLoader/README
> @@ -38,9 +37,8 @@ after your osname. Configure will give preference to a dl_$osname.xs
> file if one exists.
>
> The file dl_dlopen.xs is a reference implementation by Paul Marquess
> -which is a good place to start if porting from scratch. For more complex
> -platforms take a look at dl_dld.xs. The dlutils.c file holds some
> -common definitions that are #included into the dl_*.xs files.
> +which is a good place to start if porting from scratch. The dlutils.c file
> +holds some common definitions that are #included into the dl_*.xs files.
>
> After the initial implementation of a new DynaLoader dl_*.xs file you
> may need to edit or create ext/MODULE/MODULE.bs files (library bootstrap
[Plus a whole lot of diffs due to libswanted changes, and removing
i_dld='undef'
from a lot of config.sh files]
Nicholas Clark
Thread Next
-
how to remove dl_dld.xs?
by Nicholas Clark