NAME
Makefile::Update - Update make files.
VERSION
version 0.4
SYNOPSIS
use Makefile::Update;
my $vars = read_files_list('files.lst');
upmake('foo.vcxproj', $vars->{sources}, $vars->{headers});
FUNCTIONS
read_files_list
Reads the file containing the file lists definitions and returns a hash ref with variable names as keys and refs to arrays of the file names as values.
Takes an (open) file handle as argument.
The file contents is supposed to have the following very simple format:
# Comments are allowed and ignored.
#
# The variable definitions must always be in the format shown below,
# i.e. whitespace is significant and there should always be a single
# file per line.
sources =
file1.cpp
file2.cpp
headers =
file1.h
file2.h
# It is also possible to define variables in terms of other variables
# defined before it in the file (no forward references):
everything =
$sources
$headers
upmake
Update a file in place using the specified function and passing it the rest of the arguments.
The first parameter is either just the file path or a hash reference which may contain the following keys:
file
-
The path to the file to be updated, required.
verbose
-
If true, give more messages about what is being done.
quiet
-
If true, don't output any non-error messages.
dryrun
-
If true, don't really update the file but just output whether it would have been updated or not. If
verbose
is also true, also output the diff of the changes that would have been done.
This is meant to be used with update_xxx()
defined in different Makefile::Update::Xxx modules.
Returns 1 if the file was changed or 0 otherwise.
AUTHOR
Vadim Zeitlin <vz-cpan@zeitlins.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2015 by Vadim Zeitlin.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.