2007-06-28  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: Sort members by Ordinal|IgnoreCase; sort types
	  by their .FullName property, so that namespace is taken into account when
	  sorting them and emitting their declarations.
	* src/TestMap.cs: Make one of the enum's a `long' type, to see how the
	  constants change in the generated .h file.
	* src/test.h.ref, src/test.xml.ref, src/test.c.ref, src/test.cs.ref: 
	  Flush (due to TestEnum type change in TestMap.cs).

2007-04-12  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: Remove unused methods; fix indenting; fix
	  _cnm_return_val_if_overflow() so that it doesn't trigger false positives
	  on Linux and Intel Mac OS X
	* src/Makefile.am: Test --impl-header with a header that actually exists --
	  allows the libtest.so target to actually work.  (Granted, now "test.h" has
	  *two* includes in test.c, but that's not a problem.)  
	  Add a test-overflow target to create test-overflow program from
	  test-overflow.c, test-overflow.h.
	* src/test-overflow.c, src/test-overflow.h: Tests for
	  _cnm_return_val_if_overflow().
	* src/test.c.ref: Flush.

2006-11-30  Mike Kestner  <mkestner@novell.com>

	* bin/Makefile.am: distcheck fixes
	* bin/create-native-map.in: renamed for distcheck friendliness
	* src/Makefile.am: distcheck fixes
	
2006-11-30  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: _cnm_return_val_if_overflow() shouldn't check
	  for overflow if DEBUG isn't defined.  It's causing too many false
	  positives in MonoPosixHelper.
	* src/test.c.ref: Flush (_cnm_return_val_if_overflow() change).

2006-11-17  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: SupressFlags values should still be bitwise OR'd
	  with the value returned from the FromManagedType() functions, just like
	  they are in the ToManagedType() functions.
	* src/test.c.ref: Flush (SuppressFlags fix)

2006-11-15  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: 
	  - Mask against SuppressFlags if SuppressFlags is non-null, as if you have 
	    bitmask & non-bitmask values in the same enum, it's fairly certain that 
	    the non-bitmask values won't start at 0.  This fixes FilePermissions 
	    mapping in MonoPosixHelper.
	  - Fix _cnm_return_val_if_overflow() macro so that it doesn't generate 
	    warnings about value overflows.
	* src/MapAttribute.cs: Change SuppressFlags to be a string, not a bool.
	  This contains the value to mask against.
	* src/TestMap.cs: Test new SuppressFlags semantics.
	* src/test.c.ref: Flush (updated _cnm_return_val_if_overflow() value;
	  addition of bitmask semantics).

2006-10-30  Wade Berrier  <wberrier@novell.com>

	* src/Makefile.am bin/Makefile.am: add source files to EXTRA_DIST to fix building from
	tarball

2006-10-27  Jonathan Pryor  <jonpryor@vt.edu>

	* man/create-native-map.1: Add documentation for MapAttribute.SuppressFlags;
	  remove documentation for MapAttribute.NativeSymbolPrefix.
	* src/create-native-map.cs: Add support for MapAttribute.SuppressFlags.
	* src/MapAttribute.cs: Add SuppressFlags property (default is false).
	* src/TestMap.cs: Add [Flags] enums, and tests for [Map(SuppressFlags=true)].
	* src/test.c.ref, src/test.cs.ref, src/test.h.ref, src/test.xml.ref: Flush.

2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: Enclose structure conversion functions with
	  `#ifdef HAVE_<<native type name>>', as not all platforms will have the
	  required types.  For example, only *nix platforms have `struct stat', so
	  having a function which uses `struct stat' on Win32 will break (w/o the
	  use of Cygwin).
	* src/test.c.ref: Flush.

2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: Remove the <inttypes.h> fallback, and just
	  fallback to the appropriate System.Int??.MinValue/MaxValue values.
	* src/test.c.ref: Flush.

2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>

	* src/create-native-map.cs: Add support for limits fallbacks -- if G_MAXINT8
	  isn't defined, fallback to INT8_MAX (from <inttypes.h>), and if that
	  doesn't exist use a hard-coded (possibly wrong) implementation.
	* src/test.c.ref: Flush.

2006-10-24  Jonathan Pryor  <jonpryor@vt.edu>

	* Makefile.am, lib/Makefile.am: Added; build subdirectories.
	* bin/create-native-map: Script to startup 
	  `dirname`/../lib/create-native-map/create-native-map.exe.
	* bin/Makefile.am: Added; install $bindir/create-native-map.
	* lib/create-native-map/Makefile.am: Added; present to make sure
	  $top_builddir/lib/create-native-map is created.
	* lib/pkgconfig/create-native-map.pc.in: Aded; pkgconfig file to copy an
	  installed version of create-native-map.exe & MapAttribute.cs.
	* lib/pkgconfig/Makfile.am: Added; install the create-native-map.pc file.
	* man/create-native-map.1: Man page for create-native-map.
	* man/Makefile.am: Added; install the man page.
	* src/create-native-map.cs:
	  - Moved from mcs/class/Mono.Posix/Mono.Unix.Native/make-map.cs
	  - check for t.Namespace==null before looking using
	    Configuration.NamespaceRenames (Dictionary`2 doesn't like null keys);
	  - HeaderFileGenerator needs to know about member renames (so it uses the
	    renamed member in conversion code);
	  - Clean up enumeration generation for readablility.
	  - Generate structure declarations for [Map]-decorated types and types used
	    within a [DllImport]-marked method.
	  - Warnings should be prefixed with "warning: ".
		- Don't generate function prototypes for already-generated functions (e.g.
	    if we emit a prototype for Mono_Posix_ToFilePermissions, don't
	    re-declare that function later because we found a DllImport for it).
	  - Add new arguments: --autoconf-member, --exclude-native-symbol, 
	    --library, --rename-member, --rename-namespace.
	    These are to:
	    - Allow native structure members to only be accessed if an Autoconf
	      macro is defined (--autoconf-member)
	    - Modify the C "namespace" of types/functions (--rename-namespace)
	    - Specify the DllImport library that prototypes should be generated for
	      (--library)
	    - Exclude symbols from the function declaration system
	      (--exclude-native-symbol)
	    - Member renaming (--rename-member).  
	      (Curse you glibc making st_atime a macro!)
	* src/Makefile.am: Added; build create-native-map.exe; test cases.
	* src/MapAttribute.cs: Added; the attribute that create-native-map looks
	  for, and should be copied into projects using create-native-map.
	* src/TestMap.cs: Added; test case for create-native-map.exe
	* src/test.c.ref, src/test.cs.ref, src/test.h.ref, src/test.xml.ref: Added; 
	  expected create-native-map.exe output for TestMap.cs.
	* ChangeLog: Started.

