X-Git-Url: http://git.hcoop.net/bpt/coccinelle.git/blobdiff_plain/f537ebc4bbd27866c9ac3e1198b6756ebab7f2ba..feec80c30d140c69f5d894bd09b6071247d0fbaa:/tools/licensify.ml diff --git a/tools/licensify.ml b/tools/licensify.ml index d981671..49f3ab0 100644 --- a/tools/licensify.ml +++ b/tools/licensify.ml @@ -1,5 +1,7 @@ (* - * Copyright 2010, INRIA, 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 @@ -22,8 +24,11 @@ *) +# 0 "./licensify.ml" let lines = -["Copyright 2010, INRIA, 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"; @@ -66,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