refs #403 add BlackInput shared library build

This commit is contained in:
Roland Winklmeier
2015-04-10 21:53:56 +02:00
parent d0302c275a
commit 9c81467fe9
7 changed files with 40 additions and 6 deletions

View File

@@ -19,7 +19,7 @@ precompile_header:!isEmpty(PRECOMPILED_HEADER) {
DEFINES += USING_PCH
}
DEFINES += LOG_IN_FILE
DEFINES += LOG_IN_FILE BUILD_BLACKINPUT_LIB
HEADERS += *.h
SOURCES += *.cpp
@@ -27,6 +27,8 @@ SOURCES += *.cpp
win32 {
HEADERS += $$PWD/win/*.h
SOURCES += $$PWD/win/*.cpp
LIBS *= -ldxguid -lole32 -ldinput8 -lUser32
}
unix:!macx {

View File

@@ -0,0 +1,27 @@
/* Copyright (C) 2015
* swift project Community / Contributors
*
* This file is part of swift project. It is subject to the license terms in the LICENSE file found in the top-level
* directory of this distribution and at http://www.swift-project.org/license.html. No part of swift project,
* including this file, may be copied, modified, propagated, or distributed except according to the terms
* contained in the LICENSE file.
*/
//! \file
#ifndef BLACKINPUT_MACROS_H
#define BLACKINPUT_MACROS_H
#include <QtGlobal>
#ifndef WITH_STATIC
# if defined(BUILD_BLACKINPUT_LIB)
# define BLACKINPUT_EXPORT Q_DECL_EXPORT
# else
# define BLACKINPUT_EXPORT Q_DECL_IMPORT
# endif
#else
# define BLACKINPUT_EXPORT
#endif
#endif // BLACKINPUT_MACROS_H

View File

@@ -12,6 +12,7 @@
#ifndef BLACKINPUT_JOYSTICK_H
#define BLACKINPUT_JOYSTICK_H
#include "blackinputexport.h"
#include "blackmisc/hardware/joystickbutton.h"
#include <QMultiMap>
#include <QObject>
@@ -24,7 +25,7 @@ namespace BlackInput
* \brief Abstract interface for native joystick handling.
* \todo Add implementation for Linux and OSX.
*/
class IJoystick : public QObject
class BLACKINPUT_EXPORT IJoystick : public QObject
{
Q_OBJECT

View File

@@ -10,6 +10,7 @@
#ifndef BLACKINPUT_KEYBOARD_H
#define BLACKINPUT_KEYBOARD_H
#include "blackinputexport.h"
#include "blackmisc/hardware/keyboardkeylist.h"
#include <QMultiMap>
#include <QObject>
@@ -22,7 +23,7 @@ namespace BlackInput
* Abstract interface for native keyboard handling.
* \todo Add implementation for Linux and OSX.
*/
class IKeyboard : public QObject
class BLACKINPUT_EXPORT IKeyboard : public QObject
{
Q_OBJECT
public:

View File

@@ -12,6 +12,7 @@
//! \file
#include "blackinput/blackinputexport.h"
#include "blackinput/joystick.h"
#include "blackmisc/hardware/joystickbutton.h"
#include "blackmisc/collection.h"
@@ -46,7 +47,7 @@ namespace BlackInput
bool operator == (CJoystickDeviceData const &lhs, CJoystickDeviceData const &rhs);
//! Windows implemenation of IJoystick with DirectInput
class CJoystickWindows : public IJoystick
class BLACKINPUT_EXPORT CJoystickWindows : public IJoystick
{
Q_OBJECT

View File

@@ -10,6 +10,7 @@
#ifndef BLACKINPUT_KEYBOARD_WINDOWS_H
#define BLACKINPUT_KEYBOARD_WINDOWS_H
#include "blackinput/blackinputexport.h"
#include "blackinput/keyboard.h"
#include "blackmisc/hardware/keyboardkey.h"
#include "blackmisc/hardware/keyboardkeylist.h"
@@ -23,7 +24,7 @@ namespace BlackInput
{
//! \brief Windows implemenation of IKeyboard using hook procedure
//! \todo Change QHash to a CCollection object
class CKeyboardWindows : public IKeyboard
class BLACKINPUT_EXPORT CKeyboardWindows : public IKeyboard
{
Q_OBJECT
public:

View File

@@ -7,6 +7,7 @@
#ifndef BLACKINPUT_KEYMAPPING_WINDOWS_H
#define BLACKINPUT_KEYMAPPING_WINDOWS_H
#include "blackinput/blackinputexport.h"
#include "blackmisc/hardware/keyboardkey.h"
#ifndef NOMINMAX
#define NOMINMAX
@@ -16,7 +17,7 @@
namespace BlackInput
{
//! \brief This class provides methods to map between windows virtual keys and CKeyboardKey
class CKeyMappingWindows
class BLACKINPUT_EXPORT CKeyMappingWindows
{
public:
/*!