NAME
ylib - Add paths to @INC from a config file
VERSION
version 0.003
SYNOPSIS
# in .mylib file
/home/david/some/library/path
# from the command line
$ perl -Mylib -E 'say for @INC'
/home/david/some/library/path
...
DESCRIPTION
The ylib
module adds paths to @INC
from a configuration file named .mylib
in which each line represents a library path. The .mylib
file can be either in the current directory and/or in the user's home directory. It is equivalent to calling 'use lib'
on each path.
Note: ylib
will issue a warning if a path in .mylib
can't be found.
USAGE
Occasionally, it's useful to customize @INC
on a per-directory basis without changing the global PERL5LIB
environment variable. For example, when developing or testing code that requires uninstalled code in an adjacent directory, one could create a .mylib
file that adds the necessary path.
For example, consider this directory tree with two Perl distributions, Foo-Bar and Baz-Bam:
~/projects/
Foo-Bar/
Baz-Bam/
The code in Foo-Bar depends on code in Baz-Bam. So in Foo-Bar, create a .mylib
file with the appropriate path:
$ cd Foo-Bar
$ echo '../Baz-Bam/lib' > .mylib
$ perl -Mylib Build.PL
$ Build && Build test
That's easier and shorter than using PERL5LIB
on the command line, and it scales better as the number of libraries increases.
In the example above, the Build
script preserve @INC
including the effect of -Mylib
when it was created. This is not the case with Makefile.PL
or prove
, in which case, PERL5OPT
might be an alternative approach for using -Mylib
:
$ export PERL5OPT=-Mylib
$ prove
SUPPORT
Bugs / Feature Requests
Please report any bugs or feature requests through the issue tracker at https://github.com/dagolden/ylib/issues. You will be notified automatically of any progress on your issue.
Source Code
This is open source software. The code repository is available for public review and contribution under the terms of the license.
https://github.com/dagolden/ylib
git clone https://github.com/dagolden/ylib.git
AUTHOR
David Golden <dagolden@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2014 by David Golden.
This is free software, licensed under:
The Apache License, Version 2.0, January 2004