Fix Windows build.

Refs #5636
This commit is contained in:
Michael Friedrich 2014-03-10 15:00:14 +01:00
parent a29b50cad4
commit c1ed614201
5 changed files with 45 additions and 5 deletions

View File

@ -28,7 +28,7 @@ add_library(db_ido SHARED
)
include_directories(${Boost_INCLUDE_DIRS})
target_link_libraries(db_ido ${Boost_LIBRARIES} base config icinga cluster)
target_link_libraries(db_ido ${Boost_LIBRARIES} base config icinga remote)
set_target_properties (
db_ido PROPERTIES

View File

@ -23,12 +23,13 @@ add_library(remote SHARED
endpoint.cpp endpoint.th jsonrpc.cpp remote-type.cpp
)
include_directories(${Boost_INCLUDE_DIRS})
target_link_libraries(remote ${Boost_LIBRARIES} base config)
set_target_properties (
icinga PROPERTIES
remote PROPERTIES
INSTALL_RPATH ${CMAKE_INSTALL_FULL_LIBDIR}/icinga2
DEFINE_SYMBOL I2_ICINGA_BUILD
DEFINE_SYMBOL I2_REMOTE_BUILD
FOLDER Lib
)

View File

@ -23,6 +23,7 @@
#include "remote/endpoint.th"
#include "base/stream.h"
#include "base/array.h"
#include "remote/i2-remote.h"
#include <boost/signals2.hpp>
namespace icinga
@ -35,7 +36,7 @@ class EndpointManager;
*
* @ingroup cluster
*/
class Endpoint : public ObjectImpl<Endpoint>
class I2_REMOTE_API Endpoint : public ObjectImpl<Endpoint>
{
public:
DECLARE_PTR_TYPEDEFS(Endpoint);

37
lib/remote/i2-remote.h Normal file
View File

@ -0,0 +1,37 @@
/******************************************************************************
* Icinga 2 *
* Copyright (C) 2012-present Icinga Development Team (http://www.icinga.org) *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software Foundation *
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. *
******************************************************************************/
#ifndef I2REMOTE_H
#define I2REMOTE_H
/**
* @defgroup remote Remote library
*
* The Icinga library implements remote cluster functionality.
*/
#include "base/i2-base.h"
#ifdef I2_REMOTE_BUILD
# define I2_REMOTE_API I2_EXPORT
#else /* I2_REMOTE_BUILD */
# define I2_REMOTE_API I2_IMPORT
#endif /* I2_REMOTE_BUILD */
#endif /* I2REMOTE_H */

View File

@ -22,6 +22,7 @@
#include "base/stream.h"
#include "base/dictionary.h"
#include "remote/i2-remote.h"
namespace icinga
{
@ -31,7 +32,7 @@ namespace icinga
*
* @ingroup remote
*/
class JsonRpc
class I2_REMOTE_API JsonRpc
{
public:
static void SendMessage(const Stream::Ptr& stream, const Dictionary::Ptr& message);