in reply to Makefile.PL Question

Update: My solution here is not cross-platform. See AnonyMonk's post Re^2: Makefile.PL Question for details as to why.

# original post

This might be very far off, so I'll let other Monks intervene if this is a bad idea, but I just tried adding symlink('apps', 't'); to the top of a Makefile.PL of one of my modules, and things seemed to go ok:

$ cat Makefile.PL # Note: this file was auto-generated by Module::Build::Compat version +0.4214 require 5.006; use ExtUtils::MakeMaker; symlink('apps', 't'); # <-- *** I added this line *** WriteMakefile ( 'PL_FILES' => {}, 'EXE_FILES' => [], 'NAME' => 'Devel::Examine::Subs', 'INSTALLDIRS' => 'site', 'VERSION_FROM' => 'lib/Devel/Examine/Subs.pm', 'PREREQ_PM' => { 'File::Find' => 0, 'Data::Dumper' => 0, 'Tie::File' => 0, 'Carp' => 0, 'Test::Trap' => 0, 'Test::More' => 0, 'PPI' => 0 } ) ;

Output:

steve@spek ~/devel $ hg clone https://spek@bitbucket.org/spek/devel-ex +amine-subs ... steve@spek ~/devel $ cd devel-examine-subs/ steve@spek ~/devel/devel-examine-subs $ mv t apps steve@spek ~/devel/devel-examine-subs $ vi Makefile.PL # added the said symlink code here steve@spek ~/devel/devel-examine-subs $ perl Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Devel::Examine::Subs Writing MYMETA.yml and MYMETA.json # make test steve@spek ~/devel/devel-examine-subs $ make && make test cp lib/Devel/Examine/Subs/Preprocessor.pm blib/lib/Devel/Examine/Subs/ +Preprocessor.pm cp lib/Devel/Examine/Subs/Engine.pm blib/lib/Devel/Examine/Subs/Engine +.pm cp lib/Devel/Examine/Subs/Sub.pm blib/lib/Devel/Examine/Subs/Sub.pm cp lib/Devel/Examine/Subs.pm blib/lib/Devel/Examine/Subs.pm cp lib/Devel/Examine/Subs/Prefilter.pm blib/lib/Devel/Examine/Subs/Pre +filter.pm Manifying 4 pod documents PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::H +arness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/l +ib', 'blib/arch')" t/*.t t/00-load.t ................................ 1/20 # Testing Devel::Exa +mine::Subs 1.28, Perl 5.022000, /usr/bin/perl t/00-load.t ................................ ok t/01-internal.t ............................ ok t/02-has.t ................................. 1/26 ^Cmake: *** [test_dy +namic] Interrupt # seems to work

Is that what you were after?

-stevieb

Replies are listed 'Best First'.
Re^2: Makefile.PL Question
by Anonymous Monk on Sep 03, 2015 at 23:55 UTC

    This might be very far off, so I'll let other Monks intervene if this is a bad idea, but I just tried adding symlink...

    See perlport#symlink

      Thanks... I've read the info that you've provided, and point taken. It's not often I have to think cross-platform.