X-Git-Url: http://git.hcoop.net/bpt/coccinelle.git/blobdiff_plain/9f8e26f459677a621822918b7539ae94214621ac..feec80c30d140c69f5d894bd09b6071247d0fbaa:/tools/licensify.ml diff --git a/tools/licensify.ml b/tools/licensify.ml index 91f59f1..49f3ab0 100644 --- a/tools/licensify.ml +++ b/tools/licensify.ml @@ -1,4 +1,8 @@ (* + * Copyright 2012, INRIA + * Julia Lawall, Gilles Muller + * Copyright 2010-2011, INRIA, University of Copenhagen + * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix * This file is part of Coccinelle. @@ -20,8 +24,13 @@ *) +# 0 "./licensify.ml" let lines = -["Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen"; +["Copyright 2012, INRIA"; +"Julia Lawall, Gilles Muller"; +"Copyright 2010-2011, INRIA, University of Copenhagen"; +"Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix"; +"Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen"; "Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix"; "This file is part of Coccinelle."; ""; @@ -62,14 +71,17 @@ let do_one file = if Filename.check_suffix file ".pl" then make_lines else if Filename.basename file = "Makefile" then make_lines else failwith (Printf.sprintf "unknown file type: %s" file) in - let _ = Sys.command (Printf.sprintf "cp %s /tmp/tmpfl" file) in - let o = open_out file in + let tmpfl = Filename.temp_file "cocci_licence" "orig" in + let _ = Sys.command (Printf.sprintf "cp %s %s" file tmpfl) in + let o = open_out file in List.iter (function l -> Printf.fprintf o "%s\n" l) lines; Printf.fprintf o "\n"; Printf.fprintf o "\n"; + if List.exists (Filename.check_suffix file) [ ".ml" ; ".mli" ; ".mll" ] then + Printf.fprintf o "# 0 \"%s\"\n" file; close_out o; - let _ = Sys.command (Printf.sprintf "cat /tmp/tmpfl >> %s" file) in - () + let _ = Sys.command (Printf.sprintf "cat %s >> %s" tmpfl file) in + Sys.remove tmpfl (* pad's modif *) let (+>) o f = f o