1
Fork 0
mirror of https://github.com/redstrate/Novus.git synced 2025-05-19 06:47:44 +00:00

Use a proper export header

This commit is contained in:
Joshua Goins 2024-04-24 20:40:04 -04:00
parent 86cb585c7a
commit af02370f75
9 changed files with 32 additions and 8 deletions

View file

@ -25,6 +25,7 @@ include(KDEGitCommitHooks)
include(KDEClangFormat) include(KDEClangFormat)
include(FeatureSummary) include(FeatureSummary)
include(FetchContent) include(FetchContent)
include(ECMGenerateExportHeader)
ecm_setup_version(${PROJECT_VERSION} ecm_setup_version(${PROJECT_VERSION}
VARIABLE_PREFIX NOVUS VARIABLE_PREFIX NOVUS

View file

@ -2,7 +2,6 @@
# SPDX-License-Identifier: CC0-1.0 # SPDX-License-Identifier: CC0-1.0
if (WIN32) if (WIN32)
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
add_library(novus-common SHARED) add_library(novus-common SHARED)
else() else()
add_library(novus-common STATIC) add_library(novus-common STATIC)
@ -40,6 +39,15 @@ target_link_libraries(novus-common
Qt6::Widgets Qt6::Widgets
glm::glm) glm::glm)
target_compile_definitions(novus-common PRIVATE TRANSLATION_DOMAIN="novus") target_compile_definitions(novus-common PRIVATE TRANSLATION_DOMAIN="novus")
set_target_properties(novus-common PROPERTIES
EXPORT_NAME NovusCommon
)
ecm_generate_export_header(novus-common
BASE_NAME NovusCommon
VERSION 1.0.0
)
target_include_directories(novus-common PUBLIC "$<BUILD_INTERFACE:${novus-common_INCLUDE_DIRS}>")
add_library(Novus::Common ALIAS novus-common) add_library(Novus::Common ALIAS novus-common)

View file

@ -6,4 +6,7 @@
#include <KAboutData> #include <KAboutData>
#include <QString> #include <QString>
void customizeAboutData(const QString &componentName, const QString &desktopFilename, const QString &applicationTitle, const QString &applicationDescription); #include "novuscommon_export.h"
NOVUSCOMMON_EXPORT void
customizeAboutData(const QString &componentName, const QString &desktopFilename, const QString &applicationTitle, const QString &applicationDescription);

View file

@ -9,9 +9,11 @@
#include <QString> #include <QString>
#include <physis.hpp> #include <physis.hpp>
#include "novuscommon_export.h"
struct GameData; struct GameData;
class FileCache class NOVUSCOMMON_EXPORT FileCache
{ {
public: public:
explicit FileCache(GameData &data); explicit FileCache(GameData &data);

View file

@ -5,9 +5,11 @@
#include <QString> #include <QString>
#include "novuscommon_export.h"
enum class FileType { Unknown, ExcelList, ExcelHeader, ExcelData, Model, Texture, ShaderPackage, CharaMakeParams, Skeleton, Dictionary }; enum class FileType { Unknown, ExcelList, ExcelHeader, ExcelData, Model, Texture, ShaderPackage, CharaMakeParams, Skeleton, Dictionary };
class FileTypes class NOVUSCOMMON_EXPORT FileTypes
{ {
public: public:
static FileType getFileType(const QString &extension); static FileType getFileType(const QString &extension);

View file

@ -5,7 +5,9 @@
#include <QMainWindow> #include <QMainWindow>
class NovusMainWindow : public QMainWindow #include "novuscommon_export.h"
class NOVUSCOMMON_EXPORT NovusMainWindow : public QMainWindow
{ {
public: public:
explicit NovusMainWindow(); explicit NovusMainWindow();

View file

@ -8,7 +8,9 @@
#include <glm/glm.hpp> #include <glm/glm.hpp>
class QuaternionEdit : public QWidget #include "novuscommon_export.h"
class NOVUSCOMMON_EXPORT QuaternionEdit : public QWidget
{ {
Q_OBJECT Q_OBJECT

View file

@ -5,4 +5,6 @@
#include <QString> #include <QString>
QString getGameDirectory(); #include "novuscommon_export.h"
NOVUSCOMMON_EXPORT QString getGameDirectory();

View file

@ -7,7 +7,9 @@
#include <QWidget> #include <QWidget>
#include <glm/glm.hpp> #include <glm/glm.hpp>
class Vector3Edit : public QWidget #include "novuscommon_export.h"
class NOVUSCOMMON_EXPORT Vector3Edit : public QWidget
{ {
Q_OBJECT Q_OBJECT