Index: AssemblyInfo.cs.in =================================================================== --- AssemblyInfo.cs.in (revision 0) +++ AssemblyInfo.cs.in (revision 0) @@ -0,0 +1,16 @@ +// AssemblyInfo.cs.in: +// +// cilc -- a CIL-to-C binding generator +// Copyright (C) 2003, 2004, 2005, 2006, 2007 Alp Toker +// Licensed under the terms of the MIT License + +using System.Reflection; +using System.Runtime.CompilerServices; + +[assembly: AssemblyVersion("@VERSION@")] +[assembly: AssemblyTitle ("Mono CIL-to-C binding generator")] +[assembly: AssemblyDescription ("Mono CIL-to-C binding generator")] +[assembly: AssemblyCopyright ("2002-2007 Novell, Inc.")] +[assembly: AssemblyCompany ("Novell, Inc.")] +[assembly: AssemblyDelaySign(true)] +[assembly: AssemblyKeyFile("@top_srcdir@/src/mono.pub")] Index: cilc.exe.sources =================================================================== --- cilc.exe.sources (revision 82414) +++ cilc.exe.sources (working copy) @@ -1,2 +1,3 @@ +AssemblyInfo.cs cilc.cs CodeWriter.cs Index: cilc.cs =================================================================== --- cilc.cs (revision 82414) +++ cilc.cs (working copy) @@ -23,7 +23,7 @@ public static int Main (string[] args) { if (args.Length < 1 || args.Length > 4) { - Console.WriteLine ("Mono CIL-to-C binding generator"); + ShowVersion(); Console.WriteLine ("Usage: cilc assembly [target] [pkg ns[,ns...]]"); return 1; } @@ -1340,4 +1340,17 @@ return o; } + + static void ShowVersion () + { + Assembly assembly = Assembly.GetExecutingAssembly (); + string version = assembly.GetName ().Version.ToString (); + object [] att = assembly.GetCustomAttributes (typeof (AssemblyTitleAttribute), false); + att = assembly.GetCustomAttributes (typeof (AssemblyCopyrightAttribute), false); + string copyright = ((AssemblyCopyrightAttribute) att [0]).Copyright; + att = assembly.GetCustomAttributes (typeof (AssemblyDescriptionAttribute), false); + string description = ((AssemblyDescriptionAttribute) att [0]).Description; + Console.WriteLine ("{0} {1}\n(c) {2}\n{3}", + Path.GetFileName (assembly.Location), version, copyright, description); + } }