dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnet/csant csant_cscc.c,1.16,1.17 csant_file


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/csant csant_cscc.c,1.16,1.17 csant_fileset.c,1.14,1.15 csant_fileset.h,1.2,1.3
Date: Fri, 31 Jan 2003 05:57:17 -0500

Update of /cvsroot/dotgnu-pnet/pnet/csant
In directory subversions:/tmp/cvs-serv25359/csant

Modified Files:
        csant_cscc.c csant_fileset.c csant_fileset.h 
Log Message:


Recognise special csc options when converting between <csc>
and <compile>.


Index: csant_cscc.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/csant/csant_cscc.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -r1.16 -r1.17
*** csant_cscc.c        31 Jan 2003 08:02:57 -0000      1.16
--- csant_cscc.c        31 Jan 2003 10:57:15 -0000      1.17
***************
*** 280,283 ****
--- 280,284 ----
        int                             unsafe;
        int                             noStdLib;
+       int                             addConfig;
        int                             optimize;
        int                             warnAsError;
***************
*** 330,333 ****
--- 331,335 ----
        args->unsafe = COMP_FLAG_NOT_SET;
        args->noStdLib = COMP_FLAG_NOT_SET;
+       args->addConfig = COMP_FLAG_NOT_SET;
        args->optimize = COMP_FLAG_NOT_SET;
        args->warnAsError = COMP_FLAG_NOT_SET;
***************
*** 492,495 ****
--- 494,534 ----
                }
        }
+       else
+       {
+               /* We are simulating csc, so we need to parse out some
+                  of the csc-style options in the "arg" elements */
+               args->addConfig = COMP_FLAG_TRUE;
+               node = task->taskChildren;
+               while(node != 0)
+               {
+                       if(!strcmp(node->name, "arg"))
+                       {
+                               /* Does this argument only apply to a specific 
compiler? */
+                               value = CSAntTaskParam(node, "value");
+                               if(value)
+                               {
+                                       if(!ILStrICmp(value, "/unsafe"))
+                                       {
+                                               args->unsafe = COMP_FLAG_TRUE;
+                                       }
+                                       else if(!ILStrICmp(value, "/nostdlib"))
+                                       {
+                                               args->noStdLib = COMP_FLAG_TRUE;
+                                       }
+                                       else if(!ILStrICmp(value, "/noconfig"))
+                                       {
+                                               args->addConfig = 
COMP_FLAG_FALSE;
+                                       }
+                                       else if(!strncmp(value, "/r:", 3) ||
+                                               !strncmp(value, "/R:", 3))
+                                       {
+                                               args->references = 
CSAntFileSetAdd
+                                                       (args->references, 
value + 3);
+                                       }
+                               }
+                       }
+                       node = node->next;
+               }
+       }
  
        /* Done */
***************
*** 585,588 ****
--- 624,633 ----
        }
  
+       /* We need to force Latin-1 if we are simulating csc */
+       if(CSAntRedirectCsc)
+       {
+               AddArg(&argv, &argc, "-flatin1-charset");
+       }
+ 
        /* Add any extra arguments that were supplied */
        for(posn = 0; posn < args->numArgs; ++posn)
***************
*** 644,647 ****
--- 689,699 ----
                        AddValueArg(&argv, &argc, "-l", temp + len);
                }
+       }
+ 
+       /* Add "-lSystem.Xml" and "-lSystem" if necessary to simulate csc */
+       if(args->addConfig == COMP_FLAG_TRUE)
+       {
+               AddArg(&argv, &argc, "-lSystem.Xml");
+               AddArg(&argv, &argc, "-lSystem");
        }
  

Index: csant_fileset.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/csant/csant_fileset.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -r1.14 -r1.15
*** csant_fileset.c     2 Jan 2003 17:12:31 -0000       1.14
--- csant_fileset.c     31 Jan 2003 10:57:15 -0000      1.15
***************
*** 588,591 ****
--- 588,620 ----
  }
  
+ CSAntFileSet *CSAntFileSetAdd(CSAntFileSet *fileset, const char *filename)
+ {
+       char *pathname;
+ 
+       /* Construct a new file set if necessary */
+       if(!fileset)
+       {
+               fileset = (CSAntFileSet *)ILMalloc(sizeof(CSAntFileSet));
+               if(!fileset)
+               {
+                       CSAntOutOfMemory();
+               }
+               fileset->numFiles = 0;
+               fileset->maxFiles = 0;
+               fileset->files = 0;
+       }
+ 
+       /* Duplicate the filename string */
+       pathname = ILDupString(filename);
+       if(!pathname)
+       {
+               CSAntOutOfMemory();
+       }
+ 
+       /* Add the filename to the file set */
+       AddToFileSet(fileset, pathname);
+       return fileset;
+ }
+ 
  #ifdef        __cplusplus
  };

Index: csant_fileset.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/csant/csant_fileset.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** csant_fileset.h     22 Jul 2002 09:00:33 -0000      1.2
--- csant_fileset.h     31 Jan 2003 10:57:15 -0000      1.3
***************
*** 59,62 ****
--- 59,67 ----
  int CSAntFileSetNewer(CSAntFileSet *fileset, const char *filename);
  
+ /*
+  * Add a filanem to a file set.
+  */
+ CSAntFileSet *CSAntFileSetAdd(CSAntFileSet *fileset, const char *filename);
+ 
  #ifdef        __cplusplus
  };





reply via email to

[Prev in Thread] Current Thread [Next in Thread]