Canviant namespaces jerarquic
[makerl.git] / src / outdate_check.erl
blob5639ee85e61104fb8833a9fb68dc7c64585bdead
1 %%%-------------------------------------------------------------------
2 %%% File : outdate_check.erl
3 %%% Author : <>
4 %%% Description :
5 %%%
6 %%% Created : 1 Apr 2011 by <>
7 %%%-------------------------------------------------------------------
8 -module(makerl.outdate_check).
9 -include("makerl.hrl").
10 -include_lib("kernel/include/file.hrl").
13 -import(file).
15 -export([by_date/2]).
17 -spec by_date(string(), [string()]) -> status_type().
18 by_date(Target, Deps) ->
19 case file:read_file_info(Target) of
20 {error, enoent} ->
21 unfulfilled;
22 {ok, TargetInfo } ->
23 CheckDate = fun(Dep) ->
24 {ok, SrcInfo} = file:read_file_info(Dep),
25 TargetInfo#file_info.mtime =< SrcInfo#file_info.mtime
26 end,
27 IsModifyed = lists:any(CheckDate, Deps),
28 case IsModifyed of
29 true -> unfulfilled;
30 false -> fulfilled
31 end
32 end.