Roxen.git / server / tools / ntroxen / startdll / cmdline.cpp

version» Context lines:

Roxen.git/server/tools/ntroxen/startdll/cmdline.cpp:1:   // cmdline.cpp: implementation of the CCmdLine class.   // - // $Id: cmdline.cpp,v 1.16 2001/11/14 16:29:49 tomas Exp $ + // $Id: cmdline.cpp,v 1.17 2002/02/06 17:24:36 tomas Exp $   //   //////////////////////////////////////////////////////////////////////      #include "stdafx.h"   #include "startdll.h"   #include "cmdline.h"   #include "roxen.h"   #include "enumproc.h"      #ifdef _DEBUG
Roxen.git/server/tools/ntroxen/startdll/cmdline.cpp:205:   //      //////////////////////////////////////////////////////////////////////   // Construction/Destruction   //////////////////////////////////////////////////////////////////////      CCmdLine::CCmdLine()   : m_SelfTestDir("etc\\test"), m_LogDir("..\\logs"),    m_ConfigDir("..\\configurations")   { -  m_bPreloaded = FALSE; +  m_bPreloaded = FALSE; +  m_bParseFinished = FALSE;       m_bInstall = FALSE;    m_bRemove = FALSE;    m_bOnce = FALSE;    m_bHelp = FALSE;    m_bVersion = FALSE;    m_bPassHelp = FALSE;    m_bKeepMysql = FALSE;    m_bMsdev = FALSE;    m_bCheckVersion = TRUE;
Roxen.git/server/tools/ntroxen/startdll/cmdline.cpp:1294:    }          // Unknown option give it to roxen    m_saRoxenArgs.Add(*argv);    type = eArgRoxen;    return 1;   }       +  + void CCmdLine::ParseFinish() + { +  // Take care of some special argument handling +  +  //case "x$debug" in +  // "x") +  // DEBUG="-DMODULE_DEBUG " +  // ARGS="$ARGS -w" +  // ;; +  // "x-1") +  // DEBUG="" +  // ;; +  // "x1") +  // DEBUG="-DDEBUG -DMODULE_DEBUG" +  // ARGS="$ARGS -w" +  // ;; +  //esac +  +  if (m_bParseFinished) +  return; +  +  // This must be before CheckVersionChange +  m_bParseFinished = TRUE; +  +  if (m_iDebug == 0) +  { +  m_saPikeDefines.AddIfNew("-DMODULE_DEBUG"); +  m_saPikeArgs.AddIfNew("-w"); +  } +  else if (m_iDebug == -1) +  { +  } +  else if (m_iDebug == 1) +  { +  m_saPikeDefines.AddIfNew("-DDEBUG"); +  m_saPikeDefines.AddIfNew("-DMODULE_DEBUG"); +  m_saPikeArgs.AddIfNew("-w"); +  } +  +  // This must be after anything that changes the PikeDefines +  if (m_bCheckVersion) +  { +  if (CRoxen::CheckVersionChange()) +  { +  m_saRoxenArgs.AddIfNew("--remove-dumped"); +  HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); +  if (m_iVerbose >= 1) +  OutputLine(hOut, " : Removing old precompiled files (defines or pike version changed)"); +  } +  } + } +  +    BOOL CCmdLine::Parse(char * cmdline)   {    int numargs;    int numchars;       SplitCmdline((_TSCHAR *)cmdline, NULL, NULL, &numargs, &numchars);       _TSCHAR *p = new _TSCHAR[numargs * sizeof(_TSCHAR *) + numchars * sizeof(_TSCHAR)];       SplitCmdline((_TSCHAR *)cmdline, (_TSCHAR **)p, p + numargs * sizeof(char *), &numargs, &numchars);
Roxen.git/server/tools/ntroxen/startdll/cmdline.cpp:1465:    default:    OutputLineFmt(hOut, ".BInternal Error: default case hit with: %sB.", argv[i]);    break;       }       i += numParsed;    }       -  // Take care of some special argument handling -  -  //case "x$debug" in -  // "x") -  // DEBUG="-DMODULE_DEBUG " -  // ARGS="$ARGS -w" -  // ;; -  // "x-1") -  // DEBUG="" -  // ;; -  // "x1") -  // DEBUG="-DDEBUG -DMODULE_DEBUG" -  // ARGS="$ARGS -w" -  // ;; -  //esac -  if (m_iDebug == 0) -  { -  m_saPikeDefines.AddIfNew("-DMODULE_DEBUG"); -  m_saPikeArgs.AddIfNew("-w"); -  } -  else if (m_iDebug == -1) -  { -  } -  else if (m_iDebug == 1) -  { -  m_saPikeDefines.AddIfNew("-DDEBUG"); -  m_saPikeDefines.AddIfNew("-DMODULE_DEBUG"); -  m_saPikeArgs.AddIfNew("-w"); -  } -  -  if (m_bCheckVersion) -  { -  if (CRoxen::CheckVersionChange()) -  { -  m_saRoxenArgs.AddIfNew("--remove-dumped"); -  HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); -  if (m_iVerbose >= 1) -  OutputLine(hOut, " : Removing old precompiled files (defines or pike version changed)"); -  } -  } -  +     return ret;   }