kronos2-developer Mailing List for Kronos 2
Status: Pre-Alpha
Brought to you by:
moskvin
You can subscribe to this list here.
2011 |
Jan
|
Feb
|
Mar
(14) |
Apr
(1) |
May
(3) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2012 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Dmitrii K. <sst...@us...> - 2012-05-09 14:11:01
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Virtual mashine for Kronos". The branch, master has been updated via 3a5c92ae76250865159cb275e8754d215576ad7f (commit) from e72507e87468b0372f0c53d40e1cfdbf66700af0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3a5c92ae76250865159cb275e8754d215576ad7f Author: Dmitriy Kuragin <sstepashka@MacBook-Pro-Dmirtrij.local> Date: Wed May 9 21:09:02 2012 +0700 new logger diff --git a/src/vm/libs/log4cplus.lib b/src/vm/libs/log4cplus.lib new file mode 100644 index 0000000..cb8a42f Binary files /dev/null and b/src/vm/libs/log4cplus.lib differ diff --git a/src/vm/log4cplus/appender.h b/src/vm/log4cplus/appender.h new file mode 100644 index 0000000..591ec63 --- /dev/null +++ b/src/vm/log4cplus/appender.h @@ -0,0 +1,212 @@ +// Module: Log4CPLUS +// File: appender.h +// Created: 6/2001 +// Author: Tad E. Smith +// +// +// Copyright 2001-2010 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef _LOG4CPLUS_APPENDER_HEADER_ +#define _LOG4CPLUS_APPENDER_HEADER_ + +#include <log4cplus/config.hxx> +#include <log4cplus/layout.h> +#include <log4cplus/loglevel.h> +#include <log4cplus/tstring.h> +#include <log4cplus/helpers/logloguser.h> +#include <log4cplus/helpers/pointer.h> +#include <log4cplus/helpers/property.h> +#include <log4cplus/spi/filter.h> + +#include <memory> + + +namespace log4cplus { + + /** + * This class is used to "handle" errors encountered in an {@link + * log4cplus::Appender}. + */ + class LOG4CPLUS_EXPORT ErrorHandler { + public: + virtual ~ErrorHandler(); + virtual void error(const log4cplus::tstring& err) = 0; + virtual void reset() = 0; + }; + + + + class LOG4CPLUS_EXPORT OnlyOnceErrorHandler : public ErrorHandler, + protected log4cplus::helpers::LogLogUser + { + public: + // Ctor + OnlyOnceErrorHandler() : firstTime(true){} + + virtual void error(const log4cplus::tstring& err); + virtual void reset(); + + private: + bool firstTime; + }; + + + /** + * Extend this class for implementing your own strategies for printing log + * statements. + */ + class LOG4CPLUS_EXPORT Appender + : public virtual log4cplus::helpers::SharedObject + , protected log4cplus::helpers::LogLogUser + + { + public: + // Ctor + Appender(); + Appender(const log4cplus::helpers::Properties properties); + + // Dtor + virtual ~Appender(); + + void destructorImpl(); + + // Methods + /** + * Release any resources allocated within the appender such as file + * handles, network connections, etc. + * + * It is a programming error to append to a closed appender. + */ + virtual void close() = 0; + + /** + * This method performs threshold checks and invokes filters before + * delegating actual logging to the subclasses specific {@link + * #append} method. + */ + void doAppend(const log4cplus::spi::InternalLoggingEvent& event); + + /** + * Get the name of this appender. The name uniquely identifies the + * appender. + */ + virtual log4cplus::tstring getName(); + + /** + * Set the name of this appender. The name is used by other + * components to identify this appender. + */ + virtual void setName(const log4cplus::tstring& name); + + /** + * Set the {@link ErrorHandler} for this Appender. + */ + virtual void setErrorHandler(std::auto_ptr<ErrorHandler> eh); + + /** + * Return the currently set {@link ErrorHandler} for this + * Appender. + */ + virtual ErrorHandler* getErrorHandler(); + + /** + * Set the layout for this appender. Note that some appenders have + * their own (fixed) layouts or do not use one. For example, the + * SocketAppender ignores the layout set here. + */ + virtual void setLayout(std::auto_ptr<Layout> layout); + + /** + * Returns the layout of this appender. The value may be NULL. + * + * This class owns the returned pointer. + */ + virtual Layout* getLayout(); + + /** + * Set the filter chain on this Appender. + */ + void setFilter(log4cplus::spi::FilterPtr f) { filter = f; } + + /** + * Get the filter chain on this Appender. + */ + log4cplus::spi::FilterPtr getFilter() const { return filter; } + + /** + * Returns this appenders threshold LogLevel. See the {@link + * #setThreshold} method for the meaning of this option. + */ + LogLevel getThreshold() const { return threshold; } + + /** + * Set the threshold LogLevel. All log events with lower LogLevel + * than the threshold LogLevel are ignored by the appender. + * + * In configuration files this option is specified by setting the + * value of the <b>Threshold</b> option to a LogLevel + * string, such as "DEBUG", "INFO" and so on. + */ + void setThreshold(LogLevel th) { threshold = th; } + + /** + * Check whether the message LogLevel is below the appender's + * threshold. If there is no threshold set, then the return value is + * always <code>true</code>. + */ + bool isAsSevereAsThreshold(LogLevel ll) const { + return ((ll != NOT_SET_LOG_LEVEL) && (ll >= threshold)); + } + + protected: + // Methods + /** + * Subclasses of <code>Appender</code> should implement this + * method to perform actual logging. + * @see doAppend method. + */ + virtual void append(const log4cplus::spi::InternalLoggingEvent& event) = 0; + + // Data + /** The layout variable does not need to be set if the appender + * implementation has its own layout. */ + std::auto_ptr<Layout> layout; + + /** Appenders are named. */ + log4cplus::tstring name; + + /** There is no LogLevel threshold filtering by default. */ + LogLevel threshold; + + /** The first filter in the filter chain. Set to <code>null</code> + * initially. */ + log4cplus::spi::FilterPtr filter; + + /** It is assumed and enforced that errorHandler is never null. */ + std::auto_ptr<ErrorHandler> errorHandler; + + /** Is this appender closed? */ + bool closed; + }; + + /** This is a pointer to an Appender. */ + typedef helpers::SharedObjectPtr<Appender> SharedAppenderPtr; + +} // end namespace log4cplus + +#endif // _LOG4CPLUS_APPENDER_HEADER_ + diff --git a/src/vm/log4cplus/config.h.in b/src/vm/log4cplus/config.h.in new file mode 100644 index 0000000..e492cd6 --- /dev/null +++ b/src/vm/log4cplus/config.h.in @@ -0,0 +1,233 @@ +/* include/log4cplus/config.h.in. Generated from configure.in by autoheader. */ + +#ifndef LOG4CPLUS_CONFIG_H + +#define LOG4CPLUS_CONFIG_H + +/* Define to 1 if you have the `clock_gettime' function. */ +#undef HAVE_CLOCK_GETTIME + +/* Define to 1 if you have the <dlfcn.h> header file. */ +#undef HAVE_DLFCN_H + +/* Define to 1 if you have the `ftime' function. */ +#undef HAVE_FTIME + +/* */ +#undef HAVE_GETADDRINFO + +/* */ +#undef HAVE_GETHOSTBYNAME_R + +/* Define to 1 if you have the `getpid' function. */ +#undef HAVE_GETPID + +/* Define to 1 if you have the `gettimeofday' function. */ +#undef HAVE_GETTIMEOFDAY + +/* Define to 1 if you have the `gmtime_r' function. */ +#undef HAVE_GMTIME_R + +/* Define to 1 if you have the `htonl' function. */ +#undef HAVE_HTONL + +/* Define to 1 if you have the `htons' function. */ +#undef HAVE_HTONS + +/* Define to 1 if you have the <inttypes.h> header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the `advapi32' library (-ladvapi32). */ +#undef HAVE_LIBADVAPI32 + +/* Define to 1 if you have the `kernel32' library (-lkernel32). */ +#undef HAVE_LIBKERNEL32 + +/* Define to 1 if you have the `ws2_32' library (-lws2_32). */ +#undef HAVE_LIBWS2_32 + +/* Define to 1 if you have the `localtime_r' function. */ +#undef HAVE_LOCALTIME_R + +/* Define to 1 if you have the `lstat' function. */ +#undef HAVE_LSTAT + +/* Define to 1 if you have the <memory.h> header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the `ntohl' function. */ +#undef HAVE_NTOHL + +/* Define to 1 if you have the `ntohs' function. */ +#undef HAVE_NTOHS + +/* Define if you have POSIX threads libraries and header files. */ +#undef HAVE_PTHREAD + +/* Have PTHREAD_PRIO_INHERIT. */ +#undef HAVE_PTHREAD_PRIO_INHERIT + +/* Define to 1 if you have the `stat' function. */ +#undef HAVE_STAT + +/* Define to 1 if you have the <stdint.h> header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the <stdlib.h> header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the <strings.h> header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the <string.h> header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the <sys/types.h> header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the <unistd.h> header file. */ +#undef HAVE_UNISTD_H + +/* Defined for --enable-debugging builds. */ +#undef LOG4CPLUS_DEBUGGING + +/* Defined if the compiler understands __declspec(dllimport) or + __attribute__((visibility("default"))) construct. */ +#undef LOG4CPLUS_DECLSPEC_EXPORT + +/* Defined if the compiler understands __declspec(dllexport) or construct. */ +#undef LOG4CPLUS_DECLSPEC_IMPORT + +/* */ +#undef LOG4CPLUS_HAVE_CLOCK_GETTIME + +/* */ +#undef LOG4CPLUS_HAVE_ENAMETOOLONG + +/* */ +#undef LOG4CPLUS_HAVE_ERRNO_H + +/* */ +#undef LOG4CPLUS_HAVE_FTIME + +/* */ +#undef LOG4CPLUS_HAVE_GETADDRINFO + +/* */ +#undef LOG4CPLUS_HAVE_GETHOSTBYNAME_R + +/* */ +#undef LOG4CPLUS_HAVE_GETPID + +/* */ +#undef LOG4CPLUS_HAVE_GETTIMEOFDAY + +/* */ +#undef LOG4CPLUS_HAVE_GMTIME_R + +/* */ +#undef LOG4CPLUS_HAVE_HTONL + +/* */ +#undef LOG4CPLUS_HAVE_HTONS + +/* */ +#undef LOG4CPLUS_HAVE_LOCALTIME_R + +/* */ +#undef LOG4CPLUS_HAVE_LSTAT + +/* */ +#undef LOG4CPLUS_HAVE_NETDB_H + +/* */ +#undef LOG4CPLUS_HAVE_NETINET_IN_H + +/* */ +#undef LOG4CPLUS_HAVE_NTOHL + +/* */ +#undef LOG4CPLUS_HAVE_NTOHS + +/* */ +#undef LOG4CPLUS_HAVE_STAT + +/* */ +#undef LOG4CPLUS_HAVE_STDARG_H + +/* */ +#undef LOG4CPLUS_HAVE_STDIO_H + +/* */ +#undef LOG4CPLUS_HAVE_SYSLOG_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_SOCKET_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_STAT_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_TIMEB_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_TIME_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_TYPES_H + +/* */ +#undef LOG4CPLUS_HAVE_TIME_H + +/* */ +#undef LOG4CPLUS_HAVE_UNISTD_H + +/* */ +#undef LOG4CPLUS_HAVE_WCHAR_H + +/* Define if this is a single-threaded library. */ +#undef LOG4CPLUS_SINGLE_THREADED + +/* */ +#undef LOG4CPLUS_USE_PTHREADS + +/* Define for compilers/standard libraries that support more than just the "C" + locale. */ +#undef LOG4CPLUS_WORKING_LOCALE + +/* Define to the sub-directory in which libtool stores uninstalled libraries. + */ +#undef LT_OBJDIR + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to necessary symbol if this constant uses a non-standard name on + your system. */ +#undef PTHREAD_CREATE_JOINABLE + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Substitute for socklen_t */ +#undef socklen_t + +#endif // LOG4CPLUS_CONFIG_H diff --git a/src/vm/log4cplus/config.hxx b/src/vm/log4cplus/config.hxx new file mode 100644 index 0000000..85f1649 --- /dev/null +++ b/src/vm/log4cplus/config.hxx @@ -0,0 +1,50 @@ +// Copyright (C) 2009, Vaclav Haisman. All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modifica- +// tion, are permitted provided that the following conditions are met: +// +// 1. Redistributions of source code must retain the above copyright notice, +// this list of conditions and the following disclaimer. +// +// 2. Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, +// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +// FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +// APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- +// DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +// OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef LOG4CPLUS_CONFIG_HXX +#define LOG4CPLUS_CONFIG_HXX + + +#if defined (_WIN32) +# include <log4cplus/config/win32.h> +#elif (defined(__MWERKS__) && defined(__MACOS__)) +# include <log4cplus/config/macosx.h> +#else +# include <log4cplus/config/defines.hxx> +#endif + +#if !defined(_WIN32) +# if !defined(LOG4CPLUS_SINGLE_THREADED) +# define LOG4CPLUS_USE_PTHREADS +# endif +# if defined (INSIDE_LOG4CPLUS) +# define LOG4CPLUS_EXPORT LOG4CPLUS_DECLSPEC_EXPORT +# else +# define LOG4CPLUS_EXPORT LOG4CPLUS_DECLSPEC_IMPORT +# endif // defined (INSIDE_LOG4CPLUS) +#endif // !_WIN32 + +#include <log4cplus/helpers/thread-config.h> + + +#endif // LOG4CPLUS_CONFIG_HXX diff --git a/src/vm/log4cplus/config/defines.hxx.in b/src/vm/log4cplus/config/defines.hxx.in new file mode 100644 index 0000000..5bd9538 --- /dev/null +++ b/src/vm/log4cplus/config/defines.hxx.in @@ -0,0 +1,113 @@ +#ifndef LOG4CPLUS_CONFIG_DEFINES_HXX +#define LOG4CPLUS_CONFIG_DEFINES_HXX + +/* */ +#undef LOG4CPLUS_HAVE_SYSLOG_H + +/* */ +#undef LOG4CPLUS_HAVE_NETINET_IN_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_TYPES_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_SOCKET_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_STAT_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_TIMEB_H + +/* */ +#undef LOG4CPLUS_HAVE_SYS_TIME_H + +/* */ +#undef LOG4CPLUS_HAVE_TIME_H + +/* */ +#undef LOG4CPLUS_HAVE_NETDB_H + +/* */ +#undef LOG4CPLUS_HAVE_UNISTD_H + +/* */ +#undef LOG4CPLUS_HAVE_ERRNO_H + +/* */ +#undef LOG4CPLUS_HAVE_STDARG_H + +/* */ +#undef LOG4CPLUS_HAVE_STDIO_H + +/* */ +#undef LOG4CPLUS_HAVE_WCHAR_H + +/* */ +#undef LOG4CPLUS_HAVE_FTIME + +/* */ +#undef LOG4CPLUS_HAVE_GETADDRINFO + +/* */ +#undef LOG4CPLUS_HAVE_GETHOSTBYNAME_R + +/* */ +#undef LOG4CPLUS_HAVE_GETPID + +/* */ +#undef LOG4CPLUS_HAVE_GETTIMEOFDAY + +/* */ +#undef LOG4CPLUS_HAVE_GMTIME_R + +/* */ +#undef LOG4CPLUS_HAVE_HTONL + +/* */ +#undef LOG4CPLUS_HAVE_HTONS + +/* */ +#undef LOG4CPLUS_HAVE_LOCALTIME_R + +/* */ +#undef LOG4CPLUS_HAVE_LSTAT + +/* */ +#undef LOG4CPLUS_HAVE_NTOHL + +/* */ +#undef LOG4CPLUS_HAVE_NTOHS + +/* */ +#undef LOG4CPLUS_HAVE_STAT + +/* Define if this is a single-threaded library. */ +#undef LOG4CPLUS_SINGLE_THREADED + +/* */ +#undef LOG4CPLUS_USE_PTHREADS + +/* Define for compilers/standard libraries that support more than just the "C" + locale. */ +#undef LOG4CPLUS_WORKING_LOCALE + +/* Define to int if undefined. */ +#undef socklen_t + +/* Defined for --enable-debugging builds. */ +#undef LOG4CPLUS_DEBUGGING + +/* Defined if the compiler understands __declspec(export) or __attribute__((export)) construct. */ +#undef LOG4CPLUS_DECLSPEC_EXPORT + +/* Defined if the compiler understands __declspec(import) or __attribute__((import)) construct. */ +#undef LOG4CPLUS_DECLSPEC_IMPORT + +/* Defined if the host OS provides ENAMETOOLONG errno value. */ +#undef LOG4CPLUS_HAVE_ENAMETOOLONG + +/* Define to 1 if you have the `clock_gettime' function. */ +#undef LOG4CPLUS_HAVE_CLOCK_GETTIME + +#endif // LOG4CPLUS_CONFIG_DEFINES_HXX diff --git a/src/vm/log4cplus/config/macosx.h b/src/vm/log4cplus/config/macosx.h new file mode 100644 index 0000000..e526ab5 --- /dev/null +++ b/src/vm/log4cplus/config/macosx.h @@ -0,0 +1,25 @@ +// Module: Log4CPLUS +// File: config-macosx.h +// Created: 7/2003 +// Author: Christopher R. Bailey +// +// +// Copyright (C) Tad E. Smith All rights reserved. +// +// This software is published under the terms of the Apache Software +// License version 1.1, a copy of which has been included with this +// distribution in the LICENSE.APL file. +// + +/** @file */ + +#ifndef LOG4CPLUS_CONFIG_MACOSX_HEADER_ +#define LOG4CPLUS_CONFIG_MACOSX_HEADER_ + +#if (defined(__APPLE__) || (defined(__MWERKS__) && defined(__MACOS__))) + +#define LOG4CPLUS_HAVE_GETTIMEOFDAY 1 +#define socklen_t int + +#endif // MACOSX +#endif // LOG4CPLUS_CONFIG_MACOSX_HEADER_ diff --git a/src/vm/log4cplus/config/win32.h b/src/vm/log4cplus/config/win32.h new file mode 100644 index 0000000..f15de86 --- /dev/null +++ b/src/vm/log4cplus/config/win32.h @@ -0,0 +1,96 @@ +// Module: Log4CPLUS +// File: config-win32.h +// Created: 4/2003 +// Author: Tad E. Smith +// +// +// Copyright 2003-2010 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef LOG4CPLUS_CONFIG_WIN32_HEADER_ +#define LOG4CPLUS_CONFIG_WIN32_HEADER_ + +#ifdef _WIN32 +#include <windows.h> + +#if ! defined (_WIN32_WCE) +/* Define if you have the ftime function. */ +#define LOG4CPLUS_HAVE_FTIME 1 +#define LOG4CPLUS_HAVE_ERRNO_H +#define LOG4CPLUS_HAVE_SYS_STAT_H +#endif +#define LOG4CPLUS_HAVE_TIME_H +#define LOG4CPLUS_HAVE_STDLIB_H + +#if defined (_WIN32_WCE) +# define LOG4CPLUS_DLLMAIN_HINSTANCE HANDLE +# undef LOG4CPLUS_HAVE_NT_EVENT_LOG +#else +# define LOG4CPLUS_DLLMAIN_HINSTANCE HINSTANCE +# define LOG4CPLUS_HAVE_NT_EVENT_LOG +# define LOG4CPLUS_HAVE_WIN32_CONSOLE +#endif + +// Enable Win32DebugAppender +#define LOG4CPLUS_HAVE_OUTPUTDEBUGSTRING + +// log4cplus_EXPORTS is used by the CMake build system. DLL_EXPORT is +// used by the autotools build system. +#if (defined (log4cplus_EXPORTS) || defined (DLL_EXPORT)) \ + && ! defined (LOG4CPLUS_STATIC) +# undef LOG4CPLUS_BUILD_DLL +# define LOG4CPLUS_BUILD_DLL +#endif + +#if ! defined (LOG4CPLUS_BUILD_DLL) +# undef LOG4CPLUS_STATIC +# define LOG4CPLUS_STATIC +#endif + +#if defined (LOG4CPLUS_STATIC) && defined (LOG4CPLUS_BUILD_DLL) +# error LOG4CPLUS_STATIC and LOG4CPLUS_BUILD_DLL cannot be defined both. +#endif + +#if defined (LOG4CPLUS_BUILD_DLL) +# if defined (INSIDE_LOG4CPLUS) +# define LOG4CPLUS_EXPORT __declspec(dllexport) +# else +# define LOG4CPLUS_EXPORT __declspec(dllimport) +# endif +#else +# define LOG4CPLUS_EXPORT +#endif + +#ifndef LOG4CPLUS_SINGLE_THREADED +# define LOG4CPLUS_USE_WIN32_THREADS +#endif + +#if defined(_MSC_VER) + // Warning about: identifier was truncated to '255' characters in the debug information +# pragma warning( disable : 4786 ) + // Warning about: <type1> needs to have dll-interface to be used by clients of class <type2> +# pragma warning( disable : 4251 ) + +# if _MSC_VER >= 1400 && ! defined (_WIN32_WCE) +# define LOG4CPLUS_WORKING_LOCALE +# endif + +#endif + + +#endif // _WIN32 +#endif // LOG4CPLUS_CONFIG_WIN32_HEADER_ + diff --git a/src/vm/log4cplus/configurator.h b/src/vm/log4cplus/configurator.h new file mode 100644 index 0000000..62de401 --- /dev/null +++ b/src/vm/log4cplus/configurator.h @@ -0,0 +1,340 @@ +// Module: Log4CPLUS +// File: configurator.h +// Created: 3/2003 +// Author: Tad E. Smith +// +// +// Copyright 2003-2010 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef _CONFIGURATOR_HEADER_ +#define _CONFIGURATOR_HEADER_ + +#include <log4cplus/config.hxx> +#include <log4cplus/appender.h> +#include <log4cplus/hierarchy.h> +#include <log4cplus/logger.h> +#include <log4cplus/helpers/logloguser.h> +#include <log4cplus/helpers/pointer.h> +#include <log4cplus/helpers/property.h> + +#include <map> + + +namespace log4cplus +{ + + /** + * Provides configuration from an external file. See configure() for + * the expected format. + * + * <em>All option values admit variable substitution.</em> For + * example, if <code>userhome</code> environment property is set to + * <code>/home/xyz</code> and the File option is set to the string + * <code>${userhome}/test.log</code>, then File option will be + * interpreted as the string <code>/home/xyz/test.log</code>. + * + * The syntax of variable substitution is similar to that of UNIX + * shells. The string between an opening <b>"${"</b> and + * closing <b>"}"</b> is interpreted as a key. Its value is + * searched in the environment properties. The corresponding value replaces + * the ${variableName} sequence. + */ + class LOG4CPLUS_EXPORT PropertyConfigurator + : protected log4cplus::helpers::LogLogUser + { + public: + enum PCFlags + { + fRecursiveExpansion = 0x0001, + fShadowEnvironment = 0x0002, + fAllowEmptyVars = 0x0004 + }; + + // ctor and dtor + PropertyConfigurator(const log4cplus::tstring& propertyFile, + Hierarchy& h = Logger::getDefaultHierarchy(), unsigned flags = 0); + PropertyConfigurator(const log4cplus::helpers::Properties& props, + Hierarchy& h = Logger::getDefaultHierarchy(), unsigned flags = 0); + PropertyConfigurator(log4cplus::tistream& propertyStream, + Hierarchy& h = Logger::getDefaultHierarchy(), unsigned flags = 0); + virtual ~PropertyConfigurator(); + + /** + * This method eliminates the need to create a temporary + * <code>PropertyConfigurator</code> to configure log4cplus. + * It is equivalent to the following:<br> + * <code> + * PropertyConfigurator config("filename"); + * config.configure(); + * </code> + */ + static void doConfigure(const log4cplus::tstring& configFilename, + Hierarchy& h = Logger::getDefaultHierarchy(), unsigned flags = 0); + + /** + * Read configuration from a file. <b>The existing configuration is + * not cleared nor reset.</b> If you require a different behavior, + * then call {@link Hierarchy::resetConfiguration + * resetConfiguration} method before calling + * <code>doConfigure</code>. + * + * The configuration file consists of statements in the format + * <code>key=value</code>. The syntax of different configuration + * elements are discussed below. + * + * <h3>Appender configuration</h3> + * + * Appender configuration syntax is: + * <pre> + * # For appender named <i>appenderName</i>, set its class. + * # Note: The appender name can contain dots. + * log4cplus.appender.appenderName=fully.qualified.name.of.appender.class + * + * # Set appender specific options. + * log4cplus.appender.appenderName.option1=value1 + * ... + * log4cplus.appender.appenderName.optionN=valueN + * </pre> + * + * For each named appender you can configure its {@link Layout}. The + * syntax for configuring an appender's layout is: + * <pre> + * log4cplus.appender.appenderName.layout=fully.qualified.name.of.layout.class + * log4cplus.appender.appenderName.layout.option1=value1 + * .... + * log4cplus.appender.appenderName.layout.optionN=valueN + * </pre> + * + * <h3>Configuring loggers</h3> + * + * The syntax for configuring the root logger is: + * <pre> + * log4cplus.rootLogger=[LogLevel], appenderName, appenderName, ... + * </pre> + * + * This syntax means that an optional <em>LogLevel value</em> can + * be supplied followed by appender names separated by commas. + * + * The LogLevel value can consist of the string values FATAL, + * ERROR, WARN, INFO, DEBUG or a <em>custom LogLevel</em> value. + * + * If a LogLevel value is specified, then the root LogLevel is set + * to the corresponding LogLevel. If no LogLevel value is specified, + * then the root LogLevel remains untouched. + * + * The root logger can be assigned multiple appenders. + * + * Each <i>appenderName</i> (separated by commas) will be added to + * the root logger. The named appender is defined using the + * appender syntax defined above. + * + * For non-root loggers the syntax is almost the same: + * <pre> + * log4cplus.logger.logger_name=[LogLevel|INHERITED], appenderName, appenderName, ... + * </pre> + * + * The meaning of the optional LogLevel value is discussed above + * in relation to the root logger. In addition however, the value + * INHERITED can be specified meaning that the named logger should + * inherit its LogLevel from the logger hierarchy. + * + * By default loggers inherit their LogLevel from the + * hierarchy. However, if you set the LogLevel of a logger and + * later decide that that logger should inherit its LogLevel, then + * you should specify INHERITED as the value for the LogLevel value. + * + * Similar to the root logger syntax, each <i>appenderName</i> + * (separated by commas) will be attached to the named logger. + * + * See the <a href="../../../../manual.html#additivity">appender + * additivity rule</a> in the user manual for the meaning of the + * <code>additivity</code> flag. + * + * The user can override any of the {@link + * Hierarchy#disable} family of methods by setting the a key + * "log4cplus.disableOverride" to <code>true</code> or any value other + * than false. As in <pre>log4cplus.disableOverride=true </pre> + * + * <h3>Example</h3> + * + * An example configuration is given below. + * + * <pre> + * + * # Set options for appender named "A1". + * # Appender "A1" will be a SyslogAppender + * log4cplus.appender.A1=log4cplus::SyslogAppender + * + * # The syslog daemon resides on www.abc.net + * log4cplus.appender.A1.SyslogHost=www.abc.net + * + * # A1's layout is a PatternLayout, using the conversion pattern + * # <b>%r %-5p %c{2} %M.%L %x - %m\n</b>. Thus, the log output will + * # include # the relative time since the start of the application in + * # milliseconds, followed by the LogLevel of the log request, + * # followed by the two rightmost components of the logger name, + * # followed by the callers method name, followed by the line number, + * # the nested disgnostic context and finally the message itself. + * # Refer to the documentation of {@link PatternLayout} for further information + * # on the syntax of the ConversionPattern key. + * log4cplus.appender.A1.layout=log4cplus::PatternLayout + * log4cplus.appender.A1.layout.ConversionPattern=%-4r %-5p %c{2} %M.%L %x - %m\n + * + * # Set options for appender named "A2" + * # A2 should be a RollingFileAppender, with maximum file size of 10 MB + * # using at most one backup file. A2's layout is TTCC, using the + * # ISO8061 date format with context printing enabled. + * log4cplus.appender.A2=log4cplus::RollingFileAppender + * log4cplus.appender.A2.MaxFileSize=10MB + * log4cplus.appender.A2.MaxBackupIndex=1 + * log4cplus.appender.A2.layout=log4cplus::TTCCLayout + * log4cplus.appender.A2.layout.ContextPrinting=enabled + * log4cplus.appender.A2.layout.DateFormat=ISO8601 + * + * # Root logger set to DEBUG using the A2 appender defined above. + * log4cplus.rootLogger=DEBUG, A2 + * + * # Logger definitions: + * # The SECURITY logger inherits is LogLevel from root. However, it's output + * # will go to A1 appender defined above. It's additivity is non-cumulative. + * log4cplus.logger.SECURITY=INHERIT, A1 + * log4cplus.additivity.SECURITY=false + * + * # Only warnings or above will be logged for the logger "SECURITY.access". + * # Output will go to A1. + * log4cplus.logger.SECURITY.access=WARN + * + * + * # The logger "class.of.the.day" inherits its LogLevel from the + * # logger hierarchy. Output will go to the appender's of the root + * # logger, A2 in this case. + * log4cplus.logger.class.of.the.day=INHERIT + * </pre> + * + * Refer to the <b>setOption</b> method in each Appender and + * Layout for class specific options. + * + * Use the <code>#</code> character at the beginning of a line + * for comments. + */ + virtual void configure(); + + /** + * \return The return value is reference to Properties + * container of properties with the <code>"log4cplus."</code> + * prefix removed and references to other properties and/or + * environment variables expanded. + */ + log4cplus::helpers::Properties const & getProperties () const; + + /** + * \return The return value is a reference to log4cplus::tstring + * containing filename of properties source file. It will be + * string "UNAVAILABLE" if the PropertyConfigurator instance has been + * constructed using one of the other constructors that do not take + * filename as parameter. + */ + log4cplus::tstring const & getPropertyFilename () const; + + protected: + // Methods + void init(); // called by the ctor + void reconfigure(); + void replaceEnvironVariables(); + void configureLoggers(); + void configureLogger(log4cplus::Logger logger, const log4cplus::tstring& config); + void configureAppenders(); + void configureAdditivity(); + + virtual Logger getLogger(const log4cplus::tstring& name); + virtual void addAppender(Logger &logger, log4cplus::SharedAppenderPtr& appender); + + // Types + typedef std::map<log4cplus::tstring, log4cplus::SharedAppenderPtr> AppenderMap; + + // Data + Hierarchy& h; + log4cplus::tstring propertyFilename; + log4cplus::helpers::Properties properties; + AppenderMap appenders; + unsigned flags; + + private: + // Disable copy + PropertyConfigurator(const PropertyConfigurator&); + PropertyConfigurator& operator=(PropertyConfigurator&); + }; + + + + /** + * Use this class to quickly configure the package. For file based + * configuration see PropertyConfigurator. BasicConfigurator + * automatically attaches ConsoleAppender to + * <code>rootLogger</code>, with output going to standard output, + * using DEBUG LogLevel value. + */ + class LOG4CPLUS_EXPORT BasicConfigurator : public PropertyConfigurator { + public: + // ctor and dtor + BasicConfigurator(Hierarchy& h = Logger::getDefaultHierarchy()); + virtual ~BasicConfigurator(); + + /** + * This method eliminates the need to create a temporary + * <code>BasicConfigurator</code> object to configure log4cplus. + * It is equivalent to the following:<br> + * <code><pre> + * BasicConfigurator config; + * config.configure(); + * </pre></code> + */ + static void doConfigure(Hierarchy& h = Logger::getDefaultHierarchy()); + + private: + // Disable copy + BasicConfigurator(const BasicConfigurator&); + BasicConfigurator& operator=(BasicConfigurator&); + }; + + +#if !defined(LOG4CPLUS_SINGLE_THREADED) + // Forward Declarations + class ConfigurationWatchDogThread; + + + class LOG4CPLUS_EXPORT ConfigureAndWatchThread { + public: + // ctor and dtor + ConfigureAndWatchThread(const log4cplus::tstring& propertyFile, + unsigned int millis = 60 * 1000); + virtual ~ConfigureAndWatchThread(); + + private: + // Disallow copying of instances of this class + ConfigureAndWatchThread(const ConfigureAndWatchThread&); + ConfigureAndWatchThread& operator=(const ConfigureAndWatchThread&); + + // Data + ConfigurationWatchDogThread * watchDogThread; + }; +#endif + +} // end namespace log4cplus + +#endif // _CONFIGURATOR_HEADER_ + diff --git a/src/vm/log4cplus/consoleappender.h b/src/vm/log4cplus/consoleappender.h new file mode 100644 index 0000000..b76ad95 --- /dev/null +++ b/src/vm/log4cplus/consoleappender.h @@ -0,0 +1,74 @@ +// Module: Log4CPLUS +// File: consoleappender.h +// Created: 6/2001 +// Author: Tad E. Smith +// +// +// Copyright 2001-2009 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef _LOG4CPLUS_CONSOLE_APPENDER_HEADER_ +#define _LOG4CPLUS_CONSOLE_APPENDER_HEADER_ + +#include <log4cplus/config.hxx> +#include <log4cplus/appender.h> + +namespace log4cplus { + /** + * ConsoleAppender appends log events to <code>std::cout</code> or + * <code>std::cerr</code> using a layout specified by the + * user. The default target is <code>std::cout</code>. + * + * <h3>Properties</h3> + * <dl> + * <dt><tt>logToStdErr</tt></dt> + * <dd>When it is set true, the output stream will be + * <code>std::cerr</code> instead of <code>std::cout</code>.</dd> + * + * <dt><tt>ImmediateFlush</tt></dt> + * <dd>When it is set true, output stream will be flushed after + * each appended event.</dd> + * + * </dl> + */ + class LOG4CPLUS_EXPORT ConsoleAppender : public Appender { + public: + // Ctors + ConsoleAppender(bool logToStdErr = false, bool immediateFlush = false); + ConsoleAppender(const log4cplus::helpers::Properties properties); + + // Dtor + ~ConsoleAppender(); + + // Methods + virtual void close(); + + protected: + virtual void append(const spi::InternalLoggingEvent& event); + + // Data + bool logToStdErr; + /** + * Immediate flush means that the underlying output stream + * will be flushed at the end of each append operation. + */ + bool immediateFlush; + }; + +} // end namespace log4cplus + +#endif // _LOG4CPLUS_CONSOLE_APPENDER_HEADER_ + diff --git a/src/vm/log4cplus/fileappender.h b/src/vm/log4cplus/fileappender.h new file mode 100644 index 0000000..785f0b0 --- /dev/null +++ b/src/vm/log4cplus/fileappender.h @@ -0,0 +1,237 @@ +// Module: Log4CPLUS +// File: fileappender.h +// Created: 6/2001 +// Author: Tad E. Smith +// +// +// Copyright 2001-2010 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef _LOG4CPLUS_FILE_APPENDER_HEADER_ +#define _LOG4CPLUS_FILE_APPENDER_HEADER_ + +#include <log4cplus/config.hxx> +#include <log4cplus/appender.h> +#include <log4cplus/fstreams.h> +#include <log4cplus/helpers/property.h> +#include <log4cplus/helpers/timehelper.h> + +#if defined(__DECCXX) +# define LOG4CPLUS_OPEN_MODE_TYPE LOG4CPLUS_FSTREAM_NAMESPACE::ios::open_mode +#else +# define LOG4CPLUS_OPEN_MODE_TYPE LOG4CPLUS_FSTREAM_NAMESPACE::ios::openmode +#endif + +namespace log4cplus { + + /** + * Appends log events to a file. + * + * <h3>Properties</h3> + * <dl> + * <dt><tt>File</tt></dt> + * <dd>This property specifies output file name.</dd> + * + * <dt><tt>ImmediateFlush</tt></dt> + * <dd>When it is set true, output stream will be flushed after + * each appended event.</dd> + * + * <dt><tt>Append</tt></dt> + * <dd>When it is set true, output file will be appended to + * instead of being truncated at opening.</dd> + * + * <dt><tt>ReopenDelay</tt></dt> + * <dd>This property sets a delay after which the appender will + * try to reopen log file again, after last logging failure. The + * default value is 1 second. Setting the delay to 0 makes the + * appender not to try reopening the stream. + * </dd> + * + * <dt><tt>BufferSize</tt></dt> + * <dd>Non-zero value of this property sets up buffering of output + * stream using a buffer of given size. + * </dd> + * </dl> + */ + class LOG4CPLUS_EXPORT FileAppender : public Appender { + public: + // Ctors + FileAppender(const log4cplus::tstring& filename, + LOG4CPLUS_OPEN_MODE_TYPE mode = LOG4CPLUS_FSTREAM_NAMESPACE::ios::trunc, + bool immediateFlush = true); + FileAppender(const log4cplus::helpers::Properties& properties, + LOG4CPLUS_OPEN_MODE_TYPE mode = LOG4CPLUS_FSTREAM_NAMESPACE::ios::trunc); + + // Dtor + virtual ~FileAppender(); + + // Methods + virtual void close(); + + protected: + virtual void append(const spi::InternalLoggingEvent& event); + + void open(LOG4CPLUS_OPEN_MODE_TYPE mode); + bool reopen(); + + // Data + /** + * Immediate flush means that the underlying writer or output stream + * will be flushed at the end of each append operation. Immediate + * flush is slower but ensures that each append request is actually + * written. If <code>immediateFlush</code> is set to + * <code>false</code>, then there is a good chance that the last few + * logs events are not actually written to persistent media if and + * when the application crashes. + * + * The <code>immediateFlush</code> variable is set to + * <code>true</code> by default. + */ + bool immediateFlush; + + /** + * When any append operation fails, <code>reopenDelay</code> says + * for how many seconds the next attempt to re-open the log file and + * resume logging will be delayed. If <code>reopenDelay</code> is zero, + * each failed append operation will cause log file to be re-opened. + * By default, <code>reopenDelay</code> is 1 second. + */ + int reopenDelay; + + unsigned long bufferSize; + log4cplus::tchar * buffer; + + log4cplus::tofstream out; + log4cplus::tstring filename; + + log4cplus::helpers::Time reopen_time; + + private: + void init(const log4cplus::tstring& filename, + LOG4CPLUS_OPEN_MODE_TYPE mode); + + // Disallow copying of instances of this class + FileAppender(const FileAppender&); + FileAppender& operator=(const FileAppender&); + }; + + + + /** + * RollingFileAppender extends FileAppender to backup the log + * files when they reach a certain size. + * + * <h3>Properties</h3> + * <p>Properties additional to {@link FileAppender}'s properties: + * + * <dl> + * <dt><tt>MaxFileSize</tt></dt> + * <dd>This property specifies maximal size of output file. The + * value is in bytes. It is possible to use <tt>MB</tt> and + * <tt>KB</tt> suffixes to specify the value in megabytes or + * kilobytes instead.</dd> + * + * <dt><tt>MaxBackupIndex</tt></dt> + * <dd>This property limits the number of backup output + * files; e.g. how many <tt>log.1</tt>, <tt>log.2</tt> etc. files + * will be kept.</dd> + * </dl> + */ + class LOG4CPLUS_EXPORT RollingFileAppender : public FileAppender { + public: + // Ctors + RollingFileAppender(const log4cplus::tstring& filename, + long maxFileSize = 10*1024*1024, // 10 MB + int maxBackupIndex = 1, + bool immediateFlush = true); + RollingFileAppender(const log4cplus::helpers::Properties& properties); + + // Dtor + virtual ~RollingFileAppender(); + + protected: + virtual void append(const spi::InternalLoggingEvent& event); + void rollover(); + + // Data + long maxFileSize; + int maxBackupIndex; + + private: + void init(long maxFileSize, int maxBackupIndex); + }; + + + + enum DailyRollingFileSchedule { MONTHLY, WEEKLY, DAILY, + TWICE_DAILY, HOURLY, MINUTELY}; + + /** + * DailyRollingFileAppender extends {@link FileAppender} so that the + * underlying file is rolled over at a user chosen frequency. + * + * <h3>Properties</h3> + * <p>Properties additional to {@link FileAppender}'s properties: + * + * <dl> + * <dt><tt>Schedule</tt></dt> + * <dd>This property specifies rollover schedule. The possible + * values are <tt>MONTHLY</tt>, <tt>WEEKLY</tt>, <tt>DAILY</tt>, + * <tt>TWICE_DAILY</tt>, <tt>HOURLY</tt> and + * <tt>MINUTELY</tt>.</dd> + * + * <dt><tt>MaxBackupIndex</tt></dt> + * <dd>This property limits how many backup files are kept per + * single logging period; e.g. how many <tt>log.2009-11-07.1</tt>, + * <tt>log.2009-11-07.2</tt> etc. files are kept.</dd> + * + * </dl> + */ + class LOG4CPLUS_EXPORT DailyRollingFileAppender : public FileAppender { + public: + // Ctors + DailyRollingFileAppender(const log4cplus::tstring& filename, + DailyRollingFileSchedule schedule = DAILY, + bool immediateFlush = true, + int maxBackupIndex = 10); + DailyRollingFileAppender(const log4cplus::helpers::Properties& properties); + + // Dtor + virtual ~DailyRollingFileAppender(); + + // Methods + virtual void close(); + + protected: + virtual void append(const spi::InternalLoggingEvent& event); + void rollover(); + log4cplus::helpers::Time calculateNextRolloverTime(const log4cplus::helpers::Time& t) const; + log4cplus::tstring getFilename(const log4cplus::helpers::Time& t) const; + + // Data + DailyRollingFileSchedule schedule; + log4cplus::tstring scheduledFilename; + log4cplus::helpers::Time nextRolloverTime; + int maxBackupIndex; + + private: + void init(DailyRollingFileSchedule schedule); + }; + +} // end namespace log4cplus + +#endif // _LOG4CPLUS_FILE_APPENDER_HEADER_ + diff --git a/src/vm/log4cplus/fstreams.h b/src/vm/log4cplus/fstreams.h new file mode 100644 index 0000000..5a25790 --- /dev/null +++ b/src/vm/log4cplus/fstreams.h @@ -0,0 +1,50 @@ +// Module: Log4CPLUS +// File: fstreams.h +// Created: 4/2003 +// Author: Tad E. Smith +// +// +// Copyright 2003-2009 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef LOG4CPLUS_FSTREAMS_HEADER_ +#define LOG4CPLUS_FSTREAMS_HEADER_ + +#include <log4cplus/config.hxx> + +#include <fstream> + +#if defined(__DECCXX) && !defined(__USE_STD_IOSTREAM) +# define LOG4CPLUS_FSTREAM_NAMESPACE +#else +# define LOG4CPLUS_FSTREAM_NAMESPACE std +#endif + + +#ifdef UNICODE + namespace log4cplus { + typedef LOG4CPLUS_FSTREAM_NAMESPACE::wofstream tofstream; + typedef LOG4CPLUS_FSTREAM_NAMESPACE::wifstream tifstream; + } +#else + namespace log4cplus { + typedef LOG4CPLUS_FSTREAM_NAMESPACE::ofstream tofstream; + typedef LOG4CPLUS_FSTREAM_NAMESPACE::ifstream tifstream; + } +#endif // UNICODE + +#endif // LOG4CPLUS_FSTREAMS_HEADER_ + diff --git a/src/vm/log4cplus/helpers/appenderattachableimpl.h b/src/vm/log4cplus/helpers/appenderattachableimpl.h new file mode 100644 index 0000000..710232e --- /dev/null +++ b/src/vm/log4cplus/helpers/appenderattachableimpl.h @@ -0,0 +1,112 @@ +// Module: Log4CPLUS +// File: appenderattachableimpl.h +// Created: 6/2001 +// Author: Tad E. Smith +// +// +// Copyright 2001-2009 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef _LOG4CPLUS_HELPERS_APPENDER_ATTACHABLE_IMPL_HEADER_ +#define _LOG4CPLUS_HELPERS_APPENDER_ATTACHABLE_IMPL_HEADER_ + +#include <log4cplus/config.hxx> +#include <log4cplus/layout.h> +#include <log4cplus/tstring.h> +#include <log4cplus/helpers/logloguser.h> +#include <log4cplus/helpers/pointer.h> +#include <log4cplus/helpers/threads.h> +#include <log4cplus/spi/appenderattachable.h> + +#include <memory> +#include <vector> + + +namespace log4cplus { + namespace helpers { + + /** + * This Interface is for attaching Appenders to objects. + */ + class LOG4CPLUS_EXPORT AppenderAttachableImpl + : public log4cplus::spi::AppenderAttachable, + protected log4cplus::helpers::LogLogUser + { + public: + // Data + LOG4CPLUS_MUTEX_PTR_DECLARE appender_list_mutex; + + // Ctors + AppenderAttachableImpl(); + + // Dtor + virtual ~AppenderAttachableImpl(); + + // Methods + /** + * Add an appender. If the appender is already in the list in + * won't be added again. + */ + virtual void addAppender(SharedAppenderPtr newAppender); + + /** + * Get all previously added appenders as an vectory. + */ + virtual SharedAppenderPtrList getAllAppenders(); + + /** + * Look for an attached appender named as <code>name</code>. + * + * Return the appender with that name if in the list. Return null + * otherwise. + */ + virtual SharedAppenderPtr getAppender(const log4cplus::tstring& name); + + /** + * Remove all previously added appenders. + */ + virtual void removeAllAppenders(); + + /** + * Remove the appender passed as parameter from the list of appenders. + */ + virtual void removeAppender(SharedAppenderPtr appender); + + /** + * Remove the appender with the name passed as parameter from the + * list of appenders. + */ + virtual void removeAppender(const log4cplus::tstring& name); + + /** + * Call the <code>doAppend</code> method on all attached appenders. + */ + int appendLoopOnAppenders(const spi::InternalLoggingEvent& event) const; + + protected: + // Types + typedef std::vector<SharedAppenderPtr> ListType; + + // Data + /** Array of appenders. */ + ListType appenderList; + }; // end class AppenderAttachableImpl + + } // end namespace helpers +} // end namespace log4cplus + +#endif // _LOG4CPLUS_HELPERS_APPENDER_ATTACHABLE_IMPL_HEADER_ + diff --git a/src/vm/log4cplus/helpers/loglog.h b/src/vm/log4cplus/helpers/loglog.h new file mode 100644 index 0000000..595ab9a --- /dev/null +++ b/src/vm/log4cplus/helpers/loglog.h @@ -0,0 +1,113 @@ +// Module: Log4CPLUS +// File: loglog.h +// Created: 6/2001 +// Author: Tad E. Smith +// +// +// Copyright 2001-2009 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef _LOG4CPLUS_HELPERS_LOGLOG +#define _LOG4CPLUS_HELPERS_LOGLOG + +#include <log4cplus/config.hxx> +#include <log4cplus/tstring.h> +#include <log4cplus/helpers/pointer.h> +#include <log4cplus/helpers/threads.h> + + +namespace log4cplus { + namespace helpers { + + /** + * This class used to output log statements from within the log4cplus package. + * + * Log4cplus components cannot make log4cplus logging calls. However, it is + * sometimes useful for the user to learn about what log4cplus is + * doing. You can enable log4cplus internal logging by defining the + * <b>log4cplus.configDebug</b> variable. + * + * All log4cplus internal debug calls go to <code>cout</code> + * where as internal error messages are sent to + * <code>cerr</code>. All internal messages are prepended with + * the string "log4clus: ". + */ + class LOG4CPLUS_EXPORT LogLog + : public virtual log4cplus::helpers::SharedObject + { + public: + // Static methods + /** + * Returns a reference to the <code>LogLog</code> singleton. + */ + static log4cplus::helpers::SharedObjectPtr<LogLog> getLogLog(); + + + /** + * Allows to enable/disable log4cplus internal logging. + */ + void setInternalDebugging(bool enabled); + + /** + * In quite mode no LogLog generates strictly no output, not even + * for errors. + * + * @param quietMode A true for not + */ + void setQuietMode(bool quietMode); + + /** + * This method is used to output log4cplus internal debug + * statements. Output goes to <code>std::cout</code>. + */ + void debug(const log4cplus::tstring& msg); + + /** + * This method is used to output log4cplus internal error + * statements. There is no way to disable error statements. + * Output goes to <code>std::cerr</code>. + */ + void error(const log4cplus::tstring& msg); + + /** + * This method is used to output log4cplus internal warning + * statements. There is no way to disable warning statements. + * Output goes to <code>std::cerr</code>. + */ + void warn(const log4cplus::tstring& msg); + + // Dtor + virtual ~LogLog(); + + // Data + LOG4CPLUS_MUTEX_PTR_DECLARE mutex; + + private: + // Data + bool debugEnabled; + bool quietMode; + + // Ctors + LogLog(); + LogLog(const LogLog&); + }; + + } // end namespace helpers +} // end namespace log4cplus + + +#endif // _LOG4CPLUS_HELPERS_LOGLOG + diff --git a/src/vm/log4cplus/helpers/logloguser.h b/src/vm/log4cplus/helpers/logloguser.h new file mode 100644 index 0000000..2cbcb15 --- /dev/null +++ b/src/vm/log4cplus/helpers/logloguser.h @@ -0,0 +1,62 @@ +// Module: Log4CPLUS +// File: logloguser.h +// Created: 6/2003 +// Author: Tad E. Smith +// +// +// Copyright 2003-2009 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** @file */ + +#ifndef _LOG4CPLUS_HELPERS_LOGLOG_USER +#define _LOG4CPLUS_HELPERS_LOGLOG_USER + +#include <log4cplus/config.hxx> + + +namespace log4cplus { + namespace helpers { + // forward declarations + class LogLog; + + /** + * This class used to simplify the use of the LogLog class. Any class + * that uses the LogLog class should extend this class and retrieve + * their reference to LogLog using the method provided. + */ + class LOG4CPLUS_EXPORT LogLogUser { + public: + // ctor and dtor + LogLogUser(); + LogLogUser(const LogLogUser&); + virtual ~LogLogUser(); + + // public methods + LogLog& getLogLog() const; + + // operators + LogLogUser& operator=(const LogLogUser& rhs); + + private: + // Data + void* loglogRef; + }; + + } // end namespace helpers +} // end namespace log4cplus + + +#endif // _LOG4CPLUS_HELPERS_LOGLOG_USER + diff --git a/src/vm/log4cplus/helpers/pointer.h b/src/vm/log4cplus/helpers/pointer.h new file mode 100644 index 0000000..52c1989 --- /dev/null +++ b/src/vm/log4cplus/helpers/pointer.h @@ -0,0 +1,160 @@ +// Module: Log4CPLUS +// File: pointer.h +// Created: 6/2001 +// Author: Tad E. Smith +// +// +// Copyright 2001-2009 Tad E. Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +// Note: Some of this code uses ideas from "More Effective C++" by Scott +// Myers, Addison Wesley Longmain, Inc., (c) 1996, Chapter 29, pp. 183-213 +// + +/** @file */ + +#ifndef _LOG4CPLUS_HELPERS_POINTERS_HEADER_ +#define _LOG4CPLUS_HELPERS_POINTERS_HEADER_ + +#include <log4cplus/config.hxx> +#include <memory> +#include <stdexcept> +#include <string> +#include <algorithm> +#include <cassert> + + +namespace log4cplus { + namespace helpers { + + /****************************************************************************** + * Class SharedObject (from pp. 204-205) * + ******************************************************************************/ + + class LOG4CPLUS_EXPORT SharedObject + { + public: + void addReference() const; + void removeReference() const; + + protected: + // Ctor + SharedObject() + : access_mutex(LOG4CPLUS_MUTEX_CREATE) + , count(0) + { } + + SharedObject(const SharedObject&) + : access_mutex(LOG4CPLUS_MUTEX_CREATE) + , count(0) + { } + + // Dtor + virtual ~SharedObject(); + + // Operators + SharedObject& operator=(const SharedObject&) { return *this; } + + public: + LOG4CPLUS_MUTEX_PTR_DECLARE access_mutex; + + private: + mutable int count; + }; + + + /****************************************************************************** + * Template Class SharedObjectPtr (from pp. 203, 206) * + ******************************************************************************/ + template<class T> + class SharedObjectPtr + { + public: + ... [truncated message content] |
From: Nikolay M. <nik...@gm...> - 2012-02-21 09:08:24
|
Максим: Разработка мобильного приложения для развития логического мышления Дмитрий: Разработка инструментов для виртуальной машины Кронос -- Best Regards, Nikolay Moskvin Mobext UK Senior developer email: nik...@mo...; cell phone: +7 913792 2959; MSN: mo...@mo...; ICQ: 191219647 GTalk: nik...@gm...; Skype: nick.mkvn |
From: Maxim B. <mbe...@ma...> - 2012-02-19 19:09:54
|
у нас во вторник две пары. Было бы не плохо попасть в столовую и потом можно встречаться :) это где-то 12-40, наверно. если с пары раньше не отпустят. Дим, тебе как? ок? |
From: Nikolay M. <nik...@gm...> - 2012-02-19 17:24:16
|
Привет, Максим и Дмитрий Давайте организуем встречу во вторник (20.02.12), я могу в этот день с 12 до 16 часов. Хочу поговорить на счёт ваших тем дипломных работ. -- Best regards, Nikolay Moskvin |
From: Nikolay M. <nik...@gm...> - 2011-12-15 17:31:33
|
Ok, Thank you guys Let me know if you have any progress. Please can you commit your progress to git repository? 16 декабря 2011 г. 0:11 пользователь Maxim Belskiy <mbe...@ma...> написал: > Привет, Николай! > > Ну я так понимаю, задачи 1 и 3 - первостепенные, поэтому ими > мы и займёмся в ближайшее время. Завтра с Дмитрием поговорим на этот счёт и > сообщим о дальнейших планах действий. Ок? > > А на счёт Java developer'а - да, это так. Вот жду ответа, от компании. Оценивают тестовое. > > 15 декабря 2011, 18:12 от Nikolay Moskvin <nik...@gm...>: >> Привет, студенты >> >> После того как меня всетаки нашел Дмитрий, мы с ним выяснили, что нам >> предстоит сделать еще много работы а именно: >> 1) Тесты для одновременного записи/чтения на/c монтированного раздела. >> Хорошо конечно в этой связи написать юнит тесты. >> Еще хорошим тестом является загрузка самого кроноса с Windows-раздела. >> Это тоже предстоит сделать >> 2) Необходимо сделать поддержку множественного монтирования разделов с >> Windows (С этим вроде разобрались, если есть еще вопросы то пишите) >> 3) Если есть необходимость в новом mou, то его нужно сделать и >> добавить в утилиты по умолчанию. >> Также необходимо добавить в ядро модуль после реализации пункта 2 >> 4) Добавляем cmake >> 5) Избавляемся от Qt4 >> >> Хочу также услышать чтонибудь от Максима, вроде слышал, что ты хочешь >> в Java developer'ы податься? >> >> -- >> Best Regards, >> Nikolay Moskvin >> Mobext UK >> Senior developer >> email: nik...@mo... >> cell phone: +7 913792 2959; >> ------------------------------------------------------------------------------ >> 10 Tips for Better Server Consolidation >> Server virtualization is being driven by many needs. >> But none more important than the need to reduce IT complexity >> while improving strategic productivity. Learn More! >> http://www.accelacomm.com/jaw/sdnl/114/51507609/ >> _______________________________________________ >> Kronos2-developer mailing list >> Kro...@li... >> https://lists.sourceforge.net/lists/listinfo/kronos2-developer >> >> > ------------------------------------------------------------------------------ > 10 Tips for Better Server Consolidation > Server virtualization is being driven by many needs. > But none more important than the need to reduce IT complexity > while improving strategic productivity. Learn More! > http://www.accelacomm.com/jaw/sdnl/114/51507609/ > _______________________________________________ > Kronos2-developer mailing list > Kro...@li... > https://lists.sourceforge.net/lists/listinfo/kronos2-developer -- Best regards, Nikolay Moskvin |
From: Maxim B. <mbe...@ma...> - 2011-12-15 17:11:31
|
Привет, Николай! Ну я так понимаю, задачи 1 и 3 - первостепенные, поэтому ими мы и займёмся в ближайшее время. Завтра с Дмитрием поговорим на этот счёт и сообщим о дальнейших планах действий. Ок? А на счёт Java developer'а - да, это так. Вот жду ответа, от компании. Оценивают тестовое. 15 декабря 2011, 18:12 от Nikolay Moskvin <nik...@gm...>: > Привет, студенты > > После того как меня всетаки нашел Дмитрий, мы с ним выяснили, что нам > предстоит сделать еще много работы а именно: > 1) Тесты для одновременного записи/чтения на/c монтированного раздела. > Хорошо конечно в этой связи написать юнит тесты. > Еще хорошим тестом является загрузка самого кроноса с Windows-раздела. > Это тоже предстоит сделать > 2) Необходимо сделать поддержку множественного монтирования разделов с > Windows (С этим вроде разобрались, если есть еще вопросы то пишите) > 3) Если есть необходимость в новом mou, то его нужно сделать и > добавить в утилиты по умолчанию. > Также необходимо добавить в ядро модуль после реализации пункта 2 > 4) Добавляем cmake > 5) Избавляемся от Qt4 > > Хочу также услышать чтонибудь от Максима, вроде слышал, что ты хочешь > в Java developer'ы податься? > > -- > Best Regards, > Nikolay Moskvin > Mobext UK > Senior developer > email: nik...@mo... > cell phone: +7 913792 2959; > ------------------------------------------------------------------------------ > 10 Tips for Better Server Consolidation > Server virtualization is being driven by many needs. > But none more important than the need to reduce IT complexity > while improving strategic productivity. Learn More! > http://www.accelacomm.com/jaw/sdnl/114/51507609/ > _______________________________________________ > Kronos2-developer mailing list > Kro...@li... > https://lists.sourceforge.net/lists/listinfo/kronos2-developer > > |
From: Nikolay M. <nik...@gm...> - 2011-12-15 14:12:22
|
Привет, студенты После того как меня всетаки нашел Дмитрий, мы с ним выяснили, что нам предстоит сделать еще много работы а именно: 1) Тесты для одновременного записи/чтения на/c монтированного раздела. Хорошо конечно в этой связи написать юнит тесты. Еще хорошим тестом является загрузка самого кроноса с Windows-раздела. Это тоже предстоит сделать 2) Необходимо сделать поддержку множественного монтирования разделов с Windows (С этим вроде разобрались, если есть еще вопросы то пишите) 3) Если есть необходимость в новом mou, то его нужно сделать и добавить в утилиты по умолчанию. Также необходимо добавить в ядро модуль после реализации пункта 2 4) Добавляем cmake 5) Избавляемся от Qt4 Хочу также услышать чтонибудь от Максима, вроде слышал, что ты хочешь в Java developer'ы податься? -- Best Regards, Nikolay Moskvin Mobext UK Senior developer email: nik...@mo... cell phone: +7 913792 2959; |
From: Dmitrii K. <sst...@us...> - 2011-06-08 17:06:35
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Virtual mashine for Kronos". The branch, master has been updated via b3d4ec1c816ccb03b04bb1a6beddf11a22da132c (commit) from b470add54ee5a85a0c26a8d50eced80046163eb8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit b3d4ec1c816ccb03b04bb1a6beddf11a22da132c Author: Dmitriy Kuragin <dku...@ya...> Date: Wed Jun 8 23:47:17 2011 +0700 =Last commit is bad diff --git a/src/disks/xd1.dsk b/src/disks/xd1.dsk index cdfc64c..dd4d65f 100644 Binary files a/src/disks/xd1.dsk and b/src/disks/xd1.dsk differ diff --git a/src/vm/src/fs/NTFS.cpp b/src/vm/src/fs/NTFS.cpp index 15a7b76..c0a6f9b 100644 --- a/src/vm/src/fs/NTFS.cpp +++ b/src/vm/src/fs/NTFS.cpp @@ -28,12 +28,14 @@ #include <stdio.h> #include <QHash> +#include <io.h> + #include "NTFS.h" using namespace FS; using namespace Utils; -NTFS::NTFS(void) { +NTFS::NTFS(void):mountPoint((char *)FS_DIR_MOUNT){ //opens = 0; filterDirs = QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot; // this->currentDir = NULL; @@ -70,7 +72,7 @@ int NTFS::mount(int handleDevice, const char* point){ logs->warn(QString("mount: Exist mount with the point: %1").arg(point)); //return error; } - return open(FS_DIR_MOUNT); + return open(mountPoint); } int NTFS::unmount(int handleDevice){ @@ -217,7 +219,7 @@ bool NTFS::isdir(unsigned int id){ bool flag = false; File* file = getFile(id); if (file != NULL) { - if (file->fullName.compare(FS_DIR_MOUNT, Qt::CaseInsensitive) == 0) { + if (file->fullName.compare(mountPoint, Qt::CaseInsensitive) == 0) { file->isDir = flag = true; } else { QFileInfo fileInfo(file->fullName); @@ -334,7 +336,7 @@ int NTFS::close(unsigned int id){ void NTFS::clean(void){ // this->files.pop_back(); QString path = ""; - path.append(FS_DIR_MOUNT); + path.append(mountPoint); this->currentTree.setPath(path); } @@ -410,7 +412,7 @@ int NTFS::deviceList(unsigned int handleDevice, StorageDevice* storageDevice) { unsigned long long NTFS::deviceFree(int handleDevice) { // TODO: use node (now use C://) #ifdef _WIN32 - QDir::setCurrent( FS_DIR_MOUNT ); + QDir::setCurrent( mountPoint ); ULARGE_INTEGER free; bool bRes = ::GetDiskFreeSpaceExA( 0 , &free , NULL , NULL ); if ( !bRes ) return 0; @@ -419,8 +421,8 @@ unsigned long long NTFS::deviceFree(int handleDevice) { struct stat stst; struct statfs stfs; - if ( ::stat(FS_DIR_MOUNT,&stst) == -1 ) return 0; - if ( ::statfs(FS_DIR_MOUNT,&stfs) == -1 ) return 0; + if ( ::stat(mountPoint,&stst) == -1 ) return 0; + if ( ::statfs(mountPoint,&stfs) == -1 ) return 0; return stfs.f_bavail * ( stst.st_blksize ); #endif @@ -433,7 +435,7 @@ long long getValue(ULARGE_INTEGER data) { unsigned long long NTFS::deviceUsed(int handleDevice){ // TODO: use node (now use C://) #ifdef _WIN32 - QDir::setCurrent( FS_DIR_MOUNT ); + QDir::setCurrent( mountPoint ); unsigned __int64 total, free; bool bRes = ::GetDiskFreeSpaceExA( 0 , (PULARGE_INTEGER)&free , (PULARGE_INTEGER)&total , NULL ); if ( !bRes ) return 0; @@ -446,8 +448,8 @@ unsigned long long NTFS::deviceUsed(int handleDevice){ struct stat stst; struct statfs stfs; - if ( ::stat(FS_DIR_MOUNT,&stst) == -1 ) return 0; - if ( ::statfs(FS_DIR_MOUNT,&stfs) == -1 ) return 0; + if ( ::stat(mountPoint,&stst) == -1 ) return 0; + if ( ::statfs(mountPoint,&stfs) == -1 ) return 0; return (stfs.f_blocks - stfs.f_bavail) * ( stst.st_blksize ); #endif @@ -497,6 +499,11 @@ int NTFS::link(unsigned int id, const char* fileName){ return error; } +int NTFS::changePoint(const char *point){ + mountPoint[0] = point[strlen(point)-1]; + return 0; +} + int NTFS::unlink(unsigned int id, const char* fileName){ File* file = getFile(id); if (file != NULL) { diff --git a/src/vm/src/fs/NTFS.h b/src/vm/src/fs/NTFS.h index 65ad7ef..07ce689 100644 --- a/src/vm/src/fs/NTFS.h +++ b/src/vm/src/fs/NTFS.h @@ -23,7 +23,6 @@ #include <QList> #include <QString> #include <QDir> - #ifdef _WIN32 #include <windows.h> #else // linux stuff @@ -79,6 +78,7 @@ namespace FS { int create(unsigned int); int link(unsigned int, const char*); int unlink(unsigned int, const char*); + int changePoint(const char*); private: QList<Node*> nodes; @@ -94,5 +94,6 @@ namespace FS { //int opens; QDir::Filters filterDirs; void printMem(byte*); + char *mountPoint; }; } diff --git a/src/vm/src/fs/OperationFS.h b/src/vm/src/fs/OperationFS.h index a934ecf..4187f69 100644 --- a/src/vm/src/fs/OperationFS.h +++ b/src/vm/src/fs/OperationFS.h @@ -52,6 +52,8 @@ namespace FS { DeviceList = 50, DeviceFree = 51, DeviceUsed = 52, + ChangePoint = 53, + ExistPoint = 54, SysLog = 99, }; @@ -182,6 +184,8 @@ namespace FS { virtual int create(unsigned int) = 0; + virtual int changePoint(const char*) = 0; + virtual int link(unsigned int, const char*) = 0; virtual int unlink(unsigned int, const char*) = 0; ----------------------------------------------------------------------- Summary of changes: src/disks/xd1.dsk | Bin 21340160 -> 21340160 bytes src/vm/src/fs/NTFS.cpp | 27 +++++++++++++++++---------- src/vm/src/fs/NTFS.h | 3 ++- src/vm/src/fs/OperationFS.h | 4 ++++ 4 files changed, 23 insertions(+), 11 deletions(-) hooks/post-receive -- Virtual mashine for Kronos |
From: Dmitrii K. <sst...@us...> - 2011-06-07 18:21:13
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Virtual mashine for Kronos". The branch, testing has been created at 41455ca52629bf8199f94a629349ca519ab118f6 (commit) - Log ----------------------------------------------------------------- commit 41455ca52629bf8199f94a629349ca519ab118f6 Merge: 85a04e6 b470add Author: Dmitriy Kuragin <dku...@ya...> Date: Tue Jun 7 01:16:19 2011 +0700 =NewMou change mount point commit 85a04e6a1e96dfd134eea6ebe91e14101095cf1e Author: Kuragin Dmitri <sstepashka@host10.localdomain> Date: Tue Jun 7 01:07:58 2011 +0700 =NewMou change mount point diff --git a/doc/diplom/build.sh b/doc/diplom/build.sh old mode 100755 new mode 100644 diff --git a/doc/draft/build.sh b/doc/draft/build.sh old mode 100755 new mode 100644 diff --git a/doc/presentation/build.sh b/doc/presentation/build.sh old mode 100755 new mode 100644 diff --git a/doc/presentation/img/build.sh b/doc/presentation/img/build.sh old mode 100755 new mode 100644 diff --git a/src/disks/xd1.dsk b/src/disks/xd1.dsk index bc80b39..71cbef4 100644 Binary files a/src/disks/xd1.dsk and b/src/disks/xd1.dsk differ diff --git a/src/third-party/log4qt/Doxyfile b/src/third-party/log4qt/Doxyfile old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/LICENSE-2.0.txt b/src/third-party/log4qt/LICENSE-2.0.txt old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/NOTICE.txt b/src/third-party/log4qt/NOTICE.txt old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/README.txt b/src/third-party/log4qt/README.txt old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/doc/default.css b/src/third-party/log4qt/doc/default.css old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/doc/index.html b/src/third-party/log4qt/doc/index.html old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/appender.h b/src/third-party/log4qt/src/log4qt/appender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/appenderskeleton.cpp b/src/third-party/log4qt/src/log4qt/appenderskeleton.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/appenderskeleton.h b/src/third-party/log4qt/src/log4qt/appenderskeleton.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/basicconfigurator.cpp b/src/third-party/log4qt/src/log4qt/basicconfigurator.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/basicconfigurator.h b/src/third-party/log4qt/src/log4qt/basicconfigurator.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/consoleappender.cpp b/src/third-party/log4qt/src/log4qt/consoleappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/consoleappender.h b/src/third-party/log4qt/src/log4qt/consoleappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/dailyrollingfileappender.cpp b/src/third-party/log4qt/src/log4qt/dailyrollingfileappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/dailyrollingfileappender.h b/src/third-party/log4qt/src/log4qt/dailyrollingfileappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/fileappender.cpp b/src/third-party/log4qt/src/log4qt/fileappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/fileappender.h b/src/third-party/log4qt/src/log4qt/fileappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/classlogger.cpp b/src/third-party/log4qt/src/log4qt/helpers/classlogger.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/classlogger.h b/src/third-party/log4qt/src/log4qt/helpers/classlogger.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/configuratorhelper.cpp b/src/third-party/log4qt/src/log4qt/helpers/configuratorhelper.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/configuratorhelper.h b/src/third-party/log4qt/src/log4qt/helpers/configuratorhelper.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/datetime.cpp b/src/third-party/log4qt/src/log4qt/helpers/datetime.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/datetime.h b/src/third-party/log4qt/src/log4qt/helpers/datetime.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/factory.cpp b/src/third-party/log4qt/src/log4qt/helpers/factory.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/factory.h b/src/third-party/log4qt/src/log4qt/helpers/factory.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/initialisationhelper.cpp b/src/third-party/log4qt/src/log4qt/helpers/initialisationhelper.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/initialisationhelper.h b/src/third-party/log4qt/src/log4qt/helpers/initialisationhelper.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/logerror.cpp b/src/third-party/log4qt/src/log4qt/helpers/logerror.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/logerror.h b/src/third-party/log4qt/src/log4qt/helpers/logerror.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/logobject.cpp b/src/third-party/log4qt/src/log4qt/helpers/logobject.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/logobject.h b/src/third-party/log4qt/src/log4qt/helpers/logobject.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/logobjectptr.cpp b/src/third-party/log4qt/src/log4qt/helpers/logobjectptr.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/logobjectptr.h b/src/third-party/log4qt/src/log4qt/helpers/logobjectptr.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/optionconverter.cpp b/src/third-party/log4qt/src/log4qt/helpers/optionconverter.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/optionconverter.h b/src/third-party/log4qt/src/log4qt/helpers/optionconverter.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/patternformatter.cpp b/src/third-party/log4qt/src/log4qt/helpers/patternformatter.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/patternformatter.h b/src/third-party/log4qt/src/log4qt/helpers/patternformatter.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/properties.cpp b/src/third-party/log4qt/src/log4qt/helpers/properties.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/helpers/properties.h b/src/third-party/log4qt/src/log4qt/helpers/properties.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/hierarchy.cpp b/src/third-party/log4qt/src/log4qt/hierarchy.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/hierarchy.h b/src/third-party/log4qt/src/log4qt/hierarchy.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/layout.cpp b/src/third-party/log4qt/src/log4qt/layout.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/layout.h b/src/third-party/log4qt/src/log4qt/layout.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/level.cpp b/src/third-party/log4qt/src/log4qt/level.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/level.h b/src/third-party/log4qt/src/log4qt/level.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/log4qt.cpp b/src/third-party/log4qt/src/log4qt/log4qt.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/log4qt.h b/src/third-party/log4qt/src/log4qt/log4qt.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/log4qt.pri b/src/third-party/log4qt/src/log4qt/log4qt.pri old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/logger.cpp b/src/third-party/log4qt/src/log4qt/logger.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/logger.h b/src/third-party/log4qt/src/log4qt/logger.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/loggerrepository.cpp b/src/third-party/log4qt/src/log4qt/loggerrepository.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/loggerrepository.h b/src/third-party/log4qt/src/log4qt/loggerrepository.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/loggingevent.cpp b/src/third-party/log4qt/src/log4qt/loggingevent.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/loggingevent.h b/src/third-party/log4qt/src/log4qt/loggingevent.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/logmanager.cpp b/src/third-party/log4qt/src/log4qt/logmanager.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/logmanager.h b/src/third-party/log4qt/src/log4qt/logmanager.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/mdc.cpp b/src/third-party/log4qt/src/log4qt/mdc.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/mdc.h b/src/third-party/log4qt/src/log4qt/mdc.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/ndc.cpp b/src/third-party/log4qt/src/log4qt/ndc.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/ndc.h b/src/third-party/log4qt/src/log4qt/ndc.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/patternlayout.cpp b/src/third-party/log4qt/src/log4qt/patternlayout.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/patternlayout.h b/src/third-party/log4qt/src/log4qt/patternlayout.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/propertyconfigurator.cpp b/src/third-party/log4qt/src/log4qt/propertyconfigurator.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/propertyconfigurator.h b/src/third-party/log4qt/src/log4qt/propertyconfigurator.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/rollingfileappender.cpp b/src/third-party/log4qt/src/log4qt/rollingfileappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/rollingfileappender.h b/src/third-party/log4qt/src/log4qt/rollingfileappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/simplelayout.cpp b/src/third-party/log4qt/src/log4qt/simplelayout.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/simplelayout.h b/src/third-party/log4qt/src/log4qt/simplelayout.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/spi/filter.cpp b/src/third-party/log4qt/src/log4qt/spi/filter.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/spi/filter.h b/src/third-party/log4qt/src/log4qt/spi/filter.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/ttcclayout.cpp b/src/third-party/log4qt/src/log4qt/ttcclayout.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/ttcclayout.h b/src/third-party/log4qt/src/log4qt/ttcclayout.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/debugappender.cpp b/src/third-party/log4qt/src/log4qt/varia/debugappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/debugappender.h b/src/third-party/log4qt/src/log4qt/varia/debugappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/denyallfilter.cpp b/src/third-party/log4qt/src/log4qt/varia/denyallfilter.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/denyallfilter.h b/src/third-party/log4qt/src/log4qt/varia/denyallfilter.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/levelmatchfilter.cpp b/src/third-party/log4qt/src/log4qt/varia/levelmatchfilter.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/levelmatchfilter.h b/src/third-party/log4qt/src/log4qt/varia/levelmatchfilter.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/levelrangefilter.cpp b/src/third-party/log4qt/src/log4qt/varia/levelrangefilter.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/levelrangefilter.h b/src/third-party/log4qt/src/log4qt/varia/levelrangefilter.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/listappender.cpp b/src/third-party/log4qt/src/log4qt/varia/listappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/listappender.h b/src/third-party/log4qt/src/log4qt/varia/listappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/nullappender.cpp b/src/third-party/log4qt/src/log4qt/varia/nullappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/nullappender.h b/src/third-party/log4qt/src/log4qt/varia/nullappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/stringmatchfilter.cpp b/src/third-party/log4qt/src/log4qt/varia/stringmatchfilter.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/varia/stringmatchfilter.h b/src/third-party/log4qt/src/log4qt/varia/stringmatchfilter.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/writerappender.cpp b/src/third-party/log4qt/src/log4qt/writerappender.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/src/log4qt/writerappender.h b/src/third-party/log4qt/src/log4qt/writerappender.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/tests/log4qttest.cpp b/src/third-party/log4qt/tests/log4qttest.cpp old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/tests/log4qttest.h b/src/third-party/log4qt/tests/log4qttest.h old mode 100755 new mode 100644 diff --git a/src/third-party/log4qt/tests/log4qttest.pro b/src/third-party/log4qt/tests/log4qttest.pro old mode 100755 new mode 100644 diff --git a/src/vm/Makefile b/src/vm/Makefile new file mode 100644 index 0000000..6a8ed34 --- /dev/null +++ b/src/vm/Makefile @@ -0,0 +1,1283 @@ +############################################################################# +# Makefile for building: QKronos +# Generated by qmake (2.01a) (Qt 4.6.0) on: ?? 17. ??? 01:37:08 2011 +# Project: QKronos.pro +# Template: app +# Command: c:\qt\2009.05\qt\bin\qmake.exe -spec ..\..\..\..\Qt\2009.05\qt\mkspecs\win32-g++ -win32 -o Makefile QKronos.pro +############################################################################# + +####### Compiler, tools and options + +CC = gcc +CXX = g++ +DEFINES = -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT +CFLAGS = -g -w $(DEFINES) +CXXFLAGS = -g -Wunknown-pragmas -w -frtti -fexceptions -mthreads $(DEFINES) +INCPATH = -I"..\..\..\..\Qt\2009.05\qt\include\QtCore" -I"..\..\..\..\Qt\2009.05\qt\include" -I"..\third-party\log4qt\src" -I"..\..\..\..\Qt\2009.05\qt\include\ActiveQt" -I"." -I"..\..\..\..\Qt\2009.05\qt\mkspecs\win32-g++" +LINK = g++ +LFLAGS = -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-subsystem,console -mthreads -Wl +LIBS = -L"c:\Qt\2009.05\qt\lib" -lws2_32 -mwindows -lwsock32 -lQtCored4 +QMAKE = c:\qt\2009.05\qt\bin\qmake.exe +IDC = c:\Qt\2009.05\qt\bin\idc.exe +IDL = midl +ZIP = zip -r -9 +DEF_FILE = +RES_FILE = +COPY = copy /y +COPY_FILE = $(COPY) +COPY_DIR = xcopy /s /q /y /i +DEL_FILE = del +DEL_DIR = rmdir +MOVE = move +CHK_DIR_EXISTS= if not exist +MKDIR = mkdir +INSTALL_FILE = $(COPY_FILE) +INSTALL_PROGRAM = $(COPY_FILE) +INSTALL_DIR = $(COPY_DIR) + +####### Output directory + +OBJECTS_DIR = win32 + +####### Files + +SOURCES = ..\third-party\log4qt\src\log4qt\appenderskeleton.cpp \ + ..\third-party\log4qt\src\log4qt\basicconfigurator.cpp \ + ..\third-party\log4qt\src\log4qt\consoleappender.cpp \ + ..\third-party\log4qt\src\log4qt\dailyrollingfileappender.cpp \ + ..\third-party\log4qt\src\log4qt\fileappender.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\classlogger.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\configuratorhelper.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\datetime.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\factory.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\initialisationhelper.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\logerror.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\logobject.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\logobjectptr.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\optionconverter.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\patternformatter.cpp \ + ..\third-party\log4qt\src\log4qt\helpers\properties.cpp \ + ..\third-party\log4qt\src\log4qt\hierarchy.cpp \ + ..\third-party\log4qt\src\log4qt\layout.cpp \ + ..\third-party\log4qt\src\log4qt\level.cpp \ + ..\third-party\log4qt\src\log4qt\log4qt.cpp \ + ..\third-party\log4qt\src\log4qt\logger.cpp \ + ..\third-party\log4qt\src\log4qt\loggerrepository.cpp \ + ..\third-party\log4qt\src\log4qt\loggingevent.cpp \ + ..\third-party\log4qt\src\log4qt\logmanager.cpp \ + ..\third-party\log4qt\src\log4qt\mdc.cpp \ + ..\third-party\log4qt\src\log4qt\ndc.cpp \ + ..\third-party\log4qt\src\log4qt\patternlayout.cpp \ + ..\third-party\log4qt\src\log4qt\propertyconfigurator.cpp \ + ..\third-party\log4qt\src\log4qt\rollingfileappender.cpp \ + ..\third-party\log4qt\src\log4qt\simplelayout.cpp \ + ..\third-party\log4qt\src\log4qt\spi\filter.cpp \ + ..\third-party\log4qt\src\log4qt\ttcclayout.cpp \ + ..\third-party\log4qt\src\log4qt\writerappender.cpp \ + ..\third-party\log4qt\src\log4qt\varia\debugappender.cpp \ + ..\third-party\log4qt\src\log4qt\varia\denyallfilter.cpp \ + ..\third-party\log4qt\src\log4qt\varia\nullappender.cpp \ + ..\third-party\log4qt\src\log4qt\varia\levelmatchfilter.cpp \ + ..\third-party\log4qt\src\log4qt\varia\levelrangefilter.cpp \ + ..\third-party\log4qt\src\log4qt\varia\listappender.cpp \ + ..\third-party\log4qt\src\log4qt\varia\stringmatchfilter.cpp \ + src\vmConsole.cpp \ + src\VM.cpp \ + src\SIO_TCP.cpp \ + src\SIO.cpp \ + src\preCompiled.cpp \ + src\Memory.cpp \ + src\IGD480.cpp \ + src\Disks.cpp \ + src\cO_win32_display.cpp \ + src\cO_win32.cpp \ + src\cO_tcp.cpp \ + src\fs\AttributeFS.cpp \ + src\fs\NTFS.cpp \ + src\vmWindow.cpp \ + src\cO_gnu_display.cpp \ + src\cO_gnu.cpp \ + src\Kronos3vm.cpp \ + src\utils\KronosLogger.cpp moc_appender.cpp \ + moc_appenderskeleton.cpp \ + moc_consoleappender.cpp \ + moc_dailyrollingfileappender.cpp \ + moc_fileappender.cpp \ + moc_configuratorhelper.cpp \ + moc_logobject.cpp \ + moc_layout.cpp \ + moc_logger.cpp \ + moc_patternlayout.cpp \ + moc_rollingfileappender.cpp \ + moc_simplelayout.cpp \ + moc_filter.cpp \ + moc_ttcclayout.cpp \ + moc_writerappender.cpp \ + moc_debugappender.cpp \ + moc_denyallfilter.cpp \ + moc_nullappender.cpp \ + moc_levelmatchfilter.cpp \ + moc_levelrangefilter.cpp \ + moc_listappender.cpp \ + moc_stringmatchfilter.cpp +OBJECTS = win32/appenderskeleton.o \ + win32/basicconfigurator.o \ + win32/consoleappender.o \ + win32/dailyrollingfileappender.o \ + win32/fileappender.o \ + win32/classlogger.o \ + win32/configuratorhelper.o \ + win32/datetime.o \ + win32/factory.o \ + win32/initialisationhelper.o \ + win32/logerror.o \ + win32/logobject.o \ + win32/logobjectptr.o \ + win32/optionconverter.o \ + win32/patternformatter.o \ + win32/properties.o \ + win32/hierarchy.o \ + win32/layout.o \ + win32/level.o \ + win32/log4qt.o \ + win32/logger.o \ + win32/loggerrepository.o \ + win32/loggingevent.o \ + win32/logmanager.o \ + win32/mdc.o \ + win32/ndc.o \ + win32/patternlayout.o \ + win32/propertyconfigurator.o \ + win32/rollingfileappender.o \ + win32/simplelayout.o \ + win32/filter.o \ + win32/ttcclayout.o \ + win32/writerappender.o \ + win32/debugappender.o \ + win32/denyallfilter.o \ + win32/nullappender.o \ + win32/levelmatchfilter.o \ + win32/levelrangefilter.o \ + win32/listappender.o \ + win32/stringmatchfilter.o \ + win32/vmConsole.o \ + win32/VM.o \ + win32/SIO_TCP.o \ + win32/SIO.o \ + win32/preCompiled.o \ + win32/Memory.o \ + win32/IGD480.o \ + win32/Disks.o \ + win32/cO_win32_display.o \ + win32/cO_win32.o \ + win32/cO_tcp.o \ + win32/AttributeFS.o \ + win32/NTFS.o \ + win32/vmWindow.o \ + win32/cO_gnu_display.o \ + win32/cO_gnu.o \ + win32/Kronos3vm.o \ + win32/KronosLogger.o \ + win32/moc_appender.o \ + win32/moc_appenderskeleton.o \ + win32/moc_consoleappender.o \ + win32/moc_dailyrollingfileappender.o \ + win32/moc_fileappender.o \ + win32/moc_configuratorhelper.o \ + win32/moc_logobject.o \ + win32/moc_layout.o \ + win32/moc_logger.o \ + win32/moc_patternlayout.o \ + win32/moc_rollingfileappender.o \ + win32/moc_simplelayout.o \ + win32/moc_filter.o \ + win32/moc_ttcclayout.o \ + win32/moc_writerappender.o \ + win32/moc_debugappender.o \ + win32/moc_denyallfilter.o \ + win32/moc_nullappender.o \ + win32/moc_levelmatchfilter.o \ + win32/moc_levelrangefilter.o \ + win32/moc_listappender.o \ + win32/moc_stringmatchfilter.o +DIST = +QMAKE_TARGET = QKronos +DESTDIR = win32\ #avoid trailing-slash linebreak +TARGET = QKronos.exe +DESTDIR_TARGET = win32\QKronos.exe + +####### Implicit rules + +.SUFFIXES: .cpp .cc .cxx .c + +.cpp.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< + +.cc.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< + +.cxx.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< + +.c.o: + $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $< + +####### Build rules + +first: all +all: Makefile $(DESTDIR_TARGET) + +$(DESTDIR_TARGET): $(OBJECTS) + $(LINK) $(LFLAGS) -o $(DESTDIR_TARGET) object_script.QKronos $(LIBS) + + +Makefile: QKronos.pro ../../../../Qt/2009.05/qt/mkspecs/win32-g++/qmake.conf ../../../../Qt/2009.05/qt/mkspecs/qconfig.pri \ + ../../../../Qt/2009.05/qt/mkspecs/features/qt_functions.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/qt_config.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/exclusive_builds.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/default_pre.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/win32/default_pre.prf \ + ../third-party/log4qt/src/log4qt/log4qt.pri \ + ../../../../Qt/2009.05/qt/mkspecs/features/debug.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/default_post.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/win32/default_post.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/warn_off.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/win32/console.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/win32/rtti.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/win32/exceptions.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/win32/stl.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/shared.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/qt.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/win32/thread.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/moc.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/resources.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/uic.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/yacc.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/lex.prf \ + ../../../../Qt/2009.05/qt/mkspecs/features/include_source_dir.prf + $(QMAKE) -spec ..\..\..\..\Qt\2009.05\qt\mkspecs\win32-g++ -win32 -o Makefile QKronos.pro +..\..\..\..\Qt\2009.05\qt\mkspecs\qconfig.pri: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\qt_functions.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\qt_config.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\exclusive_builds.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\default_pre.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\default_pre.prf: +..\third-party\log4qt\src\log4qt\log4qt.pri: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\debug.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\default_post.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\default_post.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\warn_off.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\console.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\rtti.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\exceptions.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\stl.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\shared.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\qt.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\thread.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\moc.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\resources.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\uic.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\yacc.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\lex.prf: +..\..\..\..\Qt\2009.05\qt\mkspecs\features\include_source_dir.prf: +qmake: FORCE + @$(QMAKE) -spec ..\..\..\..\Qt\2009.05\qt\mkspecs\win32-g++ -win32 -o Makefile QKronos.pro + +dist: + $(ZIP) QKronos.zip $(SOURCES) $(DIST) QKronos.pro ..\..\..\..\Qt\2009.05\qt\mkspecs\qconfig.pri ..\..\..\..\Qt\2009.05\qt\mkspecs\features\qt_functions.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\qt_config.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\exclusive_builds.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\default_pre.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\default_pre.prf ..\third-party\log4qt\src\log4qt\log4qt.pri ..\..\..\..\Qt\2009.05\qt\mkspecs\features\debug.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\default_post.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\default_post.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\warn_off.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\console.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\rtti.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\exceptions.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\stl.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\shared.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\qt.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\win32\thread.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\moc.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\resources.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\uic.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\yacc.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\lex.prf ..\..\..\..\Qt\2009.05\qt\mkspecs\features\include_source_dir.prf HEADERS RESOURCES IMAGES SOURCES OBJECTIVE_SOURCES FORMS YACCSOURCES YACCSOURCES LEXSOURCES + +clean: compiler_clean + -$(DEL_FILE) win32\appenderskeleton.o win32\basicconfigurator.o win32\consoleappender.o win32\dailyrollingfileappender.o win32\fileappender.o win32\classlogger.o win32\configuratorhelper.o win32\datetime.o win32\factory.o win32\initialisationhelper.o win32\logerror.o win32\logobject.o win32\logobjectptr.o win32\optionconverter.o win32\patternformatter.o win32\properties.o win32\hierarchy.o win32\layout.o win32\level.o win32\log4qt.o win32\logger.o win32\loggerrepository.o win32\loggingevent.o win32\logmanager.o win32\mdc.o win32\ndc.o win32\patternlayout.o win32\propertyconfigurator.o win32\rollingfileappender.o win32\simplelayout.o win32\filter.o win32\ttcclayout.o win32\writerappender.o win32\debugappender.o win32\denyallfilter.o win32\nullappender.o win32\levelmatchfilter.o win32\levelrangefilter.o win32\listappender.o win32\stringmatchfilter.o win32\vmConsole.o win32\VM.o win32\SIO_TCP.o win32\SIO.o win32\preCompiled.o win32\Memory.o win32\IGD480.o win32\Disks.o win32\cO_win32_display.o win32\cO_win32.o win32\cO_tcp.o win32\AttributeFS.o win32\NTFS.o win32\vmWindow.o win32\cO_gnu_display.o win32\cO_gnu.o win32\Kronos3vm.o win32\KronosLogger.o win32\moc_appender.o win32\moc_appenderskeleton.o win32\moc_consoleappender.o win32\moc_dailyrollingfileappender.o win32\moc_fileappender.o win32\moc_configuratorhelper.o win32\moc_logobject.o win32\moc_layout.o win32\moc_logger.o win32\moc_patternlayout.o win32\moc_rollingfileappender.o win32\moc_simplelayout.o win32\moc_filter.o win32\moc_ttcclayout.o win32\moc_writerappender.o win32\moc_debugappender.o win32\moc_denyallfilter.o win32\moc_nullappender.o win32\moc_levelmatchfilter.o win32\moc_levelrangefilter.o win32\moc_listappender.o win32\moc_stringmatchfilter.o + +distclean: clean + -$(DEL_FILE) $(DESTDIR_TARGET) + -$(DEL_FILE) Makefile + +mocclean: compiler_moc_header_clean compiler_moc_source_clean + +mocables: compiler_moc_header_make_all compiler_moc_source_make_all + +compiler_moc_header_make_all: moc_appender.cpp moc_appenderskeleton.cpp moc_consoleappender.cpp moc_dailyrollingfileappender.cpp moc_fileappender.cpp moc_configuratorhelper.cpp moc_logobject.cpp moc_layout.cpp moc_logger.cpp moc_patternlayout.cpp moc_rollingfileappender.cpp moc_simplelayout.cpp moc_filter.cpp moc_ttcclayout.cpp moc_writerappender.cpp moc_debugappender.cpp moc_denyallfilter.cpp moc_nullappender.cpp moc_levelmatchfilter.cpp moc_levelrangefilter.cpp moc_listappender.cpp moc_stringmatchfilter.cpp +compiler_moc_header_clean: + -$(DEL_FILE) moc_appender.cpp moc_appenderskeleton.cpp moc_consoleappender.cpp moc_dailyrollingfileappender.cpp moc_fileappender.cpp moc_configuratorhelper.cpp moc_logobject.cpp moc_layout.cpp moc_logger.cpp moc_patternlayout.cpp moc_rollingfileappender.cpp moc_simplelayout.cpp moc_filter.cpp moc_ttcclayout.cpp moc_writerappender.cpp moc_debugappender.cpp moc_denyallfilter.cpp moc_nullappender.cpp moc_levelmatchfilter.cpp moc_levelrangefilter.cpp moc_listappender.cpp moc_stringmatchfilter.cpp +moc_appender.cpp: ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/appender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\appender.h -o moc_appender.cpp + +moc_appenderskeleton.cpp: ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\appenderskeleton.h -o moc_appenderskeleton.cpp + +moc_consoleappender.cpp: ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/consoleappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\consoleappender.h -o moc_consoleappender.cpp + +moc_dailyrollingfileappender.cpp: ../third-party/log4qt/src/log4qt/fileappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/dailyrollingfileappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\dailyrollingfileappender.h -o moc_dailyrollingfileappender.cpp + +moc_fileappender.cpp: ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/fileappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\fileappender.h -o moc_fileappender.cpp + +moc_configuratorhelper.cpp: ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/helpers/configuratorhelper.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\helpers\configuratorhelper.h -o moc_configuratorhelper.cpp + +moc_logobject.cpp: ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\helpers\logobject.h -o moc_logobject.cpp + +moc_layout.cpp: ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/layout.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\layout.h -o moc_layout.cpp + +moc_logger.cpp: ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/logger.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\logger.h -o moc_logger.cpp + +moc_patternlayout.cpp: ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/patternlayout.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\patternlayout.h -o moc_patternlayout.cpp + +moc_rollingfileappender.cpp: ../third-party/log4qt/src/log4qt/fileappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/rollingfileappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\rollingfileappender.h -o moc_rollingfileappender.cpp + +moc_simplelayout.cpp: ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/simplelayout.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\simplelayout.h -o moc_simplelayout.cpp + +moc_filter.cpp: ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/spi/filter.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\spi\filter.h -o moc_filter.cpp + +moc_ttcclayout.cpp: ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/ttcclayout.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\ttcclayout.h -o moc_ttcclayout.cpp + +moc_writerappender.cpp: ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/writerappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\writerappender.h -o moc_writerappender.cpp + +moc_debugappender.cpp: ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/varia/debugappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\varia\debugappender.h -o moc_debugappender.cpp + +moc_denyallfilter.cpp: ../third-party/log4qt/src/log4qt/spi/filter.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/varia/denyallfilter.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\varia\denyallfilter.h -o moc_denyallfilter.cpp + +moc_nullappender.cpp: ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/varia/nullappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\varia\nullappender.h -o moc_nullappender.cpp + +moc_levelmatchfilter.cpp: ../third-party/log4qt/src/log4qt/spi/filter.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/varia/levelmatchfilter.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\varia\levelmatchfilter.h -o moc_levelmatchfilter.cpp + +moc_levelrangefilter.cpp: ../third-party/log4qt/src/log4qt/spi/filter.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/varia/levelrangefilter.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\varia\levelrangefilter.h -o moc_levelrangefilter.cpp + +moc_listappender.cpp: ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/varia/listappender.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\varia\listappender.h -o moc_listappender.cpp + +moc_stringmatchfilter.cpp: ../third-party/log4qt/src/log4qt/spi/filter.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/varia/stringmatchfilter.h + C:/Qt/2009.05/qt/bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 ..\third-party\log4qt\src\log4qt\varia\stringmatchfilter.h -o moc_stringmatchfilter.cpp + +compiler_rcc_make_all: +compiler_rcc_clean: +compiler_image_collection_make_all: qmake_image_collection.cpp +compiler_image_collection_clean: + -$(DEL_FILE) qmake_image_collection.cpp +compiler_moc_source_make_all: +compiler_moc_source_clean: +compiler_uic_make_all: +compiler_uic_clean: +compiler_yacc_decl_make_all: +compiler_yacc_decl_clean: +compiler_yacc_impl_make_all: +compiler_yacc_impl_clean: +compiler_lex_make_all: +compiler_lex_clean: +compiler_clean: compiler_moc_header_clean + + + +####### Compile + +win32/appenderskeleton.o: ../third-party/log4qt/src/log4qt/appenderskeleton.cpp ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/logmanager.h \ + ../third-party/log4qt/src/log4qt/spi/filter.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\appenderskeleton.o ..\third-party\log4qt\src\log4qt\appenderskeleton.cpp + +win32/basicconfigurator.o: ../third-party/log4qt/src/log4qt/basicconfigurator.cpp ../third-party/log4qt/src/log4qt/basicconfigurator.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/consoleappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/helpers/configuratorhelper.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/logmanager.h \ + ../third-party/log4qt/src/log4qt/patternlayout.h \ + ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/varia/listappender.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\basicconfigurator.o ..\third-party\log4qt\src\log4qt\basicconfigurator.cpp + +win32/consoleappender.o: ../third-party/log4qt/src/log4qt/consoleappender.cpp ../third-party/log4qt/src/log4qt/consoleappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/helpers/optionconverter.h \ + ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\consoleappender.o ..\third-party\log4qt\src\log4qt\consoleappender.cpp + +win32/dailyrollingfileappender.o: ../third-party/log4qt/src/log4qt/dailyrollingfileappender.cpp ../third-party/log4qt/src/log4qt/dailyrollingfileappender.h \ + ../third-party/log4qt/src/log4qt/fileappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/helpers/datetime.h \ + ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\dailyrollingfileappender.o ..\third-party\log4qt\src\log4qt\dailyrollingfileappender.cpp + +win32/fileappender.o: ../third-party/log4qt/src/log4qt/fileappender.cpp ../third-party/log4qt/src/log4qt/fileappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\fileappender.o ..\third-party\log4qt\src\log4qt\fileappender.cpp + +win32/classlogger.o: ../third-party/log4qt/src/log4qt/helpers/classlogger.cpp ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/logmanager.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\classlogger.o ..\third-party\log4qt\src\log4qt\helpers\classlogger.cpp + +win32/configuratorhelper.o: ../third-party/log4qt/src/log4qt/helpers/configuratorhelper.cpp ../third-party/log4qt/src/log4qt/helpers/configuratorhelper.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/helpers/initialisationhelper.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\configuratorhelper.o ..\third-party\log4qt\src\log4qt\helpers\configuratorhelper.cpp + +win32/datetime.o: ../third-party/log4qt/src/log4qt/helpers/datetime.cpp ../third-party/log4qt/src/log4qt/helpers/datetime.h \ + ../third-party/log4qt/src/log4qt/helpers/initialisationhelper.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\datetime.o ..\third-party\log4qt\src\log4qt\helpers\datetime.cpp + +win32/factory.o: ../third-party/log4qt/src/log4qt/helpers/factory.cpp ../third-party/log4qt/src/log4qt/helpers/factory.h \ + ../third-party/log4qt/src/log4qt/consoleappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/dailyrollingfileappender.h \ + ../third-party/log4qt/src/log4qt/fileappender.h \ + ../third-party/log4qt/src/log4qt/helpers/initialisationhelper.h \ + ../third-party/log4qt/src/log4qt/helpers/optionconverter.h \ + ../third-party/log4qt/src/log4qt/patternlayout.h \ + ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/rollingfileappender.h \ + ../third-party/log4qt/src/log4qt/simplelayout.h \ + ../third-party/log4qt/src/log4qt/ttcclayout.h \ + ../third-party/log4qt/src/log4qt/varia/debugappender.h \ + ../third-party/log4qt/src/log4qt/varia/denyallfilter.h \ + ../third-party/log4qt/src/log4qt/spi/filter.h \ + ../third-party/log4qt/src/log4qt/varia/levelmatchfilter.h \ + ../third-party/log4qt/src/log4qt/varia/levelrangefilter.h \ + ../third-party/log4qt/src/log4qt/varia/listappender.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/varia/nullappender.h \ + ../third-party/log4qt/src/log4qt/varia/stringmatchfilter.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\factory.o ..\third-party\log4qt\src\log4qt\helpers\factory.cpp + +win32/initialisationhelper.o: ../third-party/log4qt/src/log4qt/helpers/initialisationhelper.cpp ../third-party/log4qt/src/log4qt/helpers/initialisationhelper.h \ + ../third-party/log4qt/src/log4qt/helpers/datetime.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\initialisationhelper.o ..\third-party\log4qt\src\log4qt\helpers\initialisationhelper.cpp + +win32/logerror.o: ../third-party/log4qt/src/log4qt/helpers/logerror.cpp ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/initialisationhelper.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\logerror.o ..\third-party\log4qt\src\log4qt\helpers\logerror.cpp + +win32/logobject.o: ../third-party/log4qt/src/log4qt/helpers/logobject.cpp ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\logobject.o ..\third-party\log4qt\src\log4qt\helpers\logobject.cpp + +win32/logobjectptr.o: ../third-party/log4qt/src/log4qt/helpers/logobjectptr.cpp ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\logobjectptr.o ..\third-party\log4qt\src\log4qt\helpers\logobjectptr.cpp + +win32/optionconverter.o: ../third-party/log4qt/src/log4qt/helpers/optionconverter.cpp ../third-party/log4qt/src/log4qt/helpers/optionconverter.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/properties.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/consoleappender.h \ + ../third-party/log4qt/src/log4qt/writerappender.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\optionconverter.o ..\third-party\log4qt\src\log4qt\helpers\optionconverter.cpp + +win32/patternformatter.o: ../third-party/log4qt/src/log4qt/helpers/patternformatter.cpp ../third-party/log4qt/src/log4qt/helpers/patternformatter.h \ + ../third-party/log4qt/src/log4qt/helpers/datetime.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\patternformatter.o ..\third-party\log4qt\src\log4qt\helpers\patternformatter.cpp + +win32/properties.o: ../third-party/log4qt/src/log4qt/helpers/properties.cpp ../third-party/log4qt/src/log4qt/helpers/properties.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\properties.o ..\third-party\log4qt\src\log4qt\helpers\properties.cpp + +win32/hierarchy.o: ../third-party/log4qt/src/log4qt/hierarchy.cpp ../third-party/log4qt/src/log4qt/hierarchy.h \ + ../third-party/log4qt/src/log4qt/loggerrepository.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\hierarchy.o ..\third-party\log4qt\src\log4qt\hierarchy.cpp + +win32/layout.o: ../third-party/log4qt/src/log4qt/layout.cpp ../third-party/log4qt/src/log4qt/layout.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/logmanager.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\layout.o ..\third-party\log4qt\src\log4qt\layout.cpp + +win32/level.o: ../third-party/log4qt/src/log4qt/level.cpp ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\level.o ..\third-party\log4qt\src\log4qt\level.cpp + +win32/log4qt.o: ../third-party/log4qt/src/log4qt/log4qt.cpp ../third-party/log4qt/src/log4qt/log4qt.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\log4qt.o ..\third-party\log4qt\src\log4qt\log4qt.cpp + +win32/logger.o: ../third-party/log4qt/src/log4qt/logger.cpp ../third-party/log4qt/src/log4qt/logger.h \ + ../third-party/log4qt/src/log4qt/helpers/logerror.h \ + ../third-party/log4qt/src/log4qt/helpers/classlogger.h \ + ../third-party/log4qt/src/log4qt/helpers/logobjectptr.h \ + ../third-party/log4qt/src/log4qt/helpers/logobject.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/appenderskeleton.h \ + ../third-party/log4qt/src/log4qt/appender.h \ + ../third-party/log4qt/src/log4qt/varia/listappender.h \ + ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/loggerrepository.h \ + ../third-party/log4qt/src/log4qt/logmanager.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\logger.o ..\third-party\log4qt\src\log4qt\logger.cpp + +win32/loggerrepository.o: ../third-party/log4qt/src/log4qt/loggerrepository.cpp ../third-party/log4qt/src/log4qt/loggerrepository.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o win32\loggerrepository.o ..\third-party\log4qt\src\log4qt\loggerrepository.cpp + +win32/loggingevent.o: ../third-party/log4qt/src/log4qt/loggingevent.cpp ../third-party/log4qt/src/log4qt/loggingevent.h \ + ../third-party/log4qt/src/log4qt/level.h \ + ../third-party/log4qt/src/log4qt/log4qt.h \ + ../third-party/log4qt/src/log4qt/helpers/datetime.h \ + ../third-party/log4qt/src/log4qt/helpers/initialisationhelper.h \ + ... [truncated message content] |
From: Nikolay M. <nik...@gm...> - 2011-05-29 13:12:32
|
Доброго времени суток. > -О том как можно подсовывать ОС радел как устройство (регистрация драйвера > и тому подобное). Хороший вопрос. Первым делом хочу сказать, чтобы связать наш драйвер с устройством (псевдо-устройством) необходимо создать ноду, из командной строки это выглядит так: mknode /dev/hfs0 hfs0 o+rw o-x g+rw g-x a+rw a-x Далее необходимо посмотреть как же кронос различает когда ему работать с той или иной нодой... Давайте попробуем зайти с тыла. Если зайти в реализацию mknode.m, то можно увидеть, что это всего лишь навсего обертка над вызовом библиотеки BIO, одноименной процедуры. По этому открываем BIO.m и ищем процедуру mknode, видем, что она вызывает процедуру fmknode заходим в нее и пытаемся осознать что там написано.... Открываем соответствующий путь (процедура throught()), путь приходит с аргументов команды mknode. Далее видем некоторый набор вызовов из библиотеки osFiles, таких как make_node, setattr, link и close. Теперь ясно как создать динамическое количество нод (/dev/hfs0, ,..., /dev/hfsN)? Нужно воспользоваться готовой процедурой библиотеки BIO. Теперь необходимо покурить на счет задачи распознавания той или иной точки монтирования при команде mou. Открываем mou.m -> заходим в процедуру mount и видим, что это опять используется вызовы BIO библиотеки а именно bio.mount и bio.unmount. Делать нечего отправляемся туда -> процедура fmount и нас здесь должна заинтересовать строка 916: res:=fs.mount(sub, name, dev^, file, label, info. label, ro); Используется процедура библиотеки osFiles идем вначале в osFiles.d (заголовочный файл) видим набор процедур и среди них есть и наша PROCEDURE mount (dir: FILE; name: ARRAY OF CHAR; dev: FILE; fsname: ARRAY OF CHAR; info: ARRAY OF CHAR; VAR lab: ARRAY OF CHAR; ro: BOOLEAN): INTEGER; Далее нас не интересует osFiles.m, так как в нем реализация процедуры заканчивается вызовом конкретной реализацией драйвера: dir^.fsid^.mount(dir,name,dev,fsname,info,lab,ro) Умолчательная файловая система кронос имеет реализацию в модуле osFileSystem Собственно открываем заголовочный файл osFileSystem и видим абстрактную процедуру MOUNT = PROCEDURE ( _FILE , ARRAY OF CHAR , _FILE , ARRAY OF CHAR , ARRAY OF CHAR , VAR ARRAY OF CHAR , BOOLEAN ): INTEGER; Теперь время экспериментов для вас ;) Необходимо проследить в голове, либо с помощь логов, что и как вам следует изменить в реализации windows драйвера. Реализация windows файловой системы находится в модуле vmHostFS. Реализация псевдо-драйвера находится в HFS модуле. Приведу еще здесь его точку входа: BEGIN define('hfs0',0); --define('hfs1',1); С помощью этого я хотел сделать еще одну связь с нодой --define('hfs2',2); env.become_ipr; os.suspend(os.active(),-1) END HFS. > -Ну и возможное реализации конфиг файла, если таковой > понадобится(рано или поздно всё-равно понадобится). Конфиг - хорошая идея, так как нам не нужны некоторые разделы в виндовс, такие как A:, D:, но зашивать в конфиге связи к нодам не стоит. Там можно лишь отфильтровать существующие разделы виндовс. Что-нибудь проясняется в какую сторону нужно копать? PS: Давайте выкроим время и встретимся для уточнения понимания? -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer On Saturday 28 May 2011 02:43:34 Курагин Дмитрий wrote: > Рассматривали мною предложенные варианты монтирования разделов Windows > через конфиг, т.к. сейчас у кроноса нет никакого конфиг файла необходимо > его создать. Писать отдельный язык для конфигов думаю нет смысла (Просто > на многих форумах предлагают), то можно юзать XML(Но это отдельная песня). > Тогда возникает вопрос в том как подсунть определнный раздел, под > определнным устойством, то бишь сама работа с системой, и как самой ОС > сказать, что у нас есть тот или иной раздел. Мы создаём конфиг для > эмулятора, но как эмулятор скажет о новом разделе системе мне вообще не > понятно. У нас есть константа которая тянется по всем классам связанным с > NTFS. В ней смысл отпадает вовсе, потому что нам необходимо взаимодействие > системы именно с устройством (Это связано с переносом кроноса на стороннюю > файловую систему). Меня интересуют 2 вопроса: > > -О том как можно подсовывать ОС радел как устройство (регистрация драйвера > и тому подобное). -Ну и возможное реализации конфиг файла, если таковой > понадобится(рано или поздно всё-равно понадобится). > > Меня интересую возможные пути решения данных проблем и просто комметарии по > поводу мною сказанного. > > 28.05.2011, 00:18, "Nikolay Moskvin" <nik...@gm...>: > > Привет, студентам. > > > > Хочу узнать как у вас дела? > > Есть ли проблемы или вопросы? > > > > Давайте обсудим монтирование Windows-устройств в Кронос. > > > > Цитирую Андрея Хапугина: > >> А то есть по №3 соображение, старое, но не помню, с тобой это обсждал > >> или > > > > нет. > > > >> Суть идеи: с точки зрения пользования красиво выглядит монтирование > >> диска > > > > "X:" как-нибудь так: > >> mou /mnt /dev/host-drive-X > >> То есть если есть возможность параметр - "имя тома в винде" спряать в > >> ноду > > > > на /dev (причем не в его имя, а внутрь самого нода), то все очень красиво > > для пользователя и администратора получается. > > > >> Я не помню что там в нодах и как, надо посмотреть, но смутно кажется, > >> что > > > > ничего невероятного. > > > > Расскажите свои идеи на этот счет. > > > > Жду от вас ответа. > > > > -- > > Best regards, Nikolay Moskvin > > Certified Java SE 6 Programmer > > C/C++ Linux developer > > ------------------------------------------------------------------------- > > ----- vRanger cuts backup time in half-while increasing security. > > With the market-leading solution for virtual backup and recovery, > > you get blazing-fast, flexible, and affordable data protection. > > Download your free trial now. > > http://p.sf.net/sfu/quest-d2dcopy1 > > _______________________________________________ > > Kronos2-developer mailing list > > Kro...@li... > > https://lists.sourceforge.net/lists/listinfo/kronos2-developer > > --------------------------------------------------------------------------- > --- vRanger cuts backup time in half-while increasing security. > With the market-leading solution for virtual backup and recovery, > you get blazing-fast, flexible, and affordable data protection. > Download your free trial now. > http://p.sf.net/sfu/quest-d2dcopy1 > _______________________________________________ > Kronos2-developer mailing list > Kro...@li... > https://lists.sourceforge.net/lists/listinfo/kronos2-developer |
From: Курагин Д. <dku...@ya...> - 2011-05-27 19:43:43
|
Рассматривали мною предложенные варианты монтирования разделов Windows через конфиг, т.к. сейчас у кроноса нет никакого конфиг файла необходимо его создать. Писать отдельный язык для конфигов думаю нет смысла (Просто на многих форумах предлагают), то можно юзать XML(Но это отдельная песня). Тогда возникает вопрос в том как подсунть определнный раздел, под определнным устойством, то бишь сама работа с системой, и как самой ОС сказать, что у нас есть тот или иной раздел. Мы создаём конфиг для эмулятора, но как эмулятор скажет о новом разделе системе мне вообще не понятно. У нас есть константа которая тянется по всем классам связанным с NTFS. В ней смысл отпадает вовсе, потому что нам необходимо взаимодействие системы именно с устройством (Это связано с переносом кроноса на стороннюю файловую систему). Меня интересуют 2 вопроса: -О том как можно подсовывать ОС радел как устройство (регистрация драйвера и тому подобное). -Ну и возможное реализации конфиг файла, если таковой понадобится(рано или поздно всё-равно понадобится). Меня интересую возможные пути решения данных проблем и просто комметарии по поводу мною сказанного. 28.05.2011, 00:18, "Nikolay Moskvin" <nik...@gm...>: > Привет, студентам. > > Хочу узнать как у вас дела? > Есть ли проблемы или вопросы? > > Давайте обсудим монтирование Windows-устройств в Кронос. > > Цитирую Андрея Хапугина: > >> А то есть по №3 соображение, старое, но не помню, с тобой это обсждал или > > нет. > >> Суть идеи: с точки зрения пользования красиво выглядит монтирование диска > > "X:" как-нибудь так: > >> mou /mnt /dev/host-drive-X >> То есть если есть возможность параметр - "имя тома в винде" спряать в ноду > > на /dev (причем не в его имя, а внутрь самого нода), то все очень красиво для > пользователя и администратора получается. > >> Я не помню что там в нодах и как, надо посмотреть, но смутно кажется, что > > ничего невероятного. > > Расскажите свои идеи на этот счет. > > Жду от вас ответа. > > -- > Best regards, Nikolay Moskvin > Certified Java SE 6 Programmer > C/C++ Linux developer > ------------------------------------------------------------------------------ > vRanger cuts backup time in half-while increasing security. > With the market-leading solution for virtual backup and recovery, > you get blazing-fast, flexible, and affordable data protection. > Download your free trial now. > http://p.sf.net/sfu/quest-d2dcopy1 > _______________________________________________ > Kronos2-developer mailing list > Kro...@li... > https://lists.sourceforge.net/lists/listinfo/kronos2-developer |
From: Nikolay M. <nik...@gm...> - 2011-05-27 17:17:34
|
Привет, студентам. Хочу узнать как у вас дела? Есть ли проблемы или вопросы? Давайте обсудим монтирование Windows-устройств в Кронос. Цитирую Андрея Хапугина: > А то есть по №3 соображение, старое, но не помню, с тобой это обсждал или нет. > Суть идеи: с точки зрения пользования красиво выглядит монтирование диска "X:" как-нибудь так: > mou /mnt /dev/host-drive-X > То есть если есть возможность параметр - "имя тома в винде" спряать в ноду на /dev (причем не в его имя, а внутрь самого нода), то все очень красиво для пользователя и администратора получается. > Я не помню что там в нодах и как, надо посмотреть, но смутно кажется, что ничего невероятного. Расскажите свои идеи на этот счет. Жду от вас ответа. -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer |
From: Nikolay M. <nik...@gm...> - 2011-04-24 17:39:12
|
Привет, Максим. Реализация библиотеки BIO находится в директории excelsior/sys/lib/BIO.m Строчка "IMPORT bio: BIO;" как раз и импортит её. А смущает тебя, что процедура также называется, ну это нормально. bio.mount обращается к процедуре: PROCEDURE mount (path,dev,info: ARRAY OF CHAR; VAR lab: ARRAY OF CHAR; ro: BOOLEAN); которая в свою очередь вызывает fmount в которой нас интересуют две строки это 913 и 916. В первой происходит открытие необходимого нам узла (нода) а во второй происходит вызов процедуры монтирования модуля osFiles. Если посмотреть в osFiles.m (excelsior/sys/os), то процедура имеет простой вид: PROCEDURE mount (dir: FILE; VAL name: ARRAY OF CHAR; dev: FILE; VAL fsname: ARRAY OF CHAR; VAL info: ARRAY OF CHAR; VAR lab: ARRAY OF CHAR; ro: BOOLEAN): INTEGER; BEGIN IF (dir=NIL) OR (dir^.fmagic#MAGIC) THEN RETURN err.bad_desc END; RETURN dir^.fsid^.mount(dir,name,dev,fsname,info,lab,ro) END mount; Тут и происходит вызов драйвера по средствам вызова dir^.fsid^.mount() Так как dir это FILE необходимо найти где определен FILE тип. для понимания тебе потребуется просмотреть в модуль osFileSystem: в osFileSystem.m:342 определен TYPE FILE для нативной файловой системы Excelsior. В реализации модуля vmHostFS (excelsior/home/moskvin) ты также можешь найти тип FILE. Абстрактный же тип имеет название _FILE и располагается в osFileSystem.d:12 Теперь понятно в каком направлении двигаться? Пиши, если какие-то конструкции не ясны. -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer On Sunday 24 April 2011 22:02:49 you wrote: > Здравствуй, Николай! > > Приношу извинения за своё "исчезновение".� > > Не могу понять, что за bio импортируется в файл > \src\excelsior\sys\util\major\mou.m, как он организован и где описан.�И в > этом файле, функция mount использует bio.mount(dir,dev... �), что меня > смущает.� Неужели bio.mount обращается к этой же функции? Тогда получается > нечто странное.. > > Прощу о помощи в этом вопросе! |
From: Nikolay M. <nik...@gm...> - 2011-03-29 18:55:47
|
Приветствую, всех. Высылаю тз для Максима и Димы. -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer |
From: Курагин Д. <dku...@ya...> - 2011-03-28 16:15:33
|
<div>Я согласен с темой.</div> |
From: Nikolay M. <nik...@gm...> - 2011-03-28 04:12:45
|
Доброго времени суток, студенты. Предлагаю следующие темы курсовых на текущий семестр: для Димы: Функциональное расширение драйвера vmHostFS виртуальной машины Кронос (реализация прав доступа) для Максима: Функциональное расширение драйвера vmHostFS виртуальной машины Кронос (реализация поддержки логических дисков) Есть возражения, предложения? Если вы согласны с такими формулировками, то напишите о согласии, после чего я напишу для вас тех задания. -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer |
From: Nikolay M. <nik...@gm...> - 2011-03-23 03:52:07
|
Леопольд, извиняюсь за "Леонида" ;) А я сижу под Linux и запускаю тоже под VirtualBox. Подумать о портировании на jvm неплохая затея.... On Wednesday 23 March 2011 03:05:22 you wrote: > Очень приятно Николай. > Я вообще то не Леонид а действительно Леопольд. > Привет Максим и Дмитрий. > Чем могу помогу но я кстати на Mac (Windows тоже есть но в основном внутри > VirtualBox). > Если интересно посмотреть чем я после Кроноса занимался > то все здесь: > http://www.linkedin.com/in/leok7v > Максим, Дмитрй не стесьняйтесь разговаривать с нами. > Мы хоть и старые но добрые - не обидем. > > А еще хорошо бы подумать не "портнуть" ли Кронос на Java byte code into JVM > (это в будущем). > Я иногда буду по английски но если не понятно переспрашивайте. Я сам свой > English иногда с трудом разбираю. > > Лео > > > 2011/3/22 Nikolay Moskvin <nik...@gm...> > > > Всем привет. > > > > Хочу всем представить студентов: Курагина Дмитрия и Бельского Максима. > > Они в данный момент знакомятся с архитектурой Кронос. > > > > А Диме с Максимом представляю отцов Кроноса: Андрея Хапугина и Леонида > > Кузнецова а также Александра Локтионова. > > > > Я, Николай Москвин, сейчас работаю программистом в небольшой конторке в > > мобильном отделе (Blackberry и Android платформы). Кронос действительно > > хорошая платформа, есть некоторые моменты, которые устарели (о которых > > говорит > > Леопольд и Андрей), но которые собственно мы и будем устранять. Кронос > > действительно проще чем Linux в освоении. > > > > В данный момент я осознал мою ошибку использования Qt для виртуальной > > машины > > Кронос (сейчас используется для операций с файлами и ведения журнала > > событий), > > которую в ближайшее время мы с ребятами вычистим. Сборку проекта хочется > > перевести на cmake сборщик, сейчас используется qmake. > > > > В общем будем работать ;) > > > > > > -- > > Best regards, Nikolay Moskvin > > Certified Java SE 6 Programmer > > C/C++ Linux developer > > > > ------------------------------------------------------------------------- > > ----- Enable your software for Intel(R) Active Management Technology to > > meet the growing manageability and security demands of your customers. > > Businesses are taking advantage of Intel(R) vPro (TM) technology - will > > your software be a part of the solution? Download the Intel(R) > > Manageability Checker today! http://p.sf.net/sfu/intel-dev2devmar > > _______________________________________________ > > Kronos2-developer mailing list > > Kro...@li... > > https://lists.sourceforge.net/lists/listinfo/kronos2-developer |
From: Leo K. <leo...@gm...> - 2011-03-22 21:05:29
|
Очень приятно Николай. Я вообще то не Леонид а действительно Леопольд. Привет Максим и Дмитрий. Чем могу помогу но я кстати на Mac (Windows тоже есть но в основном внутри VirtualBox). Если интересно посмотреть чем я после Кроноса занимался то все здесь: http://www.linkedin.com/in/leok7v Максим, Дмитрй не стесьняйтесь разговаривать с нами. Мы хоть и старые но добрые - не обидем. А еще хорошо бы подумать не "портнуть" ли Кронос на Java byte code into JVM (это в будущем). Я иногда буду по английски но если не понятно переспрашивайте. Я сам свой English иногда с трудом разбираю. Лео 2011/3/22 Nikolay Moskvin <nik...@gm...> > Всем привет. > > Хочу всем представить студентов: Курагина Дмитрия и Бельского Максима. > Они в данный момент знакомятся с архитектурой Кронос. > > А Диме с Максимом представляю отцов Кроноса: Андрея Хапугина и Леонида > Кузнецова а также Александра Локтионова. > > Я, Николай Москвин, сейчас работаю программистом в небольшой конторке в > мобильном отделе (Blackberry и Android платформы). Кронос действительно > хорошая платформа, есть некоторые моменты, которые устарели (о которых > говорит > Леопольд и Андрей), но которые собственно мы и будем устранять. Кронос > действительно проще чем Linux в освоении. > > В данный момент я осознал мою ошибку использования Qt для виртуальной > машины > Кронос (сейчас используется для операций с файлами и ведения журнала > событий), > которую в ближайшее время мы с ребятами вычистим. Сборку проекта хочется > перевести на cmake сборщик, сейчас используется qmake. > > В общем будем работать ;) > > > -- > Best regards, Nikolay Moskvin > Certified Java SE 6 Programmer > C/C++ Linux developer > > ------------------------------------------------------------------------------ > Enable your software for Intel(R) Active Management Technology to meet the > growing manageability and security demands of your customers. Businesses > are taking advantage of Intel(R) vPro (TM) technology - will your software > be a part of the solution? Download the Intel(R) Manageability Checker > today! http://p.sf.net/sfu/intel-dev2devmar > _______________________________________________ > Kronos2-developer mailing list > Kro...@li... > https://lists.sourceforge.net/lists/listinfo/kronos2-developer > |
From: Nikolay M. <nik...@gm...> - 2011-03-22 17:16:12
|
Всем привет. Хочу всем представить студентов: Курагина Дмитрия и Бельского Максима. Они в данный момент знакомятся с архитектурой Кронос. А Диме с Максимом представляю отцов Кроноса: Андрея Хапугина и Леонида Кузнецова а также Александра Локтионова. Я, Николай Москвин, сейчас работаю программистом в небольшой конторке в мобильном отделе (Blackberry и Android платформы). Кронос действительно хорошая платформа, есть некоторые моменты, которые устарели (о которых говорит Леопольд и Андрей), но которые собственно мы и будем устранять. Кронос действительно проще чем Linux в освоении. В данный момент я осознал мою ошибку использования Qt для виртуальной машины Кронос (сейчас используется для операций с файлами и ведения журнала событий), которую в ближайшее время мы с ребятами вычистим. Сборку проекта хочется перевести на cmake сборщик, сейчас используется qmake. В общем будем работать ;) -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer |
From: Nikolay M. <nik...@gm...> - 2011-03-18 15:18:16
|
Всем привет. Как Вы знаете для контроля версии для Кронос проекта, мы используем Git. Небольшая справка о Git: 1. Клонирование Для того, чтобы склонироваться с правами на запись необходимо пройти по ссылке https://sourceforge.net/projects/kronos2/develop и скопировать вторую строчку, у меня она выглядит так: git clone ssh://mo...@kr.../gitroot/kronos2/kronos2 и выполнить её у себя в терминале. 2. Синхронизация кода Для того, чтобы забрать последнюю стабильную версию с сервера и синхронизировать со своей необходимо выполнить команду: git pull origin master 3. Заливка нового кода Для заливки на сервер ваших изменений необходимо сделать следующие команды: Чтобы убедиться в том, что вы добавили все файлы, которые вы изменяли необходимо сделать: git status После этого если тот файл (допустим он называется new.txt), который вы хотите залить помечен как untracked, то делаем: git add new.txt После этого необходимо зафиксировать ваш код командой: git commit -a -m="Изменения касающиеся Энтой! задачи" И после того как вы убедились в том, что вы ничего не забыли добавить можно код смело отправлять на сервер командой: git push origin HEAD:testing Переключение между ветками В git самая лучшая поддержка ветвлений (бранчивания). Рассмотрим пример: Предположим, что у меня перестал работать DriverX, и я решил вернуться в предыдущую версию, так как я уверен, что в предыдущей версии все работало, для этого необходимо в начале найти как называется предыдущая фиксация: git log Вывелось следующее: commit c3d952f96be71db61e65bf02c13b2e75417b961e Author: moskvin <mo...@fr...> Date: Fri Mar 18 19:42:24 2011 +0600 =Changes for DriverZ commit c0cc951f0f76fe37c04cb76bbdda5ae1ec7f8422 Author: moskvin <mo...@fr...> Date: Thu Mar 10 01:20:09 2011 +0600 =Changes for DriverX. Возвращаемся, с помощью команды: git checkout c0cc951f0f76fe37c04cb76bbdda5ae1ec7f8422 -b old Если набрать git branch, то можно заметить, что по мимо ветки master появилась ветка old. После того как выяснилось в чем была проблема возвращаемся в master: git checkout master Слияние веток Чтобы слить текущую ветку (master) с какой-нибудь другой (testing) необходимо сделать: git merge testing Соглашение Давайте примем за соглашение следующие вещи: 1) В git заливаемся в ветку testing (как это делать можно увидеть повыше) 2) Ветка master - это стабильная ветка, в которую будем заливать готовые решения той или иной задачи. 3) В проект не в коем случае не заливать бинарные (объектные) файлы. Следите, чтобы при добавлении (git add) не добавилась директория со сборкой. Исключением являются жесткие для Кронос-машины, которые находятся в директории src/disks. 4) Стараемся как можно чаще делать фиксацию кода git commit (раз в день). Немного реже git pull/git push (хотя бы раз в неделю, либо после email- нотификации) -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer |
From: Nikolay M. <mo...@us...> - 2011-03-18 14:20:34
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Virtual mashine for Kronos". The branch, master has been updated via b470add54ee5a85a0c26a8d50eced80046163eb8 (commit) from 5a759a4ac6480f8a139a9254cc78e99caa20c563 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit b470add54ee5a85a0c26a8d50eced80046163eb8 Author: moskvin <mo...@fr...> Date: Fri Mar 18 20:20:00 2011 +0600 =Minor changes for doc diff --git a/src/vm/README b/src/vm/README index abdd9ea..630f614 100644 --- a/src/vm/README +++ b/src/vm/README @@ -2,3 +2,14 @@ ## Virtual mashine for Kronos ############################################################################ +############################################################################ +# Requirements +############################################################################ + +For build the Kronos project necessary following: + +1) Operation system Windows XP and higher +2) Qt sdk 4.6.2 +3) GNU Compiler Collection: MinGW (only with g++ version 3.4.5) + +# TBD: @Nick added full README instruction ----------------------------------------------------------------------- Summary of changes: src/vm/README | 11 +++++++++++ 1 files changed, 11 insertions(+), 0 deletions(-) hooks/post-receive -- Virtual mashine for Kronos |
From: Nikolay M. <nik...@gm...> - 2011-03-18 12:36:16
|
Доброго времени суток, Дима и Максим. > 3. Монтирование всех дисков в КВМ. В текущей версии драйвера можно монтировать > только один диск и при том только диск C: > > 4. Реализация "заткнутых" операций, типа получения атрибутов, битов прав > доступа и т.п. Эти операции было решено не реализовывать в текущей версии > драйвера. Вот список операций, которые не были реализованы: > getattr / setattr > state > usrlock / usrunlock > flush > cut > extend > В результате сегодняшней встречи (2011-03-18) решено, что Максим займется задачей (3) а Дима задачей (4). Есть возражения? Если нет, то жду от вас на следующей недели информации о вашем прогрессе. Если вдруг где-то не получается долгое время разобраться, то сообщайте об этом. -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer |
From: Nikolay M. <nik...@gm...> - 2011-03-17 20:00:35
|
Доброго времени суток, Кронос-разработчики. Первый список того, что мы должны сделать: 1. Убрать зависимость от Qt4. Почему? Он тяжеловат и не гарантирует, что следующая версия соберет наш проект. Задача заключается в том, чтоб найти замену log4qt функционалу и написать еще одну реализацию класса NTFS.cpp. Qt используется сейчас для реализации операций над файлами и ведению журнала событий а также были попытки написания юнит-тестов с помощью qt. 2. Перенести проект из стандартного Qt формата (.pro) в cmake проект (http://www.cmake.org/). Вот тут написано про то, как можно cmake подружить практически с любой IDE http://www.prog.org.ru/wiki/index.php?title=%D0%98%D0%BD%D1%82%D0%B5%D0%B3%D1%80%D0%B0%D1%86%D0%B8%D1%8F_CMake_%D1%81_%D1%80%D0%B0%D0%B7%D0%BB%D0%B8%D1%87%D0%BD%D1%8B%D0%BC%D0%B8_IDE. Это неплохой сборщик. Попытки перелесть на него были, о чем свидетельствует файл CMakeLists.txt, но не был доведен до конца. 3. Монтирование всех дисков в КВМ. В текущей версии драйвера можно монтировать только один диск и при том только диск C: 4. Реализация "заткнутых" операций, типа получения атрибутов, битов прав доступа и т.п. Эти операции было решено не реализовывать в текущей версии драйвера. Вот список операций, которые не были реализованы: getattr / setattr state usrlock / usrunlock flush cut extend 5. Сделать возможность загрузиться прямо из файла виндовой файловой системы. Это задачи, которые необходимо распределить в Пятницу 18.03.2011 -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer |
From: Nikolay M. <nik...@gm...> - 2011-03-17 16:36:39
|
Доброго времени суток, Кронос-разработчики. Так как у вас получилось собрать виртуальную машину, то давайте двигаться дальше. Вам необходимо сделать: 1) Запустить драйвер vmHostFS. Как это делать можно найти у меня в записке. 2) Разобраться как пересобирается Кронос и прощупать как осуществляется общение между виртуальной машиной, которая написана на C++ и Кронос, у которого приоритетный язык Модула (немного расширенная версия Модулы-2) 3) Разобраться с механизмом кодовых процедур в Кронос. У меня использовалось несколько таких процедур в коде драйвера. 4) Зарегистрируйтесь на sourceforge.net, и вышлите мне логины. Завтра предлагаю встретиться и обсудить темы курсовых работ. Я завтра буду в ВКИ преподавать, с 9:00-12:00 (302 к). Сообщите о том во сколько мы сможем встретиться? -- Best regards, Nikolay Moskvin Certified Java SE 6 Programmer C/C++ Linux developer On Thursday 17 March 2011 15:22:56 you wrote: > Добрый день! Проект собран и запущен! |
From: Nikolay M. <nik...@gm...> - 2011-03-16 18:57:13
|
Доброго времени суток, ребята! На всякий случай выкладываю Qt 4.6.2 http://narod.ru/disk/7669271001/4.6.2.zip.html У кого получилось собрать??? Можно скрееншоты неудачных сборок сделать и приложить к письму. Жду от вас отчетов, и приступим к следующему заданию... -- Best regards, Nikolay Moskvin |