#pragma implementation
#endif
-#include "version.h"
+#include <version.h>
#include "lyx_main.h"
#include "lyx_gui.h"
#include "LyXView.h"
}
-extern "C" void error_handler(int err_sig);
+extern "C" {
+
+static
+void error_handler(int err_sig)
+{
+ switch (err_sig) {
+ case SIGHUP:
+ lyxerr << "\nlyx: SIGHUP signal caught" << endl;
+ break;
+ case SIGINT:
+ // no comments
+ break;
+ case SIGFPE:
+ lyxerr << "\nlyx: SIGFPE signal caught" << endl;
+ break;
+ case SIGSEGV:
+ lyxerr << "\nlyx: SIGSEGV signal caught" << endl;
+ lyxerr <<
+ "Sorry, you have found a bug in LyX."
+ " If possible, please read 'Known bugs'\n"
+ "under the Help menu and then send us "
+ "a full bug report. Thanks!" << endl;
+ break;
+ case SIGTERM:
+ // no comments
+ break;
+ }
+
+ // Deinstall the signal handlers
+ signal(SIGHUP, SIG_DFL);
+ signal(SIGINT, SIG_DFL);
+ signal(SIGFPE, SIG_DFL);
+ signal(SIGSEGV, SIG_DFL);
+ signal(SIGTERM, SIG_DFL);
+
+ bufferlist.emergencyWriteAll();
+
+ lyxerr << "Bye." << endl;
+ if (err_sig!= SIGHUP &&
+ (!GetEnv("LYXDEBUG").empty() || err_sig == SIGSEGV))
+ lyx::abort();
+ exit(0);
+}
+
+}
+
void LyX::init(bool gui)
{
// Give command line help
void commandLineHelp()
{
- lyxerr << "LyX " LYX_VERSION << " of " LYX_RELEASE << endl;
lyxerr <<
_("Usage: lyx [ command line switches ] [ name.lyx ... ]\n"
"Command line switches (case sensitive):\n"
"\t-i [--import] fmt file.xxx\n"
" where fmt is the import format of choice\n"
" and file.xxx is the file to be imported.\n"
+ "\t-version summarize version and build info\n"
"Check the LyX man page for more details.") << endl;
}
+// Give command line version information
+void commandLineVersionInfo()
+{
+ lyxerr << "LyX " << lyx_version
+ << " of " << lyx_release_date << endl;
+ lyxerr << "Built on " << __DATE__ << ", " << __TIME__ << endl;
+
+ lyxerr << lyx_version_info << endl;
+}
+
+
} // namespace anon
commandLineHelp();
exit(0);
}
+ // Check for --version or -version
+ else if (arg == "--version" || arg == "-version") {
+ commandLineVersionInfo();
+ exit(0);
+ }
// Check for "-nw": No XWindows as for emacs this should
// give a LyX that could be used in a terminal window.
//else if (arg == "-nw") {
}
-extern "C"
-void error_handler(int err_sig)
-{
- switch (err_sig) {
- case SIGHUP:
- lyxerr << "\nlyx: SIGHUP signal caught" << endl;
- break;
- case SIGINT:
- // no comments
- break;
- case SIGFPE:
- lyxerr << "\nlyx: SIGFPE signal caught" << endl;
- break;
- case SIGSEGV:
- lyxerr << "\nlyx: SIGSEGV signal caught" << endl;
- lyxerr <<
- "Sorry, you have found a bug in LyX."
- " If possible, please read 'Known bugs'\n"
- "under the Help menu and then send us "
- "a full bug report. Thanks!" << endl;
- break;
- case SIGTERM:
- // no comments
- break;
- }
-
- // Deinstall the signal handlers
- signal(SIGHUP, SIG_DFL);
- signal(SIGINT, SIG_DFL);
- signal(SIGFPE, SIG_DFL);
- signal(SIGSEGV, SIG_DFL);
- signal(SIGTERM, SIG_DFL);
-
- bufferlist.emergencyWriteAll();
-
- lyxerr << "Bye." << endl;
- if (err_sig!= SIGHUP &&
- (!GetEnv("LYXDEBUG").empty() || err_sig == SIGSEGV))
- lyx::abort();
- exit(0);
-}