Skip to content

Commit be6dd2b

Browse files
committed
add-export-header
1 parent 80daba1 commit be6dd2b

2 files changed

Lines changed: 13 additions & 4 deletions

File tree

CMakeLists.txt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,17 @@ project(SingleApplication VERSION 3.6.0 LANGUAGES CXX DESCRIPTION "Replacement f
44

55
option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
66
set(CMAKE_AUTOMOC ON)
7+
set(CMAKE_INCLUDE_CURRENT_DIR ON)
78

89
add_library(${PROJECT_NAME}
910
singleapplication.cpp
1011
singleapplication_p.cpp
1112
)
1213
set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
1314

15+
include(GenerateExportHeader)
16+
generate_export_header(${PROJECT_NAME})
17+
1418
# User configurable options
1519
if(NOT QT_DEFAULT_MAJOR_VERSION)
1620
set(QT_DEFAULT_MAJOR_VERSION 5 CACHE STRING "Qt version to use (5 or 6), defaults to 5")
@@ -126,7 +130,9 @@ if(SINGLEAPPLICATION_INSTALL)
126130
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/singleapplication.h" "${SINGLEAPPLICATION_H_CONTENT}")
127131

128132
# CMake install
129-
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/singleapplication.h" "SingleApplication" "FreeStandingSingleApplication"
133+
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/singleapplication.h"
134+
"${CMAKE_CURRENT_BINARY_DIR}/singleapplication_export.h"
135+
"SingleApplication" "FreeStandingSingleApplication"
130136
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
131137

132138
include(CMakePackageConfigHelpers)
@@ -141,7 +147,8 @@ if(SINGLEAPPLICATION_INSTALL)
141147
"${CMAKE_CURRENT_BINARY_DIR}/SingleApplicationConfigVersion.cmake"
142148
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/SingleApplication")
143149

144-
install(TARGETS SingleApplication EXPORT SingleApplicationTargets)
150+
install(TARGETS SingleApplication
151+
EXPORT SingleApplicationTargets)
145152
install(EXPORT SingleApplicationTargets
146153
FILE "SingleApplicationTargets.cmake"
147154
NAMESPACE "SingleApplication::"

singleapplication.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
#ifndef SINGLE_APPLICATION_H
2525
#define SINGLE_APPLICATION_H
2626

27+
#include "singleapplication_export.h"
28+
2729
#include <QtCore/QtGlobal>
2830
#include <QtNetwork/QLocalSocket>
2931

@@ -40,7 +42,7 @@ class SingleApplicationPrivate;
4042
* Application
4143
* @see QCoreApplication
4244
*/
43-
class SingleApplication : public QAPPLICATION_CLASS
45+
class SINGLEAPPLICATION_EXPORT SingleApplication : public QAPPLICATION_CLASS
4446
{
4547
Q_OBJECT
4648

@@ -181,6 +183,6 @@ class SingleApplication : public QAPPLICATION_CLASS
181183
void abortSafely();
182184
};
183185

184-
Q_DECLARE_OPERATORS_FOR_FLAGS(SingleApplication::Options)
186+
SINGLEAPPLICATION_EXPORT Q_DECLARE_OPERATORS_FOR_FLAGS(SingleApplication::Options)
185187

186188
#endif // SINGLE_APPLICATION_H

0 commit comments

Comments
 (0)