Merge pull request #5852 from lemondrops/cmake
CMake-related improvements
This commit is contained in:
@@ -221,7 +221,7 @@ if(NOT EMU_BUILD_NUM)
|
||||
set(EMU_BUILD_NUM 0)
|
||||
endif()
|
||||
if(NOT EMU_COPYRIGHT_YEAR)
|
||||
set(EMU_COPYRIGHT_YEAR 2024)
|
||||
set(EMU_COPYRIGHT_YEAR 2025)
|
||||
endif()
|
||||
|
||||
# Libasan
|
||||
@@ -230,4 +230,6 @@ if(LIBASAN)
|
||||
add_link_options(-fsanitize=address)
|
||||
endif()
|
||||
|
||||
set(CMAKE_TOP_LEVEL_PROCESSED TRUE)
|
||||
|
||||
add_subdirectory(src)
|
||||
|
||||
@@ -16,6 +16,10 @@
|
||||
# Copyright 2024 Jasmine Iwanek.
|
||||
#
|
||||
|
||||
if(NOT CMAKE_TOP_LEVEL_PROCESSED)
|
||||
message(FATAL_ERROR "Incorrect source directory specified. Delete your build directory and retry with the top-level directory instead")
|
||||
endif()
|
||||
|
||||
if(APPLE)
|
||||
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
endif()
|
||||
@@ -149,16 +153,6 @@ if(APPLE)
|
||||
target_link_libraries(86Box Freetype::Freetype)
|
||||
endif()
|
||||
|
||||
find_package(SDL2 REQUIRED)
|
||||
include_directories(${SDL2_INCLUDE_DIRS})
|
||||
if(STATIC_BUILD AND TARGET SDL2::SDL2-static)
|
||||
target_link_libraries(86Box SDL2::SDL2-static)
|
||||
elseif(TARGET SDL2::SDL2)
|
||||
target_link_libraries(86Box SDL2::SDL2)
|
||||
else()
|
||||
target_link_libraries(86Box ${SDL2_LIBRARIES})
|
||||
endif()
|
||||
|
||||
find_package(PNG REQUIRED)
|
||||
include_directories(${PNG_INCLUDE_DIRS})
|
||||
target_link_libraries(86Box PNG::PNG)
|
||||
|
||||
@@ -187,14 +187,6 @@ add_library(ui STATIC
|
||||
qt_mediahistorymanager.cpp
|
||||
qt_mediahistorymanager.hpp
|
||||
|
||||
qt_updatecheck.cpp
|
||||
qt_updatecheck.hpp
|
||||
qt_updatecheckdialog.cpp
|
||||
qt_updatecheckdialog.hpp
|
||||
qt_updatecheckdialog.ui
|
||||
qt_updatedetails.cpp
|
||||
qt_updatedetails.hpp
|
||||
qt_updatedetails.ui
|
||||
qt_downloader.cpp
|
||||
qt_downloader.hpp
|
||||
|
||||
@@ -245,6 +237,19 @@ add_library(ui STATIC
|
||||
qt_iconindicators.cpp
|
||||
)
|
||||
|
||||
if(EMU_BUILD_NUM)
|
||||
target_sources(ui PRIVATE
|
||||
qt_updatecheck.cpp
|
||||
qt_updatecheck.hpp
|
||||
qt_updatecheckdialog.cpp
|
||||
qt_updatecheckdialog.hpp
|
||||
qt_updatecheckdialog.ui
|
||||
qt_updatedetails.cpp
|
||||
qt_updatedetails.hpp
|
||||
qt_updatedetails.ui
|
||||
)
|
||||
endif()
|
||||
|
||||
if(RTMIDI)
|
||||
target_compile_definitions(ui PRIVATE USE_RTMIDI)
|
||||
endif()
|
||||
@@ -284,6 +289,15 @@ if(WIN32 AND NOT SDL_JOYSTICK)
|
||||
target_sources(plat PRIVATE win_joystick_rawinput.c)
|
||||
target_link_libraries(86Box hid)
|
||||
else()
|
||||
find_package(SDL2 REQUIRED)
|
||||
include_directories(${SDL2_INCLUDE_DIRS})
|
||||
if(STATIC_BUILD AND TARGET SDL2::SDL2-static)
|
||||
target_link_libraries(86Box SDL2::SDL2-static)
|
||||
elseif(TARGET SDL2::SDL2)
|
||||
target_link_libraries(86Box SDL2::SDL2)
|
||||
else()
|
||||
target_link_libraries(86Box ${SDL2_LIBRARIES})
|
||||
endif()
|
||||
target_sources(plat PRIVATE sdl_joystick.c)
|
||||
endif()
|
||||
|
||||
|
||||
@@ -18,8 +18,6 @@
|
||||
#ifndef QT_VMMANAGER_MAIN_H
|
||||
#define QT_VMMANAGER_MAIN_H
|
||||
|
||||
#include "qt_updatecheck.hpp"
|
||||
|
||||
#include <QWidget>
|
||||
#include "qt_vmmanager_model.hpp"
|
||||
#include "qt_vmmanager_details.hpp"
|
||||
@@ -31,6 +29,9 @@ extern "C" {
|
||||
#include <86box/86box.h> // for vmm_path
|
||||
}
|
||||
|
||||
#if EMU_BUILD_NUM != 0
|
||||
# include "qt_updatecheck.hpp"
|
||||
#endif
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
namespace Ui { class VMManagerMain; }
|
||||
|
||||
@@ -19,7 +19,9 @@
|
||||
#include "qt_vmmanager_main.hpp"
|
||||
#include "qt_vmmanager_preferences.hpp"
|
||||
#include "ui_qt_vmmanager_mainwindow.h"
|
||||
#include "qt_updatecheckdialog.hpp"
|
||||
#if EMU_BUILD_NUM != 0
|
||||
# include "qt_updatecheckdialog.hpp"
|
||||
#endif
|
||||
|
||||
#include <QLineEdit>
|
||||
#include <QStringListModel>
|
||||
@@ -171,16 +173,18 @@ VMManagerMainWindow::setStatusRight(const QString &text) const
|
||||
statusRight->setText(text);
|
||||
}
|
||||
|
||||
#if EMU_BUILD_NUM != 0
|
||||
void
|
||||
VMManagerMainWindow::checkForUpdatesTriggered()
|
||||
{
|
||||
auto updateChannel = UpdateCheck::UpdateChannel::CI;
|
||||
#ifdef RELEASE_BUILD
|
||||
# ifdef RELEASE_BUILD
|
||||
updateChannel = UpdateCheck::UpdateChannel::Stable;
|
||||
#endif
|
||||
# endif
|
||||
const auto updateCheck = new UpdateCheckDialog(updateChannel);
|
||||
updateCheck->exec();
|
||||
}
|
||||
#endif
|
||||
|
||||
void VMManagerMainWindow::on_actionExit_triggered()
|
||||
{
|
||||
|
||||
@@ -50,7 +50,9 @@ public slots:
|
||||
private slots:
|
||||
void vmmSelectionChanged(const QModelIndex ¤tSelection, QProcess::ProcessState processState) const;
|
||||
void preferencesTriggered();
|
||||
#if EMU_BUILD_NUM != 0
|
||||
static void checkForUpdatesTriggered();
|
||||
#endif
|
||||
|
||||
void on_actionExit_triggered();
|
||||
|
||||
|
||||
@@ -32,6 +32,16 @@ set(THREADS_PREFER_PTHREAD_FLAG TRUE)
|
||||
find_package(Threads REQUIRED)
|
||||
target_link_libraries(86Box Threads::Threads)
|
||||
|
||||
find_package(SDL2 REQUIRED)
|
||||
include_directories(${SDL2_INCLUDE_DIRS})
|
||||
if(STATIC_BUILD AND TARGET SDL2::SDL2-static)
|
||||
target_link_libraries(86Box SDL2::SDL2-static)
|
||||
elseif(TARGET SDL2::SDL2)
|
||||
target_link_libraries(86Box SDL2::SDL2)
|
||||
else()
|
||||
target_link_libraries(86Box ${SDL2_LIBRARIES})
|
||||
endif()
|
||||
|
||||
add_library(ui OBJECT
|
||||
unix_sdl.c
|
||||
unix_cdrom.c
|
||||
|
||||
Reference in New Issue
Block a user