]> granicus.if.org Git - icinga2/commitdiff
Fixed compilation on Windows.
authorGunnar Beutner <gunnar@beutner.name>
Tue, 10 Jul 2012 13:44:59 +0000 (15:44 +0200)
committerGunnar Beutner <gunnar@beutner.name>
Tue, 10 Jul 2012 13:44:59 +0000 (15:44 +0200)
base/base.vcxproj
base/base.vcxproj.filters
base/streamlogger.h
base/sysloglogger.cpp
base/sysloglogger.h
icinga/icingaapplication.cpp

index 26fbe3feb29fe5186e09f09267c5b55b709dc960..bc3bbccb81f6025fa4d67e670f7d9f9e2f7db8fd 100644 (file)
     <ClCompile Include="event.cpp" />
     <ClCompile Include="exception.cpp" />
     <ClCompile Include="fifo.cpp" />
+    <ClCompile Include="logger.cpp" />
     <ClCompile Include="object.cpp" />
     <ClCompile Include="objectmap.cpp" />
     <ClCompile Include="objectset.cpp" />
     <ClCompile Include="ringbuffer.cpp" />
     <ClCompile Include="socket.cpp" />
+    <ClCompile Include="streamlogger.cpp" />
+    <ClCompile Include="sysloglogger.cpp" />
     <ClCompile Include="tcpclient.cpp" />
     <ClCompile Include="tcpserver.cpp" />
     <ClCompile Include="tcpsocket.cpp" />
@@ -40,6 +43,7 @@
     <ClInclude Include="configobject.h" />
     <ClInclude Include="dictionary.h" />
     <ClInclude Include="event.h" />
+    <ClInclude Include="logger.h" />
     <ClInclude Include="objectmap.h" />
     <ClInclude Include="objectset.h" />
     <ClInclude Include="exception.h" />
@@ -48,6 +52,8 @@
     <ClInclude Include="object.h" />
     <ClInclude Include="ringbuffer.h" />
     <ClInclude Include="socket.h" />
+    <ClInclude Include="streamlogger.h" />
+    <ClInclude Include="sysloglogger.h" />
     <ClInclude Include="tcpclient.h" />
     <ClInclude Include="tcpserver.h" />
     <ClInclude Include="tcpsocket.h" />
index f27667d74e282634660ce102e0052c071dfdab95..47b1ba4fde5af6592bba1080b5324dc9c70315f9 100644 (file)
     <ClCompile Include="win32.cpp">
       <Filter>Quelldateien</Filter>
     </ClCompile>
+    <ClCompile Include="logger.cpp">
+      <Filter>Quelldateien</Filter>
+    </ClCompile>
+    <ClCompile Include="streamlogger.cpp">
+      <Filter>Quelldateien</Filter>
+    </ClCompile>
+    <ClCompile Include="sysloglogger.cpp">
+      <Filter>Quelldateien</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="application.h">
     <ClInclude Include="variant.h">
       <Filter>Headerdateien</Filter>
     </ClInclude>
+    <ClInclude Include="logger.h">
+      <Filter>Headerdateien</Filter>
+    </ClInclude>
+    <ClInclude Include="streamlogger.h">
+      <Filter>Headerdateien</Filter>
+    </ClInclude>
+    <ClInclude Include="sysloglogger.h">
+      <Filter>Headerdateien</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <Filter Include="Headerdateien">
index 8da1a6bca94cf4aceb2046627f71e48fd7e8dfa6..9a90538c2e9c8214a14643c502907cdc15c8f9fc 100644 (file)
@@ -7,7 +7,7 @@ namespace icinga
 /**
  * A logger that logs to stdout.
  */
-class StreamLogger : public Logger
+class I2_BASE_API StreamLogger : public Logger
 {
 public:
        typedef shared_ptr<StreamLogger> Ptr;
index 8b9e79c59a22ba4f533228c98483927d89324524..06dc1973310bd105b53e13925db2c8e33c8d488a 100644 (file)
@@ -1,3 +1,4 @@
+#ifndef _WIN32
 #include "i2-base.h"
 
 using namespace icinga;
@@ -40,3 +41,4 @@ void SyslogLogger::ProcessLogEntry(const LogEntry& entry)
 
        syslog(severity | LOG_USER, "%s", entry.Message.c_str());
 }
+#endif /* _WIN32 */
\ No newline at end of file
index 0c9b648212b146bb526ca01edf6911d1ddd2c04d..5433ae8d41d0ec6a165ddf023189bfba49a3802f 100644 (file)
@@ -1,13 +1,14 @@
 #ifndef SYSLOGLOGGER_H
 #define SYSLOGLOGGER_H
 
+#ifndef _WIN32
 namespace icinga
 {
 
 /**
  * A logger that logs to syslog.
  */
-class SyslogLogger : public Logger
+class I2_BASE_API SyslogLogger : public Logger
 {
 public:
        typedef shared_ptr<SyslogLogger> Ptr;
@@ -20,5 +21,6 @@ protected:
 };
 
 }
+#endif /* _WIN32 */
 
 #endif /* SYSLOGLOGGER_H */
index 7bc829b85faf7e8a736d9bea546b0340161e474b..7be91331020b001f54682f0aba165a324a510736 100644 (file)
@@ -103,8 +103,12 @@ int IcingaApplication::Main(const vector<string>& args)
                throw invalid_argument("No config file was specified on the command line.");
 
        if (enableSyslog) {
+#ifndef _WIN32
                SyslogLogger::Ptr syslogLogger = boost::make_shared<SyslogLogger>(LogInformation);
                Logger::RegisterLogger(syslogLogger);
+#else /* _WIN32 */
+               throw invalid_argument("Syslog is not supported on Windows.");
+#endif /* _WIN32 */
        }
 
        string componentDirectory = Utility::DirName(GetExePath()) + "/../lib/icinga2";