Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PATCH] Use the standard LIBS and INC instead of special EXPAT options. [rt.cpan.org #32123] #65

Open
toddr opened this issue Sep 24, 2019 · 0 comments

Comments

@toddr
Copy link
Member

toddr commented Sep 24, 2019

Migrated from rt.cpan.org#32123 (status was 'open')

Requestors:

Attachments:

From [email protected] on 2008-01-07 09:19:07
:

Adam Kennedy pointed out to me that XML::Parser wants special EXPAT
options to the Makefile.PL in order to set the location of the expat
libraries.  It should simply be using the standard LIBS and INC options.

The requirement for special options seems to be an artifact of Expat
working in it's own subdirectory.  This patch merges the Expat sub
directory into the top level eliminating the second Makefile.PL and
significantly simplifying things.

In the process I threw the hard coded C:/lib/Expat-2.0.0/ which just
seems short sited.  You're welcome to put it back in, but now that it's
using the normal LIBS and INC mechanisms people should have an easier
time making it work.

It also might be useful to put in compatibility for the EXPAT options.

From [email protected] on 2008-01-12 19:36:57
:

On Mon Jan 07 04:19:07 2008, MSCHWERN wrote:
> The requirement for special options seems to be an artifact of Expat
> working in it's own subdirectory.  This patch merges the Expat sub
> directory into the top level eliminating the second Makefile.PL and
> significantly simplifying things.

After applying this patch to a fresh XML-Parser-2.36 tree I tested the
build. `make test' failed with errors represented (duplicated) by this
first one:

t/astress.........XML::Parser::Expat object version 2.34 does not match
bootstrap parameter 2.36 at /usr/lib/perl/5.8/DynaLoader.pm line 245.

My Perl is version 5.8.8 supplied by Ubuntu pkg management system,
running on Ubuntu GNU/Linux.

I am not sure what broke or why. Ideas? This patch seems needed. Hope it
can be fixed.

   Gracias,
       somian
-- 
Also email <perlspinr=XfrvlLN1Pqtfpb/[email protected]>.


From [email protected] on 2008-01-12 20:40:51
:

Follow-up to my earlier report of `make test' failure after applying the
patch.

Michael Schwern, the "bug report" is probably really against EU::MM or
some Test:: module in the Perl core, because running the tests manually
succeeds in find the right .so file to load.

The following is displayed on the console when `make test' failed as
reported above:

 
somian@bessemer:~/TMP/PATCH-xml-parser.pm/testbuild-XML-Parser.afterpatching$
make test
  PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
 [ failures all through as reported in previous message ]
That commandline does not, for whatever reason, work (on my extremely
ordinary, standard installation of Perl).

If I issue:

 
somian@bessemer:~/TMP/PATCH-xml-parser.pm/testbuild-XML-Parser.afterpatching$
perl -mblib t/astress.t

Then I get a display of "ok" for all tests in that file.

What do you make of it?

   Gracias,
     somian
-- 
Also email <perlspinr=XfrvlLN1Pqtfpb/[email protected]>.


From [email protected] on 2008-01-13 01:53:11
:

Soren Andersen via RT wrote:
> somian@bessemer:~/TMP/PATCH-xml-parser.pm/testbuild-XML-Parser.afterpatching$
> perl -mblib t/astress.t
        ^

-m is "require", blib must be used for it to have an effect.  Try -Mblib.


I'm not sure what's going on with it not finding the right .so file.  It's
probably being masked on my machine because I already have that version
installed.  I'll investigate.


-- 
Being faith-based doesn't trump reality.
	-- Bruce Sterling


From [email protected] on 2008-01-13 02:48:40
:

On Sat Jan 12 20:53:11 2008, [email protected] wrote:
> Soren Andersen via RT wrote:
> > somian@bessemer:~/TMP/PATCH-xml-parser.pm/testbuild-XML-
> Parser.afterpatching$
> > perl -mblib t/astress.t
>         ^
> 
> -m is "require", blib must be used for it to have an effect.  Try
> -Mblib.
 
My bad. Hate it when my attempts to provide info instead cloud the
issue ;-). Confirmed, anyway: When I enter the same command with
-Mblib instead of -mblib I get the error I asked you to investigate,
the mismatched versions problem.

    Gracias,
       Soren Andersen

-- 
Also email <perlspinr=XfrvlLN1Pqtfpb/[email protected]>.


From [email protected] on 2008-01-16 01:45:34
:

Regarding the last exchange between us on Sat Jan 12 20:53:11 2008:

I've worked it and figured out why the patch was failing on the boxes I
tested with (GNU/Linix as mentioned above, and ms windows).

The patch is causing EUMM to create a dynamic lib file "Parser.*"
instead of the required "Expat.*". The reorganization of the source kit
tree is the cause.

I've fixed it and I've created a temporary tarball for testing the
patched - patched - patched source kit (again, for posterity, this is
based on CPAN relase 2.36):

 
http://intrepid.perlmonk.org/apropos.mingw/mingw+perl/CPAN-module-ports/XML-Parser-updatedbuild/

contains a tarball that is the latest (as of this writing) and is named
  XML-Parser-2.36_03.tar.gz

Please test this when possible and let me know how it goes. I'll be
happy to explain or discuss the changes to anyone who asks nicely at a
future time. ;-)

   Salute,
     Soren Andersen  (somian)

-- 
Also email <perlspinr=XfrvlLN1Pqtfpb/[email protected]>.


From [email protected] on 2008-01-16 22:39:55
:

On Tue Jan 15 20:45:34 2008, SOMIAN wrote:
 
> I've fixed it and I've created a temporary tarball for testing the
> patched - patched - patched source kit (again, for posterity, this is
> based on CPAN relase 2.36):
> 
> 
>
http://intrepid.perlmonk.org/apropos.mingw/mingw+perl/CPAN-module-ports/XML-Parser-updatedbuild/
> 
> contains a tarball that is the latest (as of this writing) and is
> named XML-Parser-2.36_03.tar.gz
> 
 
As per a discussion offsite (unofficial channels of communication, eg
irc) the tarball cited above still wasn't working on Strawberry Perl (as
my instance of a ms windows perl). But now I have slain the last gremlin
and the results, hopefully final for the time being, are in the Web
folder cited above, in both .tar.gz and .zip format, as

  XML-Parser-2.36_04.*

*Working* on Strawberry.

This coding effort is also being discussed at Perlmonk.org. It is an
effort that may have applications outside the narrow scope of the
XML::Parser module's build configuration. See the node id #662656 at
your favorite Perlmonk.org hostname.

>    Salute,
>      Soren Andersen  (somian)

-- 
Also email <perlspinr=XfrvlLN1Pqtfpb/[email protected]>.


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant