Index: tester/covoar/DesiredSymbols.cc
===================================================================
--- tester/covoar/DesiredSymbols.cc	(revision e4014f05e86b702dfd32b0b891a345f59f32c322)
+++ tester/covoar/DesiredSymbols.cc	(revision 69c955d7a1684e2193b5e720c6aa3f024a2e6cb0)
@@ -2,5 +2,5 @@
  *  @brief DesiredSymbols Implementation
  *
- *  This file contains the implementation of the functions 
+ *  This file contains the implementation of the functions
  *  which provide the functionality of the DesiredSymbols.
  */
@@ -65,5 +65,5 @@
 
       // Skip blank lines between symbols
-      do { 
+      do {
         inputBuffer[0] = '\0';
         inputBuffer2[0] = '\0';
@@ -93,5 +93,5 @@
 
         // Add this to the set of symbols.
-        else 
+        else
           set[ inputBuffer ] = *symInfo;
       }
@@ -163,5 +163,5 @@
 
         // If we are at the start of instruction increment
-        // instruction type counters as needed. 
+        // instruction type counters as needed.
         if ( theCoverageMap->isStartOfInstruction( a ) ) {
 
@@ -181,11 +181,11 @@
             sitr->second.stats.branchesExecuted++;
           }
- 
-        }
- 
+
+        }
+
         if (!theCoverageMap->wasExecuted( a )) {
           stats.uncoveredBytes++;
           sitr->second.stats.uncoveredBytes++;
-        }       
+        }
         a++;
 
@@ -252,5 +252,5 @@
       a = 0;
       while (a <= endAddress) {
-        
+
         // If an address was NOT executed, find consecutive unexecuted
         // addresses and add them to the uncovered ranges.
@@ -502,4 +502,7 @@
 
       // Use only the base filename without directory path.
+#if WIN32
+      #define realpath(N,R) _fullpath((R),(N),_MAX_PATH)
+#endif
       realpath( inputBuffer, rpath );
       base = basename( rpath );
@@ -611,7 +614,7 @@
     if (set.find( symbolName ) == set.end()) {
       #if 0
-        fprintf( stderr, 
-          "Warning: Unable to find symbol %s\n", 
-          symbolName.c_str() 
+        fprintf( stderr,
+          "Warning: Unable to find symbol %s\n",
+          symbolName.c_str()
         );
       #endif
@@ -634,5 +637,5 @@
     uint32_t              sMapSize;
     uint32_t              executionCount;
-    
+
     // Ensure that the symbol is a desired symbol.
     itr = set.find( symbolName );
Index: tester/covoar/ReportsBase.cc
===================================================================
--- tester/covoar/ReportsBase.cc	(revision e4014f05e86b702dfd32b0b891a345f59f32c322)
+++ tester/covoar/ReportsBase.cc	(revision 69c955d7a1684e2193b5e720c6aa3f024a2e6cb0)
@@ -15,4 +15,8 @@
 #include "ReportsHtml.h"
 
+#if WIN32
+#include <io.h>
+#endif
+
 namespace Coverage {
 
@@ -36,5 +40,9 @@
 
   // Create the output directory if it does not already exist
+#if WIN32
+  sc = _mkdir( outputDirectory );
+#else
   sc = mkdir( outputDirectory,0755 );
+#endif
   if ( (sc == -1) && (errno != EEXIST) ) {
     fprintf(stderr, "Unable to create output directory %s\n", outputDirectory);
@@ -212,5 +220,5 @@
       if ( itr->isInstruction ) {
         if (!theCoverageMap->wasExecuted( itr->address - bAddress )){
-          annotation = "<== NOT EXECUTED";           
+          annotation = "<== NOT EXECUTED";
           state = A_NEVER_EXECUTED;
           id = theRanges->getId( itr->address );
@@ -231,6 +239,6 @@
       sprintf( textLine, "%-70s", itr->line.c_str() );
       line = textLine + annotation;
-      
-      PutAnnotatedLine( aFile, state, line, id); 
+
+      PutAnnotatedLine( aFile, state, line, id);
     }
 
@@ -254,5 +262,5 @@
   bool                                            hasBranches = true;
 
-  if ((SymbolsToAnalyze->getNumberBranchesFound() == 0) || 
+  if ((SymbolsToAnalyze->getNumberBranchesFound() == 0) ||
       (BranchInfoAvailable == false) )
      hasBranches = false;
@@ -264,5 +272,5 @@
 
   // If no branches were found of branch coverage is not supported
-  if ((SymbolsToAnalyze->getNumberBranchesFound() == 0) || 
+  if ((SymbolsToAnalyze->getNumberBranchesFound() == 0) ||
       (BranchInfoAvailable == false) ) {
 
@@ -360,5 +368,5 @@
 void ReportsBase::WriteSizeReport(
   const char* const fileName
-) 
+)
 {
   Coverage::DesiredSymbols::symbolSet_t::iterator ditr;
@@ -476,5 +484,5 @@
     SymbolsToAnalyze->getNumberUncoveredRanges()
   );
-  if ((SymbolsToAnalyze->getNumberBranchesFound() == 0) || 
+  if ((SymbolsToAnalyze->getNumberBranchesFound() == 0) ||
       (BranchInfoAvailable == false) ) {
     fprintf( report, "No branch information available\n" );
@@ -515,5 +523,5 @@
   time_t timestamp;
 
- 
+
   timestamp = time(NULL); /* get current cal time */
   reports = new ReportsText(timestamp);
Index: tester/covoar/covoar.cc
===================================================================
--- tester/covoar/covoar.cc	(revision e4014f05e86b702dfd32b0b891a345f59f32c322)
+++ tester/covoar/covoar.cc	(revision 69c955d7a1684e2193b5e720c6aa3f024a2e6cb0)
@@ -3,6 +3,4 @@
 #include <fcntl.h>
 #include <limits.h>
-#include <list>
-#include <netdb.h>
 #include <signal.h>
 #include <stdio.h>
@@ -12,4 +10,6 @@
 #include <sys/stat.h>
 #include <unistd.h>
+
+#include <list>
 
 #include "app_common.h"
@@ -120,5 +120,5 @@
     if ( _t ) _val = _t; \
   } while(0)
-  
+
 
 void check_configuration(void)
@@ -161,5 +161,5 @@
 
   CoverageConfiguration = new Configuration::FileReader(Options);
-  
+
   //
   // Process command line options.
@@ -439,5 +439,5 @@
   if (Verbose)
     fprintf( stderr, "Generating Gcov reports...\n");
-  gcnosFile = fopen ( gcnosFileName , "r" );	
+  gcnosFile = fopen ( gcnosFileName , "r" );
 
   if ( !gcnosFile ) {
