]> Creatis software - gdcm.git/blob - Doc/Website/Developpers.html
#Something stupid occured in the code for LibIDO images.
[gdcm.git] / Doc / Website / Developpers.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <HTML>
3 <HEAD>
4    <META http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
5    <TITLE>Gdcm Developpers</TITLE>
6 </HEAD>
7
8 <BODY>
9
10 <!#######################################################################>
11 <H1>Gdcm Developpers</H1>
12 <HR size="1"><ADDRESS style="align: right;"></ADDRESS>
13
14 <!#######################################################################>
15 <A HREF="http://public.kitware.com/dashboard.php?name=gdcm">
16 DashBoard</A> (look for a "Build Name" containing GDCM)
17 <HR size="1"><ADDRESS style="align: right;"></ADDRESS>
18
19 <!#######################################################################>
20 First you should be familiar on how to 
21 <A HREF="Installation.html">recompile, install and test</A>
22 gdcm from the
23 <A HREF="Cvs.html">sources obtained with cvs</A>.
24 <BR>
25 <!##############################>
26 Please adopt the
27 <A HREF="CodingStyle.html"><B>coding style</B></A>.
28 <BR>
29 <!##############################>
30 <H3>CVS policy</H3>
31 <UL>
32 <LI>All the commits should be atomic. They must preserve the compilation
33   in order to prevent checkouts with broken code.
34 </LI>
35 <LI> All the commits must correspond to a state of the code where <TT>ctest</TT>
36   runs and has no failing subtest. <b>Always</b> run <TT>ctest</TT> before 
37   commiting.
38   <BR>
39   <B>Notes</B>:
40   <UL>
41   <LI> you can start <TT>ctest</TT> in verbose mode through the command
42      <TT>ctest -V >& log</TT>
43   </LI>
44   <LI> you can start a single test through <TT>ctest</TT> with
45       <TT>ctest -R <i>FailingTestName</i> -V >& log</TT>
46   </LI>
47   </UL>
48 </LI>
49 </UL>
50
51 <!##############################>
52 <H3>Compiler flags policy</H3>
53 When working with <TT>gcc</TT>, please use the following flags when
54 configuring the <TT>cmake</TT> variable <TT>CMAKE_CXX_FLAGS</TT>
55 As a side note if you have proper <TT>bash/zsh</TT> setup <TT>cmake</TT> 
56 automatically inspect your <TT>CFLAGS</TT> and <TT>CXXFLAGS</TT>. 
57 So you can set them up for any project. 
58 <b>Be carefull</b> though, the quality of your code will greatly
59 improve by doing so.
60 <BR>
61 For CFLAGS:
62 <TT> -Wall -W 
63 </TT>
64 <BR>
65 For CXXFLAGS:
66 <TT> -Wall -W -Wshadow -Wunused -Wno-system-headers -Wno-deprecated
67      -Woverloaded-virtual
68 </TT>
69 <BR>
70 For paranoid people, or simply beginner you can also try to compiler gdcm
71 using the <TT>-pedantic</TT> flag compiler option.
72
73 <!##############################>
74 <H3>Sending the result to kitware's dashboard (optional)</H3>
75 Use <TT>ctest -D Experimental</TT>.
76 <BR>
77 The results should appear in
78 <A HREF="http://public.kitware.com/dashboard.php?name=gdcm">
79         Kitware's dashboard</A>
80 under the name of your machine (uname). For ease of use you can
81 change the BUILDNAME variable in your <TT>CMakeCache.txt</TT> to something more
82 accurate such as: GDCM-my_machine_name. The entry will then be within
83 the "Experimental Builds" entry.<BR>
84 <b>UPDATE:</b>Since GDCM moved to its own dashboard there is no possible
85 collision with other project. You can then send dashboard without having
86 to properly prepend 'GDCM-' to your cmake BUILDNAME variable. But the 
87 Win32, mingw, gcc, SunOS is still very important...
88
89
90
91 <!#######################################################################>
92 <HR size="1"><ADDRESS style="align: right;"></ADDRESS>
93
94 </BODY>
95 </HTML>