Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
[simgrid.git] / README.coding
index 4183390..c78b39b 100644 (file)
@@ -26,7 +26,7 @@ The tree is not split on projects, but on file finality:
  testsuite/ -> The more test the better.
                Same organization than src/ and include/
                Tests are allowed to load some headers of the module they test.
-              All tests should be listed in run_test.in so that they get
+               All tests should be listed in run_test.in so that they get
                run on 'make check'.
 
  examples/ -> Supposed to be copy/pastable by the user, so keep it clear and
@@ -34,11 +34,11 @@ The tree is not split on projects, but on file finality:
                 public headers here.
 
  teshsuite/ -> The more test the better. Put in there any strange test
-              doing things that the users are not supposed to do,
-              just to see if our framework is robust to incorrect and
-              unusual behaviors. All tests written in this section
-              should leverage our tesh(1) utility.
+               doing things that the users are not supposed to do,
+               just to see if our framework is robust to incorrect and
+               unusual behaviors. All tests written in this section
+               should leverage our tesh(1) utility.
+
  testsuite/ -> Old test suite, that should be converted to tesh and
                moved to teshsuite at some point.
 
@@ -92,7 +92,7 @@ bug. Please report it (or fix it yourself if you can).
 **
 *****************************************************
 
-MALLOC:
+MALLOC
  Don't use it, or you'll have to check the result (and do some dirty stuff
  on AIX). Use xbt_malloc (or even better, xbt_new) instead.
 
@@ -102,6 +102,12 @@ SIZE_T (FIXME: obsolete?)
  do cast it to unsigned long before printing (and use %lu),
  or use %zu.
 
+INTEGERS
+ Please avoid to use long ints.  This is the source of many compatibility
+ problems between 32 bits and 64 bits archs.  Either use plain ints (generally
+ 32 bits wide) or long long ints (64 bits wide, at least).  At last resort
+ consider using integer types defined in C99 by <stdint.h>.
+
 PRINTF pointer difference (FIXME: advertise %td instead?)
  printf ("diff = %ld\n", (long) (pointer2 - pointer1));
 
@@ -187,6 +193,10 @@ investigating the portability of the thing to windows.
 * Your commit message should follow the git habits, explained eg here:
   http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
 
+* When you add/remove files, and/or make changes in the lists of files to build,
+  please check that "make distcheck" still succeeds.  This is needed to ensure
+  that the generated archive is consistent.
+
 * If you want to debug memory allocation problems, here are a few hints:
   - disable compiler optimizations, to have better backtraces;
   - disable the mallocators, or it will be hard to match malloc's with
@@ -204,4 +214,3 @@ investigating the portability of the thing to windows.
   deactivate the whole logging mechanism, switching to printfs
   instead. SimGrid becomes incredibly verbose when doing so, but it
   you let you fixing the dynars.
-  
\ No newline at end of file