mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-04-28 16:29:59 +02:00
Made available compilation on windows with msys2
The aim of this commit is to easily build qelectrotech under windows with qt6/cmake and the package tool MSYS2. -Update some cmake file. -Remove Git submodule for pugixml and single application -Use cmake find_package for pugi xml -Use cmake fetchContent for single application. -Use cmake find_package for KCoreAddons and KWidgetsAddons. -Minor change for pugi xml -Minor change on ProjectPrintWindow class to compatible with Qt6 API.
This commit is contained in:
@@ -45,11 +45,12 @@ endif()
|
|||||||
include(cmake/paths_compilation_installation.cmake)
|
include(cmake/paths_compilation_installation.cmake)
|
||||||
include(cmake/start_options.cmake)
|
include(cmake/start_options.cmake)
|
||||||
include(cmake/developer_options.cmake)
|
include(cmake/developer_options.cmake)
|
||||||
include(cmake/git_update_submodules.cmake)
|
#include(cmake/git_update_submodules.cmake)
|
||||||
include(cmake/git_last_commit_sha.cmake)
|
include(cmake/git_last_commit_sha.cmake)
|
||||||
include(cmake/fetch_kdeaddons.cmake)
|
include(cmake/fetch_kdeaddons.cmake)
|
||||||
include(cmake/fetch_singleapplication.cmake)
|
include(cmake/fetch_singleapplication.cmake)
|
||||||
include(cmake/fetch_pugixml.cmake)
|
include(cmake/fetch_pugixml.cmake)
|
||||||
|
include(cmake/fetch_elements.cmake)
|
||||||
|
|
||||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||||
|
|
||||||
@@ -57,11 +58,8 @@ set(CMAKE_AUTORCC ON)
|
|||||||
|
|
||||||
set(CMAKE_AUTOUIC_SEARCH_PATHS ${QET_DIR}/sources/ui)
|
set(CMAKE_AUTOUIC_SEARCH_PATHS ${QET_DIR}/sources/ui)
|
||||||
|
|
||||||
# als laatse
|
|
||||||
include(cmake/define_definitions.cmake)
|
include(cmake/define_definitions.cmake)
|
||||||
|
|
||||||
find_package(KF6WidgetsAddons REQUIRED)
|
|
||||||
|
|
||||||
qt_add_executable(
|
qt_add_executable(
|
||||||
${PROJECT_NAME}
|
${PROJECT_NAME}
|
||||||
${QET_RES_FILES}
|
${QET_RES_FILES}
|
||||||
@@ -89,7 +87,6 @@ target_link_libraries(
|
|||||||
SQLite::SQLite3
|
SQLite::SQLite3
|
||||||
${KF6_PRIVATE_LIBRARIES}
|
${KF6_PRIVATE_LIBRARIES}
|
||||||
${QET_PRIVATE_LIBRARIES}
|
${QET_PRIVATE_LIBRARIES}
|
||||||
KF6::WidgetsAddons
|
|
||||||
)
|
)
|
||||||
|
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
@@ -121,7 +118,6 @@ target_include_directories(
|
|||||||
${QET_DIR}/sources/NameList
|
${QET_DIR}/sources/NameList
|
||||||
${QET_DIR}/sources/NameList/ui
|
${QET_DIR}/sources/NameList/ui
|
||||||
${QET_DIR}/sources/utils
|
${QET_DIR}/sources/utils
|
||||||
${QET_DIR}/pugixml/src
|
|
||||||
${QET_DIR}/sources/dataBase
|
${QET_DIR}/sources/dataBase
|
||||||
${QET_DIR}/sources/dataBase/ui
|
${QET_DIR}/sources/dataBase/ui
|
||||||
${QET_DIR}/sources/factory/ui
|
${QET_DIR}/sources/factory/ui
|
||||||
|
|||||||
Submodule SingleApplication deleted from cbe496bc01
@@ -1,4 +1,4 @@
|
|||||||
# Copyright 2006 The QElectroTech Team
|
# Copyright 2006-2026 The QElectroTech Team
|
||||||
# This file is part of QElectroTech.
|
# This file is part of QElectroTech.
|
||||||
#
|
#
|
||||||
# QElectroTech is free software: you can redistribute it and/or modify
|
# QElectroTech is free software: you can redistribute it and/or modify
|
||||||
@@ -14,25 +14,22 @@
|
|||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
|
# along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
message(STATUS "fetch_kdeaddons")
|
option(BUILD_KF6 "Build KF6 libraries, use system ones otherwise" OFF)
|
||||||
|
if(BUILD_KF6)
|
||||||
if(BUILD_WITH_KF6)
|
|
||||||
option(BUILD_KF6 "Build KF6 libraries, use system ones otherwise" OFF)
|
|
||||||
block(PROPAGATE KF6_GIT_TAG)
|
block(PROPAGATE KF6_GIT_TAG)
|
||||||
set(BUILD_TESTING OFF)
|
message(STATUS " - fetch_kdeaddons")
|
||||||
set(KDE_SKIP_TEST_SETTINGS ON)
|
set(KDE_SKIP_TEST_SETTINGS ON)
|
||||||
set(BUILD_DESIGNERPLUGIN OFF)
|
|
||||||
set(KCOREADDONS_USE_QML OFF)
|
set(KCOREADDONS_USE_QML OFF)
|
||||||
|
set(KWIDGETSADDONS_USE_QML OFF)
|
||||||
|
set(BUILD_TESTING OFF)
|
||||||
|
set(BUILD_DESIGNERPLUGIN OFF)
|
||||||
set(BUILD_QCH OFF)
|
set(BUILD_QCH OFF)
|
||||||
set(BUILD_SHARED_LIBS OFF)
|
set(BUILD_SHARED_LIBS OFF)
|
||||||
find_package(ECM 6.8.0 REQUIRED NO_MODULE)
|
|
||||||
list(APPEND CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
|
|
||||||
|
|
||||||
if(BUILD_KF6)
|
|
||||||
Include(FetchContent)
|
Include(FetchContent)
|
||||||
|
|
||||||
if(NOT DEFINED KF6_GIT_TAG)
|
if(NOT DEFINED KF6_GIT_TAG)
|
||||||
set(KF6_GIT_TAG v6.8.0)
|
set(KF6_GIT_TAG v6.22.0)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
FetchContent_Declare(
|
FetchContent_Declare(
|
||||||
@@ -40,21 +37,19 @@ if(BUILD_WITH_KF6)
|
|||||||
GIT_REPOSITORY https://invent.kde.org/frameworks/kcoreaddons.git
|
GIT_REPOSITORY https://invent.kde.org/frameworks/kcoreaddons.git
|
||||||
GIT_TAG ${KF6_GIT_TAG})
|
GIT_TAG ${KF6_GIT_TAG})
|
||||||
FetchContent_MakeAvailable(kcoreaddons)
|
FetchContent_MakeAvailable(kcoreaddons)
|
||||||
get_target_property(kca_version KF6::CoreAddons VERSION)
|
|
||||||
|
|
||||||
else()
|
FetchContent_Declare(
|
||||||
find_package(KF6CoreAddons REQUIRED)
|
kwidgetsaddons
|
||||||
set(kca_version ${KF6CoreAddons_VERSION})
|
GIT_REPOSITORY https://invent.kde.org/frameworks/kwidgetsaddons.git
|
||||||
endif()
|
GIT_TAG ${KF6_GIT_TAG})
|
||||||
|
FetchContent_MakeAvailable(kwidgetsaddons)
|
||||||
get_target_property(kwa_type KF6::CoreAddons TYPE)
|
|
||||||
|
|
||||||
message(NOTICE "ecm version : " ${ECM_VERSION})
|
|
||||||
message(NOTICE "kcoreaddons library : " ${kca_type})
|
|
||||||
message(NOTICE "kcoreaddons version : " ${kca_version})
|
|
||||||
endblock()
|
endblock()
|
||||||
|
else()
|
||||||
set(KF6_PRIVATE_LIBRARIES
|
find_package(KF6CoreAddons REQUIRED)
|
||||||
KF6::CoreAddons
|
find_package(KF6WidgetsAddons REQUIRED)
|
||||||
)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
set(KF6_PRIVATE_LIBRARIES
|
||||||
|
KF6::CoreAddons
|
||||||
|
KF6::WidgetsAddons
|
||||||
|
)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# Copyright 2006 The QElectroTech Team
|
# Copyright 2006-2026 The QElectroTech Team
|
||||||
# This file is part of QElectroTech.
|
# This file is part of QElectroTech.
|
||||||
#
|
#
|
||||||
# QElectroTech is free software: you can redistribute it and/or modify
|
# QElectroTech is free software: you can redistribute it and/or modify
|
||||||
@@ -14,14 +14,10 @@
|
|||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
|
# along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
message(" - fetch_pugixml")
|
option(BUILD_PUGIXML "Build pugixml library, use system one otherwise" OFF)
|
||||||
|
|
||||||
Include(FetchContent)
|
|
||||||
|
|
||||||
option(BUILD_PUGIXML "Build pugixml library, use system one otherwise" YES)
|
|
||||||
|
|
||||||
if(BUILD_PUGIXML)
|
if(BUILD_PUGIXML)
|
||||||
|
Include(FetchContent)
|
||||||
|
message(" - fetch pugixml")
|
||||||
FetchContent_Declare(
|
FetchContent_Declare(
|
||||||
pugixml
|
pugixml
|
||||||
GIT_REPOSITORY https://github.com/zeux/pugixml.git
|
GIT_REPOSITORY https://github.com/zeux/pugixml.git
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# Copyright 2006 The QElectroTech Team
|
# Copyright 2006-2026 The QElectroTech Team
|
||||||
# This file is part of QElectroTech.
|
# This file is part of QElectroTech.
|
||||||
#
|
#
|
||||||
# QElectroTech is free software: you can redistribute it and/or modify
|
# QElectroTech is free software: you can redistribute it and/or modify
|
||||||
@@ -16,9 +16,6 @@
|
|||||||
|
|
||||||
message(" - fetch_singleapplication")
|
message(" - fetch_singleapplication")
|
||||||
|
|
||||||
# https://github.com/itay-grudev/SingleApplication/issues/18
|
|
||||||
#qmake
|
|
||||||
#DEFINES += QAPPLICATION_CLASS=QGuiApplication
|
|
||||||
set(QAPPLICATION_CLASS QApplication)
|
set(QAPPLICATION_CLASS QApplication)
|
||||||
|
|
||||||
Include(FetchContent)
|
Include(FetchContent)
|
||||||
@@ -26,6 +23,6 @@ Include(FetchContent)
|
|||||||
FetchContent_Declare(
|
FetchContent_Declare(
|
||||||
SingleApplication
|
SingleApplication
|
||||||
GIT_REPOSITORY https://github.com/itay-grudev/SingleApplication.git
|
GIT_REPOSITORY https://github.com/itay-grudev/SingleApplication.git
|
||||||
GIT_TAG v3.2.0)
|
GIT_TAG v3.5.4)
|
||||||
|
|
||||||
FetchContent_MakeAvailable(SingleApplication)
|
FetchContent_MakeAvailable(SingleApplication)
|
||||||
|
|||||||
@@ -421,10 +421,6 @@ set(QET_SRC_FILES
|
|||||||
${QET_DIR}/sources/PropertiesEditor/propertieseditorwidget.cpp
|
${QET_DIR}/sources/PropertiesEditor/propertieseditorwidget.cpp
|
||||||
${QET_DIR}/sources/PropertiesEditor/propertieseditorwidget.h
|
${QET_DIR}/sources/PropertiesEditor/propertieseditorwidget.h
|
||||||
|
|
||||||
${QET_DIR}/pugixml/src/pugiconfig.hpp
|
|
||||||
${QET_DIR}/pugixml/src/pugixml.cpp
|
|
||||||
${QET_DIR}/pugixml/src/pugixml.hpp
|
|
||||||
|
|
||||||
${QET_DIR}/sources/qetgraphicsitem/conductor.cpp
|
${QET_DIR}/sources/qetgraphicsitem/conductor.cpp
|
||||||
${QET_DIR}/sources/qetgraphicsitem/conductor.h
|
${QET_DIR}/sources/qetgraphicsitem/conductor.h
|
||||||
${QET_DIR}/sources/qetgraphicsitem/conductortextitem.cpp
|
${QET_DIR}/sources/qetgraphicsitem/conductortextitem.cpp
|
||||||
|
|||||||
1
pugixml
1
pugixml
Submodule pugixml deleted from 5a1892b321
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
#include "../NameList/nameslist.h"
|
#include "../NameList/nameslist.h"
|
||||||
#include "../diagramcontext.h"
|
#include "../diagramcontext.h"
|
||||||
#include "pugixml/src/pugixml.hpp"
|
#include "pugixml.hpp"
|
||||||
|
|
||||||
#include <QIcon>
|
#include <QIcon>
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
*/
|
*/
|
||||||
#ifndef NAMES_LIST_H
|
#ifndef NAMES_LIST_H
|
||||||
#define NAMES_LIST_H
|
#define NAMES_LIST_H
|
||||||
#include "pugixml/src/pugixml.hpp"
|
#include "pugixml.hpp"
|
||||||
|
|
||||||
#include <QtXml>
|
#include <QtXml>
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
*/
|
*/
|
||||||
#ifndef DIAGRAM_CONTEXT_H
|
#ifndef DIAGRAM_CONTEXT_H
|
||||||
#define DIAGRAM_CONTEXT_H
|
#define DIAGRAM_CONTEXT_H
|
||||||
#include "pugixml/src/pugixml.hpp"
|
#include "pugixml.hpp"
|
||||||
|
|
||||||
#include <QDomElement>
|
#include <QDomElement>
|
||||||
#include <QHash>
|
#include <QHash>
|
||||||
|
|||||||
@@ -190,25 +190,28 @@ ProjectPrintWindow::~ProjectPrintWindow()
|
|||||||
*/
|
*/
|
||||||
void ProjectPrintWindow::requestPaint()
|
void ProjectPrintWindow::requestPaint()
|
||||||
{
|
{
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)
|
#if QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
#ifdef QT_DEBUG
|
auto screen = this->screen();
|
||||||
|
if(screen)
|
||||||
|
{
|
||||||
|
#ifdef QT_DEBUG
|
||||||
qDebug() << "--";
|
qDebug() << "--";
|
||||||
qDebug() << "DiagramPrintDialog::print printer_->resolution() before " << m_printer->resolution();
|
qDebug() << "DiagramPrintDialog::print printer_->resolution() before " << m_printer->resolution();
|
||||||
qDebug() << "DiagramPrintDialog::print screennumber " << QApplication::desktop()->screenNumber();
|
qDebug() << "DiagramPrintDialog::print screennumber " << screen->name();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QScreen *srn = QApplication::screens().at(QApplication::desktop()->screenNumber());
|
qreal dotsPerInch = (qreal)screen->logicalDotsPerInch();
|
||||||
qreal dotsPerInch = (qreal)srn->logicalDotsPerInch();
|
|
||||||
m_printer->setResolution(dotsPerInch);
|
m_printer->setResolution(dotsPerInch);
|
||||||
|
|
||||||
#ifdef QT_DEBUG
|
#ifdef QT_DEBUG
|
||||||
qDebug() << "DiagramPrintDialog::print dotsPerInch " << dotsPerInch;
|
qDebug() << "DiagramPrintDialog::print dotsPerInch " << dotsPerInch;
|
||||||
qDebug() << "DiagramPrintDialog::print printer_->resolution() after" << m_printer->resolution();
|
qDebug() << "DiagramPrintDialog::print printer_->resolution() after" << m_printer->resolution();
|
||||||
qDebug() << "--";
|
qDebug() << "--";
|
||||||
#endif
|
#endif
|
||||||
#endif
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!m_project->diagrams().count()) {
|
if (!m_project->diagrams().count()) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user