Mercurial > cabal
diff sources/cabal.cpp @ 0:bafff9de2a76
Initial commit since summer'07
| author | Vlad Glagolev <enqlave@gmail.com> |
|---|---|
| date | Sun, 20 Jan 2008 19:25:25 +0300 |
| parents | |
| children | 19227b0b7cc1 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sources/cabal.cpp Sun Jan 20 19:25:25 2008 +0300 @@ -0,0 +1,70 @@ +/** + * cabal.cpp (2007-03-03) + * + * -- CABAL -- primary module + * + * Copyright (c) 2007 Vlad Glagolev <enqlave@gmail.com> + * All rights reserved. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include "cabal.h" + +Core *CABAL; + +void shut() +{ + delete CABAL; + exit(0); +} + +void shut(string e) +{ + cout << "Error: " << e << endl; + + delete CABAL; + exit(0); +} + +int main(int argc, char *argv[]) +{ + cout + << "-- CABAL -- " << VERSION << " (CORE: " << VERSION_CORE ") | " \ + << "Compiled: " << __DATE__ << " at " << __TIME__ << endl; + + if (argc < 2) { + cout + << "\nUsage:\n" \ + << "\t-d, --daemon | daemon mode\n" \ + << "\t-c, --config <file> | configuration file\n" \ + << "\nCopyright (c) 2007 Vlad Glagolev (under the BSD license)\n"; + + exit(0); + } + + CABAL = new Core(); + + CABAL->commandParse(argc, argv); + CABAL->configParse(); + CABAL->pidCheck(); + + if (!CABAL->debug) + daemonize(); + + CABAL->pidWrite(); + + CABAL->work(); + + return 0; +}
