Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^3: MakeMaker and Library filename extensions

by syphilis (Canon)
on Jan 21, 2013 at 04:30 UTC ( #1014382=note: print w/ replies, xml ) Need Help??


in reply to Re^2: MakeMaker and Library filename extensions
in thread MakeMaker and Library filename extensions

it was just a local copy of the readonly Config::Config{}

Yes, you can overwrite its values.
That won't alter %Config::Config at all, but as long as the values are taken from this local %Config then you can perhaps make use of it.

However, my preference would still be to overwrite %Config::Config itself as that is cleaner and simpler (IMO).
Also, there might be something in the .pm file or the test suite that looks specifically at %Config::Config rather than this local copy that EU::MM uses.

Cheers,
Rob


Comment on Re^3: MakeMaker and Library filename extensions
Re^4: MakeMaker and Library filename extensions
by Anonymous Monk on Jan 21, 2013 at 22:27 UTC
    That won't alter %Config::Config at all, but as long as the values are taken from this local %Config then you can perhaps make use of it.

    I've been through the EU code, for the most part it refers to it's local %Config, though there are the following:

    In Base.pm: $Config::Config{perlpath})
    In Install.pm: $Config::Config{make}
    In MakeMaker.pm: $Config::Config{eunicefix}
    In MM_Os2.pm: $Config::Config{lib_ext}
    In Mkbootstrap.pm: @Config::Config{qw(osname dlsrc)}
    In Mksymlists.pm: $Config::Config{archname}
    In Mksymlists.pm: $Config::Config{version}
    In Mksymlists.pm: $Config::Config{'cc'}
    In Mksymlists.pm: $Config::Config{d_vms_case_sensitive_symbols}

    Love the consistency ...

    So as I see it as long as you don't want to muck with the above listed values one should be good to go using ExtUtils::MakeMaker::Config in ones Makefile.PL.
    Obliviously this is only going to work within the scope of the current Makefile.PL.

    However, my preference would still be to overwrite %Config::Config itself as that is cleaner and simpler (IMO).

    I agree, However it appears big brother does not ...

    I still find this does not serve my needs.
    For my needs the real issue is, on *nix, ExtUtils::Liblist::Kid will not allow fully qualified library names.

    The standard technique for including a Static library over a Shared library is to use the fully qualified filename without the '-l' library tag. As in:
    -L/usr/local/lib /usr/local/lib/libmylib.a
    This tells the make tool chain to blindly use it, where '-lmylib' says search for libmylib.so (or versions of it) if found use it, if not look for libmylib.a (or versions of it).

    ExtUtils::Liblist::Kid ignores and tosses out anything that doesn't have either a '-L' or '-l' tag.

    My words for ExtUtils-MakeMaker: If you don't understand it, pass it on ... Don't toss it!
    Someone may be smarter then you and know what to do with it!

    And I don't mean a human ... I mean the make tool chain.

    Peace out.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1014382]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (5)
As of 2014-09-23 04:55 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (210 votes), past polls