Limit sccache caches and improve PCH (#4727)

This also enables PCH on all but one Windows builds
This commit is contained in:
nerix 2023-07-19 22:29:17 +02:00 committed by GitHub
parent c8f390d558
commit 7fd01ac575
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 27 deletions

View file

@ -140,6 +140,8 @@ jobs:
if: startsWith(matrix.os, 'windows') if: startsWith(matrix.os, 'windows')
with: with:
variant: sccache variant: sccache
# only save on on the default (master) branch
save: ${{ github.event_name == 'push' }}
key: sccache-build-${{ matrix.os }}-${{ matrix.qt-version }}-${{ matrix.skip-crashpad }} key: sccache-build-${{ matrix.os }}-${{ matrix.qt-version }}-${{ matrix.skip-crashpad }}
restore-keys: | restore-keys: |
sccache-build-${{ matrix.os }}-${{ matrix.qt-version }} sccache-build-${{ matrix.os }}-${{ matrix.qt-version }}
@ -181,13 +183,16 @@ jobs:
- name: Build (Windows) - name: Build (Windows)
if: startsWith(matrix.os, 'windows') if: startsWith(matrix.os, 'windows')
shell: pwsh shell: pwsh
env:
# Enable PCH on Windows when crashpad is enabled
C2_WINDOWS_USE_PCH: ${{ matrix.skip-crashpad && 'OFF' || 'ON' }}
run: | run: |
cd build cd build
cmake ` cmake `
-G"NMake Makefiles" ` -G"NMake Makefiles" `
-DCMAKE_BUILD_TYPE=RelWithDebInfo ` -DCMAKE_BUILD_TYPE=RelWithDebInfo `
-DCMAKE_TOOLCHAIN_FILE="conan_toolchain.cmake" ` -DCMAKE_TOOLCHAIN_FILE="conan_toolchain.cmake" `
-DUSE_PRECOMPILED_HEADERS=OFF ` -DUSE_PRECOMPILED_HEADERS=${{ env.C2_WINDOWS_USE_PCH }} `
-DBUILD_WITH_CRASHPAD="$Env:C2_ENABLE_CRASHPAD" ` -DBUILD_WITH_CRASHPAD="$Env:C2_ENABLE_CRASHPAD" `
-DCHATTERINO_LTO="$Env:C2_ENABLE_LTO" ` -DCHATTERINO_LTO="$Env:C2_ENABLE_LTO" `
-DCHATTERINO_PLUGINS="$Env:C2_PLUGINS" ` -DCHATTERINO_PLUGINS="$Env:C2_PLUGINS" `

View file

@ -1,8 +1,10 @@
#ifdef __cplusplus #ifdef __cplusplus
# include <boost/circular_buffer.hpp>
# include <boost/current_function.hpp> # include <boost/current_function.hpp>
# include <boost/foreach.hpp> # include <boost/foreach.hpp>
# include <boost/noncopyable.hpp> # include <boost/noncopyable.hpp>
# include <boost/optional.hpp> # include <boost/optional.hpp>
# include <boost/signals2.hpp>
# include <IrcCommand> # include <IrcCommand>
# include <IrcConnection> # include <IrcConnection>
# include <IrcMessage> # include <IrcMessage>
@ -12,40 +14,29 @@
# include <pajlada/signals/connection.hpp> # include <pajlada/signals/connection.hpp>
# include <pajlada/signals/signal.hpp> # include <pajlada/signals/signal.hpp>
# include <QAbstractListModel> # include <QAbstractListModel>
# include <QAbstractNativeEventFilter>
# include <QAction> # include <QAction>
# include <QApplication> # include <QApplication>
# include <QBrush> # include <QBrush>
# include <QBuffer> # include <QBuffer>
# include <QButtonGroup>
# include <QByteArray> # include <QByteArray>
# include <QCheckBox> # include <QCheckBox>
# include <QClipboard> # include <QClipboard>
# include <QColor> # include <QColor>
# include <QComboBox> # include <QComboBox>
# include <QCompleter>
# include <QCoreApplication>
# include <QDateTime> # include <QDateTime>
# include <QDebug> # include <QDebug>
# include <QDesktopServices> # include <QDesktopServices>
# include <QDialog> # include <QDialog>
# include <QDialogButtonBox> # include <QDialogButtonBox>
# include <QDir> # include <QDir>
# include <QDockWidget>
# include <QDrag>
# include <QDragEnterEvent>
# include <QElapsedTimer> # include <QElapsedTimer>
# include <QEventLoop>
# include <QFile> # include <QFile>
# include <QFileDialog> # include <QFileDialog>
# include <QFileInfo> # include <QFileInfo>
# include <QFlags> # include <QFlags>
# include <QFont> # include <QFont>
# include <QFontDatabase>
# include <QFontDialog>
# include <QFontMetrics> # include <QFontMetrics>
# include <QFormLayout> # include <QFormLayout>
# include <QGraphicsBlurEffect>
# include <QGroupBox> # include <QGroupBox>
# include <QHBoxLayout> # include <QHBoxLayout>
# include <QHeaderView> # include <QHeaderView>
@ -58,7 +49,6 @@
# include <QKeyEvent> # include <QKeyEvent>
# include <QLabel> # include <QLabel>
# include <QLayout> # include <QLayout>
# include <QLibrary>
# include <QLineEdit> # include <QLineEdit>
# include <QList> # include <QList>
# include <QListView> # include <QListView>
@ -92,31 +82,17 @@
# include <QSizePolicy> # include <QSizePolicy>
# include <QSlider> # include <QSlider>
# include <QSpinBox> # include <QSpinBox>
# include <QStackedLayout>
# include <QStandardPaths> # include <QStandardPaths>
# include <QString> # include <QString>
# include <QStyle> # include <QStyle>
# include <QStyleOption> # include <QStyleOption>
# include <QTabWidget> # include <QTabWidget>
# include <QtCore/QVariant>
# include <QTextEdit> # include <QTextEdit>
# include <QtGlobal> # include <QtGlobal>
# include <QThread> # include <QThread>
# include <QThreadPool> # include <QThreadPool>
# include <QTime> # include <QTime>
# include <QTimer> # include <QTimer>
# include <QtWidgets/QApplication>
# include <QtWidgets/QButtonGroup>
# include <QtWidgets/QDialog>
# include <QtWidgets/QDialogButtonBox>
# include <QtWidgets/QFormLayout>
# include <QtWidgets/QHBoxLayout>
# include <QtWidgets/QHeaderView>
# include <QtWidgets/QLabel>
# include <QtWidgets/QLineEdit>
# include <QtWidgets/QPushButton>
# include <QtWidgets/QTabWidget>
# include <QtWidgets/QVBoxLayout>
# include <QUrl> # include <QUrl>
# include <QUuid> # include <QUuid>
# include <QVariant> # include <QVariant>