Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re^3: ExtUtils::MakeMaker and dot files

by Anonymous Monk
on Jul 19, 2012 at 07:03 UTC ( #982592=note: print w/replies, xml ) Need Help??

in reply to Re^2: ExtUtils::MakeMaker and dot files
in thread ExtUtils::MakeMaker and dot files

My script is something like: make manifest; make clean; removeAppleDouble; perl Makefile.PL; make; make install

:) Well, there's your problem!

 make manifest without a MANIFEST.SKIP gets you into trouble

$ dmake manifest C:\perl\5.14.1\bin\MSWin32-x86-multi-thread\perl.exe "-MExtUtils::Mani +fest=mkmanifest" -e mkmanifest Added to MANIFEST: .AppleDouble/


$ dmake help |grep "make manifest" -A3 make manifest rewrites the MANIFEST file, adding all remaining files found ( +See ExtUtils::Manifest::mkmanifest() for details)

With an addition to MANIFEST.SKIP all goes as planned

$ dmake manifest C:\perl\5.14.1\bin\MSWin32-x86-multi-thread\perl.exe "-MExtUtils::Mani +fest=mkmanifest" -e mkmanifest $ dmake skipcheck C:\perl\5.14.1\bin\MSWin32-x86-multi-thread\perl.exe "-MExtUtils::Mani +fest=skipcheck" -e skipcheck Skipping .AppleDouble/ Skipping Makefile Skipping MANIFEST.bak Skipping MYMETA.json Skipping MYMETA.yml

Replies are listed 'Best First'.
Re^4: ExtUtils::MakeMaker and dot files
by SleepyJay (Beadle) on Jul 19, 2012 at 18:18 UTC

    Folks, I already covered this and I don't know how else to say it: my MANIFEST.SKIP file does indeed exist; it skips .AppleDouble folders; and the MANIFEST file itself does not contain .AppleDouble folders or files. THIS IS ALREADY IN EFFECT.

    And yet my make will still grab lib/Project/.AppleDouble/, even though the MANIFEST *only* says lib/Project/

    For example:

    $ make ... cp lib/Project/ blib/lib/Project/ cp lib/Project/.AppleDouble/ blib/lib/Project/.AppleDouble/Foo.p +m ... $ cat MANIFEST ... lib/Project/ ...

    The MANIFEST did not call for the files in the .AppleDouble folder, but they are still copied to blib. This is still a problem.

      The MANIFEST did not call for the files in the .AppleDouble folder, but they are still copied to blib. This is still a problem.

      Well, .AppleDouble/ sure did not get copied to blib (I tested)

      But lib/.AppleDouble/ did -- you should have been more specific!

      But I'd say its still not a problem because the purpose of MANIFEST.SKIP is to control which files get put into a tarball when you use make dist -- and if you do use  make dist then the resulting tarball will be free of .AppleDouble folders

      Otherwise you'd have to use the icky PM_FILTER option, or the laborious PM option

      PM => { '' => '$(INST_LIBDIR)/', 'lib/' => '$(INST_LIBDIR)/', },

        Sigh. But we aren't making tar balls for distribution in this case. We are moving library-type code to a common location on a server to run in a dev environment. When I run my make mantra, the resulting Makefile itself has TO_INST_PM = lib/Project/.AppleDouble/ in it. That is 100% my problem and it doesn't relate in any way to MANIFEST. I keep saying that MANIFEST isn't my problem, and yet it keeps coming up. What words am I not saying to make this clear?

        My solution has to reside in keeping Makefile.PL from recursing into .AppleDouble directories inside of lib. Or I need a completely different tool or approach. MANIFEST would only be relevant if I could have make install read the MANIFEST when moving to the perl lib area.

        BTW, I tried PM_FILTER => "grep -v \'.AppleDouble\'",, but that didn't seem to do anything--I may just not quite gotten the sytax or quoting quite right?

        I also looked into hacking out the .AppleDouble lines from the Makefile itself, but since I don't quite know what's going inside there, maybe that's a bad idea.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://982592]
[Corion]: Discipulus: Yes, very good spot!
[Discipulus]: a lucky programmer.. as napoleon used to say..
erix wonders... how is the neurocent doing these days?

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (7)
As of 2018-05-25 15:46 GMT
Find Nodes?
    Voting Booth?