develooper Front page | perl.perl5.porters | Postings from March 2011

Re: [perl #81268] static_ext Cwd: wrong deps

Thread Previous
From:
Tony Cook
Date:
March 31, 2011 05:00
Subject:
Re: [perl #81268] static_ext Cwd: wrong deps
Message ID:
20110331120003.GB14172@mars.tony.develop-help.com
On Sat, Dec 25, 2010 at 05:31:51AM -0800, cygwin@cygwin.com (via RT) wrote:
> Since Cwd has to be loaded for almost every module as core dependency,
> I decided to use it as static_ext.
> However this fails now with the following hardcoded wrong deps in
> Makefile.SH:
> 
>     case $f in
> 	Encode) extra_dep="$extra_dep
> $this_target: lib/auto/Cwd/Cwd.$dlext" ;;
> ...
> 	SDBM_File) extra_dep="$extra_dep
> $this_target: lib/auto/Cwd/Cwd.$dlext" ;;
>     esac
> 
> Same for Scalar::Util and List::Util
> 
> dltext should be replaced with LIB_EXT in the case the ext is static.

Well, not exactly, if they need the functionality provided by the XS
part of the module then they need $(PERL_EXE).  But that isn't the
case here.

The Encode and SDBM_File dependencies were added because these modules
change directory during the build process, and because @INC was setup
with relative paths to the directories needed during the build process
these would fail.

With Nicholas' buildcustomize.pl this is no longer an issue.

Removing these dependencies doesn't entirely fix the issue, since the
various utilities also depend on Cwd.

The Scalar/Util dependency is pure noise - Text/ParseWords is pure
perl and never appears in dynamic_ext, and even if this rule
triggered, the root Makefile doesn't have a
lib/auto/Scalar/Util.$dlext target (and no such file is built anyway.)

I have a set of fixes for this in branch tonyc/staticcwd, but I don't
know if this should be applied with the code freeze.

Tony

Thread Previous


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