mirror of
https://github.com/Chatterino/chatterino2.git
synced 2024-11-13 19:49:51 +01:00
Remove official support for QMake (#3839)
* delet chatterino.pro * Update documentation * Update Github Actions config * Update Cirrus CI config * Attempt to fix Cirrus CI * Add changelog entry * Delete tools/update_filelist.py It was a QMake-only script? Maybe will need revert + change to CMake or something? * fix? * Fuck this linter * Attempt to clean up build.yml a little * Add cmaake to install list, remove step for qmake PATH * Change list entries to always use 1. Sneaky unrelated change * These are no longer tests! * FUCK YOU PRETTIER * Make BUILDING_ON_LINUX.md simpler * Get rid of Jenkins * Get rid of travis * Remove dupes * Remove appveyor * Remove qmake from conanfile * Try removing explicit qmake path * Nothing uses the qt style plugins installer anymore * Update manual linux building instructions * Update freebsd compilation instructions with a copy paste from the linux instructions * Remove unused docker files * Remove linux breakpad build script as it's unused * Update changelog entry phrasing * Lint build markdown files * Change top changelog entry to not be confused as a link * Skip QtCreator conan setup if conan is disabled This reduces the amount of warnings & errors Windows users get with QtCreator * lint building on linux file Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
This commit is contained in:
parent
9aa15f1ff5
commit
044dd8a616
|
@ -14,7 +14,6 @@ script_path=$(readlink -f "$0")
|
|||
script_dir=$(dirname "$script_path")
|
||||
chatterino_dir=$(dirname "$script_dir")
|
||||
|
||||
qmake_path=$(command -v qmake)
|
||||
|
||||
echo "Running LDD on chatterino binary:"
|
||||
ldd ./bin/chatterino
|
||||
|
@ -42,8 +41,7 @@ echo "Run LinuxDeployQT"
|
|||
appdir/usr/share/applications/*.desktop \
|
||||
-no-translations \
|
||||
-bundle-non-qt-libs \
|
||||
-unsupported-allow-new-glibc \
|
||||
-qmake="$qmake_path"
|
||||
-unsupported-allow-new-glibc
|
||||
|
||||
rm -rf appdir/home
|
||||
rm -f appdir/AppRun
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
git clone http://code.qt.io/qt/qtstyleplugins.git
|
||||
cd qtstyleplugins
|
||||
/opt/qt512/bin/qmake CONFIG+=release
|
||||
make -j$(nproc)
|
||||
sudo make install
|
||||
cd -
|
|
@ -3,11 +3,11 @@ freebsd_instance:
|
|||
|
||||
task:
|
||||
install_script:
|
||||
- pkg install -y boost-libs git qt5-buildtools qt5-concurrent qt5-core qt5-multimedia qt5-qmake qt5-svg qtkeychain rapidjson
|
||||
- pkg install -y boost-libs git qt5-buildtools qt5-concurrent qt5-core qt5-multimedia qt5-svg qtkeychain qt5-qmake cmake qt5-linguist
|
||||
script: |
|
||||
git submodule init
|
||||
git submodule update
|
||||
mkdir build
|
||||
cd build
|
||||
qmake-qt5 RAPIDJSON_SYSTEM=1 QMAKE_CC="cc" QMAKE_CXX="c++" QMAKE_LINK_C="cc" QMAKE_LINK_C_SHLIB="cc" QMAKE_LINK="c++" QMAKE_LINK_SHLIB="c++" QMAKE_CFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " QMAKE_CXXFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " QMAKE_LFLAGS="-fstack-protector-strong" QMAKE_LIBS="" QMAKE_CFLAGS_DEBUG="" QMAKE_CFLAGS_RELEASE="" QMAKE_CXXFLAGS_DEBUG="" QMAKE_CXXFLAGS_RELEASE="" PREFIX="/usr/local" CONFIG+="release" CONFIG-="debug separate_debug_info" -recursive ..
|
||||
cmake CMAKE_C_COMPILER="cc" -DCMAKE_CXX_COMPILER="c++" -DCMAKE_C_FLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " -DCMAKE_CXX_FLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " -DLINK_OPTIONS="-fstack-protector-strong" -DCMAKE_INSTALL_PREFIX="/usr/local" -DCMAKE_BUILD_TYPE="release" ..
|
||||
make -j $(getconf _NPROCESSORS_ONLN)
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
FROM ubuntu:18.04
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get -y install wget libdbus-1-dev qt5-default
|
||||
|
||||
RUN apt-get -y install libboost-dev libssl-dev libboost-system-dev libboost-filesystem-dev
|
||||
RUN apt-get -y install libpulse-dev
|
||||
|
||||
WORKDIR /build
|
||||
|
||||
RUN wget --quiet http://download.qt.io/official_releases/qt/5.12/5.12.4/qt-opensource-linux-x64-5.12.4.run && chmod +x *qt*.run
|
||||
ADD qt-installer-noninteractive.qs .
|
||||
RUN ls -la
|
||||
RUN ./qt-opensource-linux-x64-*.run --platform minimal --verbose --script qt-installer-noninteractive.qs
|
||||
RUN qtchooser -install 5.12.4 ~/Qt/5.12.4/gcc_64/bin/qmake
|
||||
ENV QT_SELECT=5.12.4
|
||||
RUN qmake --version
|
||||
|
||||
CMD ["/bin/sh"]
|
||||
ENTRYPOINT ["./tools/docker/build.sh"]
|
|
@ -1,81 +0,0 @@
|
|||
// Emacs mode hint: -*- mode: JavaScript -*-
|
||||
|
||||
function Controller() {
|
||||
installer.autoRejectMessageBoxes();
|
||||
installer.installationFinished.connect(function() {
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.WelcomePageCallback = function() {
|
||||
// click delay here because the next button is initially disabled for ~1 second
|
||||
gui.clickButton(buttons.NextButton, 3000);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.CredentialsPageCallback = function() {
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.IntroductionPageCallback = function() {
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.TargetDirectoryPageCallback = function()
|
||||
{
|
||||
gui.currentPageWidget().TargetDirectoryLineEdit.setText(installer.value("HomeDir") + "/Qt");
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.ComponentSelectionPageCallback = function() {
|
||||
var widget = gui.currentPageWidget();
|
||||
|
||||
widget.deselectAll();
|
||||
widget.selectComponent("qt.qt5.5124.gcc_64");
|
||||
|
||||
// widget.deselectComponent("qt.tools.qtcreator");
|
||||
// widget.deselectComponent("qt.55.qt3d");
|
||||
// widget.deselectComponent("qt.55.qtcanvas3d");
|
||||
// widget.deselectComponent("qt.55.qtlocation");
|
||||
// widget.deselectComponent("qt.55.qtquick1");
|
||||
// widget.deselectComponent("qt.55.qtscript");
|
||||
// widget.deselectComponent("qt.55.qtwebengine");
|
||||
// widget.deselectComponent("qt.extras");
|
||||
// widget.deselectComponent("qt.tools.doc");
|
||||
// widget.deselectComponent("qt.tools.examples");
|
||||
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.LicenseAgreementPageCallback = function() {
|
||||
gui.currentPageWidget().AcceptLicenseRadioButton.setChecked(true);
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.StartMenuDirectoryPageCallback = function() {
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.ReadyForInstallationPageCallback = function()
|
||||
{
|
||||
gui.clickButton(buttons.NextButton);
|
||||
|
||||
}
|
||||
|
||||
Controller.prototype.FinishedPageCallback = function() {
|
||||
var checkBoxForm = gui.currentPageWidget().LaunchQtCreatorCheckBoxForm;
|
||||
if (checkBoxForm && checkBoxForm.launchQtCreatorCheckBox) {
|
||||
checkBoxForm.launchQtCreatorCheckBox.checked = false;
|
||||
|
||||
}
|
||||
gui.clickButton(buttons.FinishButton);
|
||||
|
||||
}
|
115
.github/workflows/build.yml
vendored
115
.github/workflows/build.yml
vendored
|
@ -19,12 +19,10 @@ jobs:
|
|||
matrix:
|
||||
os: [windows-latest, ubuntu-latest, macos-latest]
|
||||
qt-version: [5.15.2, 5.12.12]
|
||||
build-system: [qmake, cmake]
|
||||
pch: [true]
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
qt-version: 5.15.2
|
||||
build-system: cmake
|
||||
pch: false
|
||||
fail-fast: false
|
||||
|
||||
|
@ -84,21 +82,7 @@ jobs:
|
|||
uses: ilammy/msvc-dev-cmd@v1.10.0
|
||||
|
||||
- name: Build (Windows)
|
||||
if: startsWith(matrix.os, 'windows') && matrix.build-system == 'qmake'
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
conan install .. -b missing
|
||||
qmake ..
|
||||
set cl=/MP
|
||||
nmake /S /NOLOGO
|
||||
windeployqt release/chatterino.exe --release --no-compiler-runtime --no-translations --no-opengl-sw --dir Chatterino2/
|
||||
cp release/chatterino.exe Chatterino2/
|
||||
echo nightly > Chatterino2/modes
|
||||
7z a chatterino-windows-x86-64.zip Chatterino2/
|
||||
|
||||
- name: Build with CMake (Windows)
|
||||
if: startsWith(matrix.os, 'windows') && matrix.build-system == 'cmake'
|
||||
if: startsWith(matrix.os, 'windows')
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
|
@ -115,7 +99,7 @@ jobs:
|
|||
if: startsWith(matrix.os, 'windows')
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: chatterino-windows-x86-64-${{ matrix.qt-version }}-${{ matrix.build-system }}.zip
|
||||
name: chatterino-windows-x86-64-${{ matrix.qt-version }}.zip
|
||||
path: build/chatterino-windows-x86-64.zip
|
||||
|
||||
- name: Clean Conan pkgs
|
||||
|
@ -149,16 +133,7 @@ jobs:
|
|||
libxcb-xinerama0
|
||||
|
||||
- name: Build (Ubuntu)
|
||||
if: startsWith(matrix.os, 'ubuntu') && matrix.build-system == 'qmake'
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
qmake PREFIX=/usr ..
|
||||
make -j$(nproc)
|
||||
shell: bash
|
||||
|
||||
- name: Build with CMake (Ubuntu)
|
||||
if: startsWith(matrix.os, 'ubuntu') && matrix.build-system == 'cmake'
|
||||
if: startsWith(matrix.os, 'ubuntu')
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
|
@ -189,14 +164,14 @@ jobs:
|
|||
if: startsWith(matrix.os, 'ubuntu')
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Chatterino-x86_64-${{ matrix.qt-version }}-${{ matrix.build-system }}.AppImage
|
||||
name: Chatterino-x86_64-${{ matrix.qt-version }}.AppImage
|
||||
path: build/Chatterino-x86_64.AppImage
|
||||
|
||||
- name: Upload artifact - .deb (Ubuntu)
|
||||
if: startsWith(matrix.os, 'ubuntu')
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Chatterino-${{ matrix.qt-version }}-${{ matrix.build-system }}.deb
|
||||
name: Chatterino-${{ matrix.qt-version }}.deb
|
||||
path: build/Chatterino.deb
|
||||
|
||||
# MACOS
|
||||
|
@ -207,16 +182,7 @@ jobs:
|
|||
shell: bash
|
||||
|
||||
- name: Build (MacOS)
|
||||
if: startsWith(matrix.os, 'macos') && matrix.build-system == 'qmake'
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
$Qt5_DIR/bin/qmake .. DEFINES+=$dateOfBuild
|
||||
make -j$(sysctl -n hw.logicalcpu)
|
||||
shell: bash
|
||||
|
||||
- name: Build with CMake (MacOS)
|
||||
if: startsWith(matrix.os, 'macos') && matrix.build-system == 'cmake'
|
||||
if: startsWith(matrix.os, 'macos')
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
|
@ -242,7 +208,7 @@ jobs:
|
|||
if: startsWith(matrix.os, 'macos')
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: chatterino-osx-${{ matrix.qt-version }}-${{ matrix.build-system }}.dmg
|
||||
name: chatterino-osx-${{ matrix.qt-version }}.dmg
|
||||
path: build/chatterino-osx.dmg
|
||||
|
||||
create-release:
|
||||
|
@ -266,44 +232,24 @@ jobs:
|
|||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: chatterino-windows-x86-64-5.15.2-qmake.zip
|
||||
name: chatterino-windows-x86-64-5.15.2.zip
|
||||
path: windows/
|
||||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: chatterino-windows-x86-64-5.15.2-cmake.zip
|
||||
path: windows-cmake/
|
||||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: Chatterino-x86_64-5.15.2-qmake.AppImage
|
||||
name: Chatterino-x86_64-5.15.2.AppImage
|
||||
path: linux/
|
||||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: Chatterino-x86_64-5.15.2-cmake.AppImage
|
||||
path: linux-cmake/
|
||||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: Chatterino-5.15.2-qmake.deb
|
||||
name: Chatterino-5.15.2.deb
|
||||
path: ubuntu/
|
||||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: Chatterino-5.15.2-cmake.deb
|
||||
path: ubuntu-cmake/
|
||||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: chatterino-osx-5.15.2-qmake.dmg
|
||||
name: chatterino-osx-5.15.2.dmg
|
||||
path: macos/
|
||||
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: chatterino-osx-5.15.2-cmake.dmg
|
||||
path: macos-cmake/
|
||||
|
||||
# TODO: Extract dmg and appimage
|
||||
|
||||
# - name: Read upload URL into output
|
||||
|
@ -321,16 +267,6 @@ jobs:
|
|||
asset_name: chatterino-windows-x86-64.zip
|
||||
asset_content_type: application/zip
|
||||
|
||||
- name: Upload release asset (Windows) CMake
|
||||
uses: actions/upload-release-asset@v1.0.2
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
asset_path: ./windows-cmake/chatterino-windows-x86-64.zip
|
||||
asset_name: test-cmake-chatterino-windows-x86-64.zip
|
||||
asset_content_type: application/zip
|
||||
|
||||
- name: Upload release asset (Ubuntu)
|
||||
uses: actions/upload-release-asset@v1.0.2
|
||||
env:
|
||||
|
@ -341,16 +277,6 @@ jobs:
|
|||
asset_name: Chatterino-x86_64.AppImage
|
||||
asset_content_type: application/x-executable
|
||||
|
||||
- name: Upload release asset (Ubuntu) CMake
|
||||
uses: actions/upload-release-asset@v1.0.2
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
asset_path: ./linux-cmake/Chatterino-x86_64.AppImage
|
||||
asset_name: test-cmake-Chatterino-x86_64.AppImage
|
||||
asset_content_type: application/x-executable
|
||||
|
||||
- name: Upload release asset (Ubuntu .deb)
|
||||
uses: actions/upload-release-asset@v1.0.2
|
||||
env:
|
||||
|
@ -361,16 +287,6 @@ jobs:
|
|||
asset_name: Chatterino-x86_64.deb
|
||||
asset_content_type: application/vnd.debian.binary-package
|
||||
|
||||
- name: Upload release asset (Ubuntu .deb) CMake
|
||||
uses: actions/upload-release-asset@v1.0.2
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
asset_path: ./ubuntu-cmake/Chatterino.deb
|
||||
asset_name: test-cmake-Chatterino-x86_64.deb
|
||||
asset_content_type: application/vnd.debian.binary-package
|
||||
|
||||
- name: Upload release asset (MacOS)
|
||||
uses: actions/upload-release-asset@v1.0.2
|
||||
env:
|
||||
|
@ -381,12 +297,3 @@ jobs:
|
|||
asset_name: chatterino-osx.dmg
|
||||
asset_content_type: application/x-bzip2
|
||||
|
||||
- name: Upload release asset (MacOS) CMake
|
||||
uses: actions/upload-release-asset@v1.0.2
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
asset_path: ./macos-cmake/chatterino-osx.dmg
|
||||
asset_name: test-cmake-chatterino-osx.dmg
|
||||
asset_content_type: application/x-bzip2
|
||||
|
|
|
@ -9,8 +9,17 @@ high that this also works on older FreeBSD releases, architectures and
|
|||
FreeBSD 13.0-CURRENT.
|
||||
|
||||
1. Install build dependencies from package sources (or build from the
|
||||
ports tree): `# pkg install qt5-core qt5-multimedia qt5-svg qt5-qmake qt5-buildtools gstreamer-plugins-good boost-libs rapidjson`
|
||||
1. Go into the project directory
|
||||
1. Create a build folder and go into it (`mkdir build && cd build`)
|
||||
1. Proceed to compiling using the command
|
||||
`qmake .. && make`
|
||||
ports tree): `# pkg install qt5-core qt5-multimedia qt5-svg qt5-buildtools gstreamer-plugins-good boost-libs rapidjson cmake`
|
||||
1. In the project directory, create a build directory and enter it
|
||||
```sh
|
||||
mkdir build
|
||||
cd build
|
||||
```
|
||||
1. Generate build files
|
||||
```sh
|
||||
cmake ..
|
||||
```
|
||||
1. Build the project
|
||||
```sh
|
||||
make
|
||||
```
|
||||
|
|
|
@ -2,80 +2,49 @@
|
|||
|
||||
Note on Qt version compatibility: If you are installing Qt from a package manager, please ensure the version you are installing is at least **Qt 5.12 or newer**.
|
||||
|
||||
## Ubuntu 20.04
|
||||
## Install dependencies
|
||||
|
||||
### Ubuntu 20.04
|
||||
|
||||
_Most likely works the same for other Debian-like distros_
|
||||
|
||||
1. Install all of the dependencies using `sudo apt install qttools5-dev qtmultimedia5-dev libqt5svg5-dev libboost-dev libssl-dev libboost-system-dev libboost-filesystem-dev cmake g++`
|
||||
Install all of the dependencies using `sudo apt install qttools5-dev qtmultimedia5-dev libqt5svg5-dev libboost-dev libssl-dev libboost-system-dev libboost-filesystem-dev cmake g++`
|
||||
|
||||
### Compiling through Qt Creator
|
||||
### Arch Linux
|
||||
|
||||
1. Install C++ IDE Qt Creator by using `sudo apt install qtcreator`
|
||||
1. Open `chatterino.pro` with Qt Creator and select build
|
||||
Install all of the dependencies using `sudo pacman -S --needed qt5-base qt5-multimedia qt5-svg qt5-tools gst-plugins-ugly gst-plugins-good boost rapidjson pkgconf openssl cmake`
|
||||
|
||||
### Manually
|
||||
Alternatively you can use the [chatterino2-git](https://aur.archlinux.org/packages/chatterino2-git/) package to build and install Chatterino for you.
|
||||
|
||||
1. Go into the project directory
|
||||
1. Create a build folder and go into it (`mkdir build && cd build`)
|
||||
1. Use one of the options below to compile it
|
||||
|
||||
### Using CMake
|
||||
|
||||
`cmake .. && make`
|
||||
|
||||
### Using QMake
|
||||
|
||||
`qmake .. && make`
|
||||
|
||||
## Arch Linux
|
||||
|
||||
### Through AUR
|
||||
|
||||
- [chatterino2-git](https://aur.archlinux.org/packages/chatterino2-git/)
|
||||
|
||||
### Manually
|
||||
|
||||
1. Install all of the dependencies using `sudo pacman -S --needed qt5-base qt5-multimedia qt5-svg qt5-tools gst-plugins-ugly gst-plugins-good boost rapidjson pkgconf openssl cmake`
|
||||
1. Go into the project directory
|
||||
1. Create a build folder and go into it (`mkdir build && cd build`)
|
||||
1. Use one of the options below to compile it
|
||||
|
||||
### Using CMake
|
||||
|
||||
`cmake .. && make`
|
||||
|
||||
### Using QMake
|
||||
|
||||
`qmake .. && make`
|
||||
|
||||
## Fedora 28 and above
|
||||
### Fedora 28 and above
|
||||
|
||||
_Most likely works the same for other Red Hat-like distros. Substitute `dnf` with `yum`._
|
||||
|
||||
1. Install all of the dependencies using `sudo dnf install qt5-qtbase-devel qt5-qtmultimedia-devel qt5-qtsvg-devel qt5-linguist libsecret-devel openssl-devel boost-devel cmake`
|
||||
1. Go into the project directory
|
||||
1. Create a build folder and go into it (`mkdir build && cd build`)
|
||||
1. Use one of the options below to compile it
|
||||
Install all of the dependencies using `sudo dnf install qt5-qtbase-devel qt5-qtmultimedia-devel qt5-qtsvg-devel qt5-linguist libsecret-devel openssl-devel boost-devel cmake`
|
||||
|
||||
### Using CMake
|
||||
### NixOS 18.09+
|
||||
|
||||
`cmake .. && make -j$(nproc)`
|
||||
Enter the development environment with all of the dependencies: `nix-shell -p openssl boost qt5.full pkg-config cmake`
|
||||
|
||||
### Using QMake
|
||||
## Compile
|
||||
|
||||
`qmake-qt5 .. && make -j$(nproc)`
|
||||
### Through Qt Creator
|
||||
|
||||
## NixOS 18.09+
|
||||
1. Install C++ IDE Qt Creator by using `sudo apt install qtcreator`
|
||||
1. Open `CMakeLists.txt` with Qt Creator and select build
|
||||
|
||||
1. Enter the development environment with all of the dependencies: `nix-shell -p openssl boost qt5.full pkg-config cmake`
|
||||
1. Go into the project directory
|
||||
1. Create a build folder and go into it (`mkdir build && cd build`)
|
||||
1. Use one of the options below to compile it
|
||||
## Manually
|
||||
|
||||
### Using CMake
|
||||
|
||||
`cmake .. && make`
|
||||
|
||||
### Using QMake
|
||||
|
||||
`qmake .. && make`
|
||||
1. In the project directory, create a build directory and enter it
|
||||
```sh
|
||||
mkdir build
|
||||
cd build
|
||||
```
|
||||
1. Generate build files
|
||||
```sh
|
||||
cmake ..
|
||||
```
|
||||
1. Build the project
|
||||
```sh
|
||||
make
|
||||
```
|
||||
|
|
|
@ -1,21 +1,18 @@
|
|||
# Building on macOS
|
||||
|
||||
#### Note - If you want to develop Chatterino 2 you might also want to install Qt Creator (make sure to install **Qt 5.12 or newer**), it is not required though and any C++ IDE (might require additional setup for cmake to find Qt libraries) or a normal text editor + running qmake/cmake from terminal should work as well
|
||||
#### Note - If you want to develop Chatterino 2 you might also want to install Qt Creator (make sure to install **Qt 5.12 or newer**), it is not required though and any C++ IDE (might require additional setup for cmake to find Qt libraries) or a normal text editor + running cmake from terminal should work as well
|
||||
|
||||
#### Note - Chatterino 2 is only tested on macOS 10.14 and above - anything below that is considered unsupported. It may or may not work on earlier versions
|
||||
|
||||
1. Install Xcode and Xcode Command Line Utilities
|
||||
2. Start Xcode, go into Settings -> Locations, and activate your Command Line Tools
|
||||
3. Install brew https://brew.sh/
|
||||
4. Install the dependencies using `brew install boost openssl rapidjson`
|
||||
5. Install Qt5 using `brew install qt@5`
|
||||
6. Step 5 should output some directions to add Qt to your path, you will need to do this for qmake
|
||||
7. (_OPTIONAL_) Install [ccache](https://ccache.dev) (used to speed up compilation by using cached results from previous builds) using `brew install ccache`
|
||||
8. Go into the project directory
|
||||
9. Create a build folder and go into it (`mkdir build && cd build`)
|
||||
10. Compile using `qmake .. && make`
|
||||
|
||||
_If you want to use cmake instead of qmake, just replace the above qmake command with cmake_
|
||||
1. Start Xcode, go into Settings -> Locations, and activate your Command Line Tools
|
||||
1. Install brew https://brew.sh/
|
||||
1. Install the dependencies using `brew install boost openssl rapidjson cmake`
|
||||
1. Install Qt5 using `brew install qt@5`
|
||||
1. (_OPTIONAL_) Install [ccache](https://ccache.dev) (used to speed up compilation by using cached results from previous builds) using `brew install ccache`
|
||||
1. Go into the project directory
|
||||
1. Create a build folder and go into it (`mkdir build && cd build`)
|
||||
1. Compile using `cmake .. && make`
|
||||
|
||||
If the Project does not build at this point, you might need to add additional Paths/Libs, because brew does not install openssl and boost in the common path. You can get their path using
|
||||
|
||||
|
|
|
@ -83,7 +83,7 @@ Compiling with Breakpad support enables crash reports that can be of use for dev
|
|||
|
||||
## Run the build in Qt Creator
|
||||
|
||||
1. Open the `chatterino.pro` file by double-clicking it, or by opening it via Qt Creator.
|
||||
1. Open the `CMakeLists.txt` file by double-clicking it, or by opening it via Qt Creator.
|
||||
2. You will be presented with a screen that is titled "Configure Project". In this screen, you should have at least one option present ready to be configured, like this:
|
||||
![Qt Create Configure Project screenshot](https://user-images.githubusercontent.com/69117321/169887645-2ae0871a-fe8a-4eb9-98db-7b996dea3a54.png)
|
||||
3. Select the profile(s) you want to build with and click "Configure Project".
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
## Unversioned
|
||||
|
||||
- Major: Added multi-channel searching to search dialog via keyboard shortcut. [Ctrl+Shift+F by default] (#3694)
|
||||
- Major: Added multi-channel searching to search dialog via keyboard shortcut. (Ctrl+Shift+F by default) (#3694)
|
||||
- Minor: Added `is:first-msg` search option. (#3700)
|
||||
- Minor: Added quotation marks in the permitted/blocked Automod messages for clarity. (#3654)
|
||||
- Minor: Added a `Scroll to top` keyboard shortcut for splits. (#3802)
|
||||
|
@ -42,6 +42,7 @@
|
|||
- Bugfix: Adopt popup windows in order to force floating behavior on some window managers. (#3836)
|
||||
- Bugfix: Fix split focusing being broken in certain circumstances when the "Show input when it's empty" setting was disabled. (#3838)
|
||||
- Bugfix: Always refresh tab when a contained split's channel is set. (#3849)
|
||||
- Dev: Remove official support for QMake. (#3839)
|
||||
- Dev: Rewrite LimitedQueue (#3798)
|
||||
- Dev: Overhaul highlight system by moving all checks into a Controller allowing for easier tests. (#3399, #3801, #3835)
|
||||
- Dev: Use Game Name returned by Get Streams instead of querying it from the Get Games API. (#3662)
|
||||
|
|
|
@ -30,6 +30,8 @@ endif()
|
|||
if (USE_CONAN OR CONAN_EXPORTED)
|
||||
include(${CMAKE_CURRENT_BINARY_DIR}/conanbuildinfo.cmake)
|
||||
conan_basic_setup(TARGETS NO_OUTPUT_DIRS)
|
||||
else ()
|
||||
set(QT_CREATOR_SKIP_CONAN_SETUP ON)
|
||||
endif()
|
||||
|
||||
find_program(CCACHE_PROGRAM ccache)
|
||||
|
|
20
Jenkinsfile
vendored
20
Jenkinsfile
vendored
|
@ -1,20 +0,0 @@
|
|||
pipeline {
|
||||
agent any
|
||||
|
||||
stages {
|
||||
stage('Build') {
|
||||
parallel {
|
||||
stage('GCC') {
|
||||
steps {
|
||||
sh 'mkdir -p build-linux-gcc && cd build-linux-gcc && make distclean; qmake .. && make'
|
||||
}
|
||||
}
|
||||
stage('Clang') {
|
||||
steps {
|
||||
sh 'mkdir -p build-linux-clang && cd build-linux-clang && make distclean; qmake -spec linux-clang .. && make'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
98
_.travis.yml
98
_.travis.yml
|
@ -1,98 +0,0 @@
|
|||
|
||||
matrix:
|
||||
include:
|
||||
# gcc build
|
||||
- os: linux
|
||||
name: Linux Build (Bionic)
|
||||
dist: bionic
|
||||
language: cpp
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- sourceline: 'ppa:beineri/opt-qt-5.12.3-bionic'
|
||||
packages:
|
||||
- qt512-meta-minimal
|
||||
- qt512multimedia
|
||||
- qt512svg
|
||||
- libboost-dev
|
||||
- libgl1-mesa-dev
|
||||
- libboost-system-dev
|
||||
- libboost-filesystem-dev
|
||||
- libgtk2.0-dev
|
||||
|
||||
install:
|
||||
- sh ./.CI/InstallQTStylePlugins.sh
|
||||
|
||||
script:
|
||||
- dateOfBuild="CHATTERINO_NIGHTLY_VERSION_STRING=\"\\\"$(date +%d.%m.%Y)\\\"\""
|
||||
- /opt/qt512/bin/qmake CONFIG+=release PREFIX=/usr DEFINES+=$dateOfBuild
|
||||
- make -j$(nproc)
|
||||
|
||||
before_deploy:
|
||||
- git config --global user.email "builds@travis-ci.com"
|
||||
- git config --global user.name "Travis CI"
|
||||
- export GIT_TAG=nightly-build
|
||||
- export TRAVIS_TAG=nightly-build
|
||||
- git tag $GIT_TAG -f
|
||||
- sh ./.CI/CreateAppImage.sh
|
||||
|
||||
deploy:
|
||||
skip_cleanup: true
|
||||
overwrite: true
|
||||
provider: releases
|
||||
api_key:
|
||||
secure: ZzS55wlwtLAVEBaDDMqiuqZwuTpvLbNnaNw0enfiqpjWT7hgbbp/SBw2rbYIkVqm7tBHCLnEzKto6p4Gz6ROo0gGACARmx7EwIloX18rMCuBWygNHRyVruDSlmEOLWRqYByDbUdCkKhYr9aegnkm7zhzCmSBCTW28/uVlxM2bTHIgqKEpB4k1W8OqKdJDxqZKeF4r7nDNSOx5ylhpiK+WNFK8yfiaF1SQlSwsdv9o1RkbJlew7iigvHvEM2kDMkiMWYlJ2khkUWVCVQDQGe4/ya5pgTIHDLu5sZuclp5zhgfDf1U3STvsbQWvxJfsmCId7IQHJ83OSFeoUf6y849i3GMqlNi3aXrxEx0fi0dILQ76/Sj246FPMA4kC0/W49uaxqD784wFuJDjSWeWwi/NPoJ/gz0mGZy+08BoztOGqqOKjJJdESBYTio71N8VcK09zQ0LjXRmX+g3BbrK6a2F3hiMKeuYwdaN2/KdMMoqFDau6L3fXLdpcHKdJC8K/yzJtyyIe0CRB2nj8sZLHfxDwoRm7gOTDXq1zPL7CP9cCwCnCR6nm3CqUW/CnSWuMKpSoQRlP5EBI7zzYT2/tZc/vat5nob7Xif6yFF9fh/VHx4tC6zsfkA1nPPN3+QpdVInRo7dCVxtTqey5FdVjSiv7n11TrFhZ7+Fr5x6CZqa58=
|
||||
file: "Chatterino-x86_64.AppImage"
|
||||
prerelease: true
|
||||
on:
|
||||
branch: master
|
||||
|
||||
- os: osx
|
||||
osx_image: xcode11
|
||||
name: xcode Build
|
||||
compiler: clang
|
||||
|
||||
addons:
|
||||
homebrew:
|
||||
packages:
|
||||
- boost
|
||||
- openssl
|
||||
- rapidjson
|
||||
- qt
|
||||
- p7zip
|
||||
- create-dmg
|
||||
|
||||
script:
|
||||
- mkdir build && cd build
|
||||
- dateOfBuild="CHATTERINO_NIGHTLY_VERSION_STRING=\"\\\"$(date +%d.%m.%Y)\\\"\""
|
||||
- /usr/local/opt/qt/bin/qmake .. DEFINES+=$dateOfBuild
|
||||
- make -j8
|
||||
- /usr/local/opt/qt/bin/macdeployqt chatterino.app -dmg
|
||||
- mkdir app
|
||||
- hdiutil attach chatterino.dmg
|
||||
- cp -r /Volumes/chatterino/chatterino.app app/
|
||||
- "create-dmg \
|
||||
--volname Chatterino2 \
|
||||
--volicon ../resources/chatterino.icns \
|
||||
--icon-size 50 \
|
||||
--app-drop-link 0 0 \
|
||||
--format UDBZ \
|
||||
chatterino-osx.dmg app/"
|
||||
|
||||
before_deploy:
|
||||
- git config --global user.email "builds@travis-ci.com"
|
||||
- git config --global user.name "Travis CI"
|
||||
- export GIT_TAG=nightly-build
|
||||
- export TRAVIS_TAG=nightly-build
|
||||
- git tag $GIT_TAG -f
|
||||
|
||||
deploy:
|
||||
skip_cleanup: true
|
||||
overwrite: true
|
||||
provider: releases
|
||||
api_key:
|
||||
secure: ZzS55wlwtLAVEBaDDMqiuqZwuTpvLbNnaNw0enfiqpjWT7hgbbp/SBw2rbYIkVqm7tBHCLnEzKto6p4Gz6ROo0gGACARmx7EwIloX18rMCuBWygNHRyVruDSlmEOLWRqYByDbUdCkKhYr9aegnkm7zhzCmSBCTW28/uVlxM2bTHIgqKEpB4k1W8OqKdJDxqZKeF4r7nDNSOx5ylhpiK+WNFK8yfiaF1SQlSwsdv9o1RkbJlew7iigvHvEM2kDMkiMWYlJ2khkUWVCVQDQGe4/ya5pgTIHDLu5sZuclp5zhgfDf1U3STvsbQWvxJfsmCId7IQHJ83OSFeoUf6y849i3GMqlNi3aXrxEx0fi0dILQ76/Sj246FPMA4kC0/W49uaxqD784wFuJDjSWeWwi/NPoJ/gz0mGZy+08BoztOGqqOKjJJdESBYTio71N8VcK09zQ0LjXRmX+g3BbrK6a2F3hiMKeuYwdaN2/KdMMoqFDau6L3fXLdpcHKdJC8K/yzJtyyIe0CRB2nj8sZLHfxDwoRm7gOTDXq1zPL7CP9cCwCnCR6nm3CqUW/CnSWuMKpSoQRlP5EBI7zzYT2/tZc/vat5nob7Xif6yFF9fh/VHx4tC6zsfkA1nPPN3+QpdVInRo7dCVxtTqey5FdVjSiv7n11TrFhZ7+Fr5x6CZqa58=
|
||||
file: "chatterino-osx.dmg"
|
||||
prerelease: true
|
||||
on:
|
||||
branch: master
|
65
appveyor.yml
65
appveyor.yml
|
@ -1,65 +0,0 @@
|
|||
version: "{build}"
|
||||
branches:
|
||||
only:
|
||||
- dont-automatically-build-appveyor
|
||||
image: Visual Studio 2017
|
||||
platform: Any CPU
|
||||
clone_depth: 1
|
||||
install:
|
||||
- cmd: >-
|
||||
choco source add -n=AFG -s="https://api.bintray.com/nuget/anotherfoxguy/choco-pkg"
|
||||
|
||||
choco install conan -y
|
||||
|
||||
refreshenv
|
||||
|
||||
conan user
|
||||
|
||||
git submodule update --init --recursive
|
||||
|
||||
set QTDIR=C:\Qt\5.13\msvc2017_64
|
||||
|
||||
set PATH=%PATH%;%QTDIR%\bin
|
||||
|
||||
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x64
|
||||
build_script:
|
||||
- cmd: >-
|
||||
dir
|
||||
|
||||
mkdir build
|
||||
|
||||
cd build
|
||||
|
||||
conan install ..
|
||||
|
||||
set dateOfBuild=%date:~7,2%.%date:~4,2%.%date:~10,4%
|
||||
|
||||
qmake ../chatterino.pro DEFINES+="CHATTERINO_NIGHTLY_VERSION_STRING=\\\"'$s%dateOfBuild% '$$system(git describe --always)-$$system(git rev-list master --count)\\\""
|
||||
|
||||
set cl=/MP
|
||||
|
||||
nmake /S /NOLOGO
|
||||
|
||||
windeployqt release/chatterino.exe --release --no-compiler-runtime --no-translations --no-opengl-sw --dir Chatterino2/
|
||||
|
||||
cp release/chatterino.exe Chatterino2/
|
||||
|
||||
echo nightly > Chatterino2/modes
|
||||
|
||||
7z a chatterino-windows-x86-64.zip Chatterino2/
|
||||
artifacts:
|
||||
- path: build/chatterino-windows-x86-64.zip
|
||||
name: chatterino
|
||||
deploy:
|
||||
- provider: GitHub
|
||||
tag: nightly-build
|
||||
release: nightly-build
|
||||
description: 'nightly v$(appveyor_build_version) built 👉 $(APPVEYOR_REPO_COMMIT_TIMESTAMP) 👈\nLast change: $(APPVEYOR_REPO_COMMIT_MESSAGE) \n$(APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED)'
|
||||
auth_token:
|
||||
secure: sAJzAbiQSsYZLT+byDar9u61X0E9o35anaPMSFkOzdHeDFHjx1kW4cDP/4EEbxhx
|
||||
repository: Chatterino/chatterino2
|
||||
artifact: build/chatterino-windows-x86-64.zip
|
||||
prerelease: true
|
||||
force_update: true
|
||||
on:
|
||||
branch: master
|
699
chatterino.pro
699
chatterino.pro
|
@ -1,699 +0,0 @@
|
|||
# Exposed build flags:
|
||||
# from lib/websocketpp.pri
|
||||
# - WEBSOCKETPP_PREFIX ($$PWD by default)
|
||||
# - WEBSOCKETPP_SYSTEM (1 = true) (unix only)
|
||||
# from lib/rapidjson.pri
|
||||
# - RAPIDJSON_PREFIX ($$PWD by default)
|
||||
# - RAPIDJSON_SYSTEM (1 = true) (Linux only, uses pkg-config)
|
||||
# from lib/boost.pri
|
||||
# - BOOST_DIRECTORY (C:\local\boost\ by default) (Windows only)
|
||||
|
||||
CCACHE_BIN = $$system(which ccache)
|
||||
!isEmpty(CCACHE_BIN) {
|
||||
load(ccache)
|
||||
CONFIG+=ccache
|
||||
}
|
||||
|
||||
MINIMUM_REQUIRED_QT_VERSION = 5.11.0
|
||||
|
||||
!versionAtLeast(QT_VERSION, $$MINIMUM_REQUIRED_QT_VERSION) {
|
||||
error("You're trying to compile with Qt $$QT_VERSION, but minimum required Qt version is $$MINIMUM_REQUIRED_QT_VERSION")
|
||||
}
|
||||
|
||||
QT += widgets core gui network multimedia svg concurrent
|
||||
CONFIG += communi
|
||||
COMMUNI += core model util
|
||||
|
||||
INCLUDEPATH += src/
|
||||
TARGET = chatterino
|
||||
TEMPLATE = app
|
||||
PRECOMPILED_HEADER = src/PrecompiledHeader.hpp
|
||||
CONFIG += precompile_header
|
||||
DEFINES += CHATTERINO
|
||||
DEFINES += AB_CUSTOM_THEME
|
||||
DEFINES += AB_CUSTOM_SETTINGS
|
||||
CONFIG += AB_NOT_STANDALONE
|
||||
|
||||
useBreakpad {
|
||||
LIBS += -L$$PWD/lib/qBreakpad/handler/build
|
||||
include(lib/qBreakpad/qBreakpad.pri)
|
||||
DEFINES += C_USE_BREAKPAD
|
||||
}
|
||||
|
||||
# use C++17
|
||||
CONFIG += c++17
|
||||
|
||||
# C++17 backwards compatability
|
||||
win32-msvc* {
|
||||
QMAKE_CXXFLAGS += /std:c++17
|
||||
} else {
|
||||
QMAKE_CXXFLAGS += -std=c++17
|
||||
}
|
||||
|
||||
linux {
|
||||
LIBS += -lrt
|
||||
QMAKE_LFLAGS += -lrt
|
||||
|
||||
# Enable linking libraries using PKGCONFIG += libraryname
|
||||
CONFIG += link_pkgconfig
|
||||
}
|
||||
|
||||
macx {
|
||||
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.14
|
||||
|
||||
INCLUDEPATH += /usr/local/include
|
||||
INCLUDEPATH += /usr/local/opt/openssl/include
|
||||
LIBS += -L/usr/local/opt/openssl/lib
|
||||
}
|
||||
|
||||
# https://bugreports.qt.io/browse/QTBUG-27018
|
||||
equals(QMAKE_CXX, "clang++")|equals(QMAKE_CXX, "g++") {
|
||||
TARGET = bin/chatterino
|
||||
}
|
||||
|
||||
# Icons
|
||||
macx:ICON = resources/chatterino.icns
|
||||
win32:RC_FILE = resources/windows.rc
|
||||
|
||||
macx {
|
||||
LIBS += -L/usr/local/lib
|
||||
}
|
||||
|
||||
# Set C_DEBUG if it's a debug build
|
||||
CONFIG(debug, debug|release) {
|
||||
DEFINES += C_DEBUG
|
||||
DEFINES += QT_DEBUG
|
||||
} else {
|
||||
DEFINES += NDEBUG
|
||||
}
|
||||
|
||||
# Submodules
|
||||
include(lib/warnings.pri)
|
||||
include(lib/libcommuni.pri)
|
||||
include(lib/websocketpp.pri)
|
||||
include(lib/wintoast.pri)
|
||||
include(lib/signals.pri)
|
||||
include(lib/settings.pri)
|
||||
include(lib/serialize.pri)
|
||||
include(lib/lrucache.pri)
|
||||
include(lib/magic_enum.pri)
|
||||
include(lib/winsdk.pri)
|
||||
include(lib/rapidjson.pri)
|
||||
include(lib/qtkeychain.pri)
|
||||
|
||||
exists( $$OUT_PWD/conanbuildinfo.pri ) {
|
||||
message("Using conan packages")
|
||||
CONFIG += conan_basic_setup
|
||||
include($$OUT_PWD/conanbuildinfo.pri)
|
||||
LIBS += -lGdi32
|
||||
}
|
||||
else{
|
||||
include(lib/boost.pri)
|
||||
include(lib/openssl.pri)
|
||||
}
|
||||
|
||||
# Optional feature: QtWebEngine
|
||||
#exists ($(QTDIR)/include/QtWebEngine/QtWebEngine) {
|
||||
# message(Using QWebEngine)
|
||||
# QT += webenginewidgets
|
||||
# DEFINES += "USEWEBENGINE"
|
||||
#}
|
||||
|
||||
SOURCES += \
|
||||
src/Application.cpp \
|
||||
src/autogenerated/ResourcesAutogen.cpp \
|
||||
src/BaseSettings.cpp \
|
||||
src/BaseTheme.cpp \
|
||||
src/BrowserExtension.cpp \
|
||||
src/common/Args.cpp \
|
||||
src/common/Channel.cpp \
|
||||
src/common/ChannelChatters.cpp \
|
||||
src/common/ChatterinoSetting.cpp \
|
||||
src/common/ChatterSet.cpp \
|
||||
src/common/CompletionModel.cpp \
|
||||
src/common/Credentials.cpp \
|
||||
src/common/DownloadManager.cpp \
|
||||
src/common/Env.cpp \
|
||||
src/common/LinkParser.cpp \
|
||||
src/common/Modes.cpp \
|
||||
src/common/NetworkCommon.cpp \
|
||||
src/common/NetworkManager.cpp \
|
||||
src/common/NetworkPrivate.cpp \
|
||||
src/common/NetworkRequest.cpp \
|
||||
src/common/NetworkResult.cpp \
|
||||
src/common/QLogging.cpp \
|
||||
src/common/Version.cpp \
|
||||
src/common/WindowDescriptors.cpp \
|
||||
src/controllers/accounts/Account.cpp \
|
||||
src/controllers/accounts/AccountController.cpp \
|
||||
src/controllers/accounts/AccountModel.cpp \
|
||||
src/controllers/commands/Command.cpp \
|
||||
src/controllers/commands/CommandController.cpp \
|
||||
src/controllers/commands/CommandModel.cpp \
|
||||
src/controllers/filters/FilterModel.cpp \
|
||||
src/controllers/filters/parser/FilterParser.cpp \
|
||||
src/controllers/filters/parser/Tokenizer.cpp \
|
||||
src/controllers/filters/parser/Types.cpp \
|
||||
src/controllers/highlights/BadgeHighlightModel.cpp \
|
||||
src/controllers/highlights/HighlightBadge.cpp \
|
||||
src/controllers/highlights/HighlightBlacklistModel.cpp \
|
||||
src/controllers/highlights/HighlightController.cpp \
|
||||
src/controllers/highlights/HighlightModel.cpp \
|
||||
src/controllers/highlights/HighlightPhrase.cpp \
|
||||
src/controllers/highlights/UserHighlightModel.cpp \
|
||||
src/controllers/hotkeys/Hotkey.cpp \
|
||||
src/controllers/hotkeys/HotkeyController.cpp \
|
||||
src/controllers/hotkeys/HotkeyHelpers.cpp \
|
||||
src/controllers/hotkeys/HotkeyModel.cpp \
|
||||
src/controllers/ignores/IgnoreController.cpp \
|
||||
src/controllers/ignores/IgnoreModel.cpp \
|
||||
src/controllers/moderationactions/ModerationAction.cpp \
|
||||
src/controllers/moderationactions/ModerationActionModel.cpp \
|
||||
src/controllers/nicknames/NicknamesModel.cpp \
|
||||
src/controllers/notifications/NotificationController.cpp \
|
||||
src/controllers/notifications/NotificationModel.cpp \
|
||||
src/controllers/pings/MutedChannelModel.cpp \
|
||||
src/debug/Benchmark.cpp \
|
||||
src/main.cpp \
|
||||
src/messages/Emote.cpp \
|
||||
src/messages/Image.cpp \
|
||||
src/messages/ImageSet.cpp \
|
||||
src/messages/layouts/MessageLayout.cpp \
|
||||
src/messages/layouts/MessageLayoutContainer.cpp \
|
||||
src/messages/layouts/MessageLayoutElement.cpp \
|
||||
src/messages/Link.cpp \
|
||||
src/messages/Message.cpp \
|
||||
src/messages/MessageBuilder.cpp \
|
||||
src/messages/MessageColor.cpp \
|
||||
src/messages/MessageContainer.cpp \
|
||||
src/messages/MessageElement.cpp \
|
||||
src/messages/search/AuthorPredicate.cpp \
|
||||
src/messages/search/ChannelPredicate.cpp \
|
||||
src/messages/search/LinkPredicate.cpp \
|
||||
src/messages/search/MessageFlagsPredicate.cpp \
|
||||
src/messages/search/RegexPredicate.cpp \
|
||||
src/messages/search/SubstringPredicate.cpp \
|
||||
src/messages/SharedMessageBuilder.cpp \
|
||||
src/providers/bttv/BttvEmotes.cpp \
|
||||
src/providers/bttv/LoadBttvChannelEmote.cpp \
|
||||
src/providers/chatterino/ChatterinoBadges.cpp \
|
||||
src/providers/colors/ColorProvider.cpp \
|
||||
src/providers/emoji/Emojis.cpp \
|
||||
src/providers/ffz/FfzBadges.cpp \
|
||||
src/providers/ffz/FfzEmotes.cpp \
|
||||
src/providers/irc/AbstractIrcServer.cpp \
|
||||
src/providers/irc/Irc2.cpp \
|
||||
src/providers/irc/IrcAccount.cpp \
|
||||
src/providers/irc/IrcChannel2.cpp \
|
||||
src/providers/irc/IrcCommands.cpp \
|
||||
src/providers/irc/IrcConnection2.cpp \
|
||||
src/providers/irc/IrcMessageBuilder.cpp \
|
||||
src/providers/irc/IrcServer.cpp \
|
||||
src/providers/IvrApi.cpp \
|
||||
src/providers/LinkResolver.cpp \
|
||||
src/providers/twitch/api/Helix.cpp \
|
||||
src/providers/twitch/ChannelPointReward.cpp \
|
||||
src/providers/twitch/IrcMessageHandler.cpp \
|
||||
src/providers/twitch/PubSubActions.cpp \
|
||||
src/providers/twitch/PubSubClient.cpp \
|
||||
src/providers/twitch/PubSubManager.cpp \
|
||||
src/providers/twitch/pubsubmessages/AutoMod.cpp \
|
||||
src/providers/twitch/pubsubmessages/Base.cpp \
|
||||
src/providers/twitch/pubsubmessages/ChannelPoints.cpp \
|
||||
src/providers/twitch/pubsubmessages/ChatModeratorAction.cpp \
|
||||
src/providers/twitch/pubsubmessages/Listen.cpp \
|
||||
src/providers/twitch/pubsubmessages/Unlisten.cpp \
|
||||
src/providers/twitch/pubsubmessages/Whisper.cpp \
|
||||
src/providers/twitch/TwitchAccount.cpp \
|
||||
src/providers/twitch/TwitchAccountManager.cpp \
|
||||
src/providers/twitch/TwitchBadge.cpp \
|
||||
src/providers/twitch/TwitchBadges.cpp \
|
||||
src/providers/twitch/TwitchChannel.cpp \
|
||||
src/providers/twitch/TwitchEmotes.cpp \
|
||||
src/providers/twitch/TwitchHelpers.cpp \
|
||||
src/providers/twitch/TwitchIrcServer.cpp \
|
||||
src/providers/twitch/TwitchMessageBuilder.cpp \
|
||||
src/providers/twitch/TwitchUser.cpp \
|
||||
src/RunGui.cpp \
|
||||
src/singletons/Badges.cpp \
|
||||
src/singletons/Emotes.cpp \
|
||||
src/singletons/Fonts.cpp \
|
||||
src/singletons/helper/GifTimer.cpp \
|
||||
src/singletons/helper/LoggingChannel.cpp \
|
||||
src/singletons/Logging.cpp \
|
||||
src/singletons/NativeMessaging.cpp \
|
||||
src/singletons/Paths.cpp \
|
||||
src/singletons/Resources.cpp \
|
||||
src/singletons/Settings.cpp \
|
||||
src/singletons/Theme.cpp \
|
||||
src/singletons/Toasts.cpp \
|
||||
src/singletons/TooltipPreviewImage.cpp \
|
||||
src/singletons/Updates.cpp \
|
||||
src/singletons/WindowManager.cpp \
|
||||
src/util/AttachToConsole.cpp \
|
||||
src/util/Clipboard.cpp \
|
||||
src/util/DebugCount.cpp \
|
||||
src/util/DisplayBadge.cpp \
|
||||
src/util/FormatTime.cpp \
|
||||
src/util/FunctionEventFilter.cpp \
|
||||
src/util/FuzzyConvert.cpp \
|
||||
src/util/Helpers.cpp \
|
||||
src/util/IncognitoBrowser.cpp \
|
||||
src/util/InitUpdateButton.cpp \
|
||||
src/util/LayoutHelper.cpp \
|
||||
src/util/NuulsUploader.cpp \
|
||||
src/util/RapidjsonHelpers.cpp \
|
||||
src/util/RatelimitBucket.cpp \
|
||||
src/util/SampleData.cpp \
|
||||
src/util/SplitCommand.cpp \
|
||||
src/util/StreamerMode.cpp \
|
||||
src/util/StreamLink.cpp \
|
||||
src/util/Twitch.cpp \
|
||||
src/util/WindowsHelper.cpp \
|
||||
src/widgets/AccountSwitchPopup.cpp \
|
||||
src/widgets/AccountSwitchWidget.cpp \
|
||||
src/widgets/AttachedWindow.cpp \
|
||||
src/widgets/BasePopup.cpp \
|
||||
src/widgets/BaseWidget.cpp \
|
||||
src/widgets/BaseWindow.cpp \
|
||||
src/widgets/dialogs/BadgePickerDialog.cpp \
|
||||
src/widgets/dialogs/ChannelFilterEditorDialog.cpp \
|
||||
src/widgets/dialogs/ColorPickerDialog.cpp \
|
||||
src/widgets/dialogs/EditHotkeyDialog.cpp \
|
||||
src/widgets/dialogs/EmotePopup.cpp \
|
||||
src/widgets/dialogs/IrcConnectionEditor.cpp \
|
||||
src/widgets/dialogs/LastRunCrashDialog.cpp \
|
||||
src/widgets/dialogs/LoginDialog.cpp \
|
||||
src/widgets/dialogs/NotificationPopup.cpp \
|
||||
src/widgets/dialogs/QualityPopup.cpp \
|
||||
src/widgets/dialogs/SelectChannelDialog.cpp \
|
||||
src/widgets/dialogs/SelectChannelFiltersDialog.cpp \
|
||||
src/widgets/dialogs/SettingsDialog.cpp \
|
||||
src/widgets/dialogs/switcher/NewPopupItem.cpp \
|
||||
src/widgets/dialogs/switcher/NewTabItem.cpp \
|
||||
src/widgets/dialogs/switcher/QuickSwitcherModel.cpp \
|
||||
src/widgets/dialogs/switcher/QuickSwitcherPopup.cpp \
|
||||
src/widgets/dialogs/switcher/SwitchSplitItem.cpp \
|
||||
src/widgets/dialogs/UpdateDialog.cpp \
|
||||
src/widgets/dialogs/UserInfoPopup.cpp \
|
||||
src/widgets/dialogs/WelcomeDialog.cpp \
|
||||
src/widgets/FramelessEmbedWindow.cpp \
|
||||
src/widgets/helper/Button.cpp \
|
||||
src/widgets/helper/ChannelView.cpp \
|
||||
src/widgets/helper/ColorButton.cpp \
|
||||
src/widgets/helper/ComboBoxItemDelegate.cpp \
|
||||
src/widgets/helper/DebugPopup.cpp \
|
||||
src/widgets/helper/EditableModelView.cpp \
|
||||
src/widgets/helper/EffectLabel.cpp \
|
||||
src/widgets/helper/NotebookButton.cpp \
|
||||
src/widgets/helper/NotebookTab.cpp \
|
||||
src/widgets/helper/QColorPicker.cpp \
|
||||
src/widgets/helper/RegExpItemDelegate.cpp \
|
||||
src/widgets/helper/TrimRegExpValidator.cpp \
|
||||
src/widgets/helper/ResizingTextEdit.cpp \
|
||||
src/widgets/helper/ScrollbarHighlight.cpp \
|
||||
src/widgets/helper/SearchPopup.cpp \
|
||||
src/widgets/helper/SettingsDialogTab.cpp \
|
||||
src/widgets/helper/SignalLabel.cpp \
|
||||
src/widgets/helper/TitlebarButton.cpp \
|
||||
src/widgets/Label.cpp \
|
||||
src/widgets/listview/GenericItemDelegate.cpp \
|
||||
src/widgets/listview/GenericListItem.cpp \
|
||||
src/widgets/listview/GenericListModel.cpp \
|
||||
src/widgets/listview/GenericListView.cpp \
|
||||
src/widgets/Notebook.cpp \
|
||||
src/widgets/Scrollbar.cpp \
|
||||
src/widgets/settingspages/AboutPage.cpp \
|
||||
src/widgets/settingspages/AccountsPage.cpp \
|
||||
src/widgets/settingspages/CommandPage.cpp \
|
||||
src/widgets/settingspages/ExternalToolsPage.cpp \
|
||||
src/widgets/settingspages/FiltersPage.cpp \
|
||||
src/widgets/settingspages/GeneralPage.cpp \
|
||||
src/widgets/settingspages/GeneralPageView.cpp \
|
||||
src/widgets/settingspages/HighlightingPage.cpp \
|
||||
src/widgets/settingspages/IgnoresPage.cpp \
|
||||
src/widgets/settingspages/KeyboardSettingsPage.cpp \
|
||||
src/widgets/settingspages/ModerationPage.cpp \
|
||||
src/widgets/settingspages/NicknamesPage.cpp \
|
||||
src/widgets/settingspages/NotificationPage.cpp \
|
||||
src/widgets/settingspages/SettingsPage.cpp \
|
||||
src/widgets/splits/ClosedSplits.cpp \
|
||||
src/widgets/splits/InputCompletionItem.cpp \
|
||||
src/widgets/splits/InputCompletionPopup.cpp \
|
||||
src/widgets/splits/Split.cpp \
|
||||
src/widgets/splits/SplitContainer.cpp \
|
||||
src/widgets/splits/SplitHeader.cpp \
|
||||
src/widgets/splits/SplitInput.cpp \
|
||||
src/widgets/splits/SplitOverlay.cpp \
|
||||
src/widgets/StreamView.cpp \
|
||||
src/widgets/TooltipWidget.cpp \
|
||||
src/widgets/Window.cpp \
|
||||
|
||||
HEADERS += \
|
||||
src/Application.hpp \
|
||||
src/autogenerated/ResourcesAutogen.hpp \
|
||||
src/BaseSettings.hpp \
|
||||
src/BaseTheme.hpp \
|
||||
src/BrowserExtension.hpp \
|
||||
src/common/Aliases.hpp \
|
||||
src/common/Args.hpp \
|
||||
src/common/Atomic.hpp \
|
||||
src/common/Channel.hpp \
|
||||
src/common/ChannelChatters.hpp \
|
||||
src/common/ChatterinoSetting.hpp \
|
||||
src/common/ChatterSet.hpp \
|
||||
src/common/Common.hpp \
|
||||
src/common/CompletionModel.hpp \
|
||||
src/common/ConcurrentMap.hpp \
|
||||
src/common/Credentials.hpp \
|
||||
src/common/DownloadManager.hpp \
|
||||
src/common/Env.hpp \
|
||||
src/common/FlagsEnum.hpp \
|
||||
src/common/IrcColors.hpp \
|
||||
src/common/LinkParser.hpp \
|
||||
src/common/Modes.hpp \
|
||||
src/common/NetworkCommon.hpp \
|
||||
src/common/NetworkManager.hpp \
|
||||
src/common/NetworkPrivate.hpp \
|
||||
src/common/NetworkRequest.hpp \
|
||||
src/common/NetworkResult.hpp \
|
||||
src/common/NullablePtr.hpp \
|
||||
src/common/Outcome.hpp \
|
||||
src/common/ProviderId.hpp \
|
||||
src/common/QLogging.hpp \
|
||||
src/common/SignalVector.hpp \
|
||||
src/common/SignalVectorModel.hpp \
|
||||
src/common/Singleton.hpp \
|
||||
src/common/UniqueAccess.hpp \
|
||||
src/common/Version.hpp \
|
||||
src/common/WindowDescriptors.hpp \
|
||||
src/controllers/accounts/Account.hpp \
|
||||
src/controllers/accounts/AccountController.hpp \
|
||||
src/controllers/accounts/AccountModel.hpp \
|
||||
src/controllers/commands/Command.hpp \
|
||||
src/controllers/commands/CommandController.hpp \
|
||||
src/controllers/commands/CommandModel.hpp \
|
||||
src/controllers/filters/FilterModel.hpp \
|
||||
src/controllers/filters/FilterRecord.hpp \
|
||||
src/controllers/filters/FilterSet.hpp \
|
||||
src/controllers/filters/parser/FilterParser.hpp \
|
||||
src/controllers/filters/parser/Tokenizer.hpp \
|
||||
src/controllers/filters/parser/Types.hpp \
|
||||
src/controllers/highlights/BadgeHighlightModel.hpp \
|
||||
src/controllers/highlights/HighlightBadge.hpp \
|
||||
src/controllers/highlights/HighlightBlacklistModel.hpp \
|
||||
src/controllers/highlights/HighlightBlacklistUser.hpp \
|
||||
src/controllers/highlights/HighlightController.hpp \
|
||||
src/controllers/highlights/HighlightModel.hpp \
|
||||
src/controllers/highlights/HighlightPhrase.hpp \
|
||||
src/controllers/highlights/UserHighlightModel.hpp \
|
||||
src/controllers/hotkeys/ActionNames.hpp \
|
||||
src/controllers/hotkeys/Hotkey.hpp \
|
||||
src/controllers/hotkeys/HotkeyCategory.hpp \
|
||||
src/controllers/hotkeys/HotkeyController.hpp \
|
||||
src/controllers/hotkeys/HotkeyHelpers.hpp \
|
||||
src/controllers/hotkeys/HotkeyModel.hpp \
|
||||
src/controllers/ignores/IgnoreController.hpp \
|
||||
src/controllers/ignores/IgnoreModel.hpp \
|
||||
src/controllers/ignores/IgnorePhrase.hpp \
|
||||
src/controllers/moderationactions/ModerationAction.hpp \
|
||||
src/controllers/moderationactions/ModerationActionModel.hpp \
|
||||
src/controllers/nicknames/Nickname.hpp \
|
||||
src/controllers/nicknames/NicknamesModel.hpp \
|
||||
src/controllers/notifications/NotificationController.hpp \
|
||||
src/controllers/notifications/NotificationModel.hpp \
|
||||
src/controllers/pings/MutedChannelModel.hpp \
|
||||
src/debug/AssertInGuiThread.hpp \
|
||||
src/debug/Benchmark.hpp \
|
||||
src/ForwardDecl.hpp \
|
||||
src/messages/Emote.hpp \
|
||||
src/messages/Image.hpp \
|
||||
src/messages/ImageSet.hpp \
|
||||
src/messages/layouts/MessageLayout.hpp \
|
||||
src/messages/layouts/MessageLayoutContainer.hpp \
|
||||
src/messages/layouts/MessageLayoutElement.hpp \
|
||||
src/messages/LimitedQueue.hpp \
|
||||
src/messages/LimitedQueueSnapshot.hpp \
|
||||
src/messages/Link.hpp \
|
||||
src/messages/Message.hpp \
|
||||
src/messages/MessageBuilder.hpp \
|
||||
src/messages/MessageColor.hpp \
|
||||
src/messages/MessageContainer.hpp \
|
||||
src/messages/MessageElement.hpp \
|
||||
src/messages/MessageParseArgs.hpp \
|
||||
src/messages/search/AuthorPredicate.hpp \
|
||||
src/messages/search/ChannelPredicate.hpp \
|
||||
src/messages/search/LinkPredicate.hpp \
|
||||
src/messages/search/MessageFlagsPredicate.hpp \
|
||||
src/messages/search/MessagePredicate.hpp \
|
||||
src/messages/search/RegexPredicate.hpp \
|
||||
src/messages/search/SubstringPredicate.hpp \
|
||||
src/messages/Selection.hpp \
|
||||
src/messages/SharedMessageBuilder.hpp \
|
||||
src/PrecompiledHeader.hpp \
|
||||
src/providers/bttv/BttvEmotes.hpp \
|
||||
src/providers/bttv/LoadBttvChannelEmote.hpp \
|
||||
src/providers/chatterino/ChatterinoBadges.hpp \
|
||||
src/providers/colors/ColorProvider.hpp \
|
||||
src/providers/emoji/Emojis.hpp \
|
||||
src/providers/ffz/FfzBadges.hpp \
|
||||
src/providers/ffz/FfzEmotes.hpp \
|
||||
src/providers/irc/AbstractIrcServer.hpp \
|
||||
src/providers/irc/Irc2.hpp \
|
||||
src/providers/irc/IrcAccount.hpp \
|
||||
src/providers/irc/IrcChannel2.hpp \
|
||||
src/providers/irc/IrcCommands.hpp \
|
||||
src/providers/irc/IrcConnection2.hpp \
|
||||
src/providers/irc/IrcMessageBuilder.hpp \
|
||||
src/providers/irc/IrcServer.hpp \
|
||||
src/providers/IvrApi.hpp \
|
||||
src/providers/LinkResolver.hpp \
|
||||
src/providers/twitch/api/Helix.hpp \
|
||||
src/providers/twitch/ChannelPointReward.hpp \
|
||||
src/providers/twitch/ChatterinoWebSocketppLogger.hpp \
|
||||
src/providers/twitch/EmoteValue.hpp \
|
||||
src/providers/twitch/IrcMessageHandler.hpp \
|
||||
src/providers/twitch/PubSubActions.hpp \
|
||||
src/providers/twitch/PubSubClient.hpp \
|
||||
src/providers/twitch/PubSubClientOptions.hpp \
|
||||
src/providers/twitch/PubSubHelpers.hpp \
|
||||
src/providers/twitch/PubSubManager.hpp \
|
||||
src/providers/twitch/PubSubMessages.hpp \
|
||||
src/providers/twitch/pubsubmessages/AutoMod.hpp \
|
||||
src/providers/twitch/pubsubmessages/Base.hpp \
|
||||
src/providers/twitch/pubsubmessages/ChannelPoints.hpp \
|
||||
src/providers/twitch/pubsubmessages/ChatModeratorAction.hpp \
|
||||
src/providers/twitch/pubsubmessages/Listen.hpp \
|
||||
src/providers/twitch/pubsubmessages/Message.hpp \
|
||||
src/providers/twitch/pubsubmessages/Unlisten.hpp \
|
||||
src/providers/twitch/pubsubmessages/Whisper.hpp \
|
||||
src/providers/twitch/PubSubWebsocket.hpp \
|
||||
src/providers/twitch/TwitchAccount.hpp \
|
||||
src/providers/twitch/TwitchAccountManager.hpp \
|
||||
src/providers/twitch/TwitchBadge.hpp \
|
||||
src/providers/twitch/TwitchBadges.hpp \
|
||||
src/providers/twitch/TwitchChannel.hpp \
|
||||
src/providers/twitch/TwitchCommon.hpp \
|
||||
src/providers/twitch/TwitchEmotes.hpp \
|
||||
src/providers/twitch/TwitchHelpers.hpp \
|
||||
src/providers/twitch/TwitchIrcServer.hpp \
|
||||
src/providers/twitch/TwitchMessageBuilder.hpp \
|
||||
src/providers/twitch/TwitchUser.hpp \
|
||||
src/RunGui.hpp \
|
||||
src/singletons/Badges.hpp \
|
||||
src/singletons/Emotes.hpp \
|
||||
src/singletons/Fonts.hpp \
|
||||
src/singletons/helper/GifTimer.hpp \
|
||||
src/singletons/helper/LoggingChannel.hpp \
|
||||
src/singletons/Logging.hpp \
|
||||
src/singletons/NativeMessaging.hpp \
|
||||
src/singletons/Paths.hpp \
|
||||
src/singletons/Resources.hpp \
|
||||
src/singletons/Settings.hpp \
|
||||
src/singletons/Theme.hpp \
|
||||
src/singletons/Toasts.hpp \
|
||||
src/singletons/TooltipPreviewImage.hpp \
|
||||
src/singletons/Updates.hpp \
|
||||
src/singletons/WindowManager.hpp \
|
||||
src/util/AttachToConsole.hpp \
|
||||
src/util/Clamp.hpp \
|
||||
src/util/Clipboard.hpp \
|
||||
src/util/CombinePath.hpp \
|
||||
src/util/ConcurrentMap.hpp \
|
||||
src/util/DebugCount.hpp \
|
||||
src/util/DisplayBadge.hpp \
|
||||
src/util/DistanceBetweenPoints.hpp \
|
||||
src/util/ExponentialBackoff.hpp \
|
||||
src/util/FormatTime.hpp \
|
||||
src/util/FunctionEventFilter.hpp \
|
||||
src/util/FuzzyConvert.hpp \
|
||||
src/util/Helpers.hpp \
|
||||
src/util/IncognitoBrowser.hpp \
|
||||
src/util/InitUpdateButton.hpp \
|
||||
src/util/IrcHelpers.hpp \
|
||||
src/util/LayoutCreator.hpp \
|
||||
src/util/LayoutHelper.hpp \
|
||||
src/util/NuulsUploader.hpp \
|
||||
src/util/Overloaded.hpp \
|
||||
src/util/PersistSignalVector.hpp \
|
||||
src/util/PostToThread.hpp \
|
||||
src/util/QObjectRef.hpp \
|
||||
src/util/QStringHash.hpp \
|
||||
src/util/RapidjsonHelpers.hpp \
|
||||
src/util/RapidJsonSerializeQString.hpp \
|
||||
src/util/RatelimitBucket.hpp \
|
||||
src/util/RemoveScrollAreaBackground.hpp \
|
||||
src/util/SampleData.hpp \
|
||||
src/util/SharedPtrElementLess.hpp \
|
||||
src/util/SplitCommand.hpp \
|
||||
src/util/StandardItemHelper.hpp \
|
||||
src/util/StreamerMode.hpp \
|
||||
src/util/StreamLink.hpp \
|
||||
src/util/Twitch.hpp \
|
||||
src/util/WindowsHelper.hpp \
|
||||
src/widgets/AccountSwitchPopup.hpp \
|
||||
src/widgets/AccountSwitchWidget.hpp \
|
||||
src/widgets/AttachedWindow.hpp \
|
||||
src/widgets/BasePopup.hpp \
|
||||
src/widgets/BaseWidget.hpp \
|
||||
src/widgets/BaseWindow.hpp \
|
||||
src/widgets/dialogs/BadgePickerDialog.hpp \
|
||||
src/widgets/dialogs/ChannelFilterEditorDialog.hpp \
|
||||
src/widgets/dialogs/ColorPickerDialog.hpp \
|
||||
src/widgets/dialogs/EditHotkeyDialog.hpp \
|
||||
src/widgets/dialogs/EmotePopup.hpp \
|
||||
src/widgets/dialogs/IrcConnectionEditor.hpp \
|
||||
src/widgets/dialogs/LastRunCrashDialog.hpp \
|
||||
src/widgets/dialogs/LoginDialog.hpp \
|
||||
src/widgets/dialogs/NotificationPopup.hpp \
|
||||
src/widgets/dialogs/QualityPopup.hpp \
|
||||
src/widgets/dialogs/SelectChannelDialog.hpp \
|
||||
src/widgets/dialogs/SelectChannelFiltersDialog.hpp \
|
||||
src/widgets/dialogs/SettingsDialog.hpp \
|
||||
src/widgets/dialogs/switcher/AbstractSwitcherItem.hpp \
|
||||
src/widgets/dialogs/switcher/NewPopupItem.hpp \
|
||||
src/widgets/dialogs/switcher/NewTabItem.hpp \
|
||||
src/widgets/dialogs/switcher/QuickSwitcherModel.hpp \
|
||||
src/widgets/dialogs/switcher/QuickSwitcherPopup.hpp \
|
||||
src/widgets/dialogs/switcher/SwitchSplitItem.hpp \
|
||||
src/widgets/dialogs/UpdateDialog.hpp \
|
||||
src/widgets/dialogs/UserInfoPopup.hpp \
|
||||
src/widgets/dialogs/WelcomeDialog.hpp \
|
||||
src/widgets/FramelessEmbedWindow.hpp \
|
||||
src/widgets/helper/Button.hpp \
|
||||
src/widgets/helper/ChannelView.hpp \
|
||||
src/widgets/helper/ColorButton.hpp \
|
||||
src/widgets/helper/ComboBoxItemDelegate.hpp \
|
||||
src/widgets/helper/CommonTexts.hpp \
|
||||
src/widgets/helper/DebugPopup.hpp \
|
||||
src/widgets/helper/EditableModelView.hpp \
|
||||
src/widgets/helper/EffectLabel.hpp \
|
||||
src/widgets/helper/Line.hpp \
|
||||
src/widgets/helper/NotebookButton.hpp \
|
||||
src/widgets/helper/NotebookTab.hpp \
|
||||
src/widgets/helper/QColorPicker.hpp \
|
||||
src/widgets/helper/RegExpItemDelegate.hpp \
|
||||
src/widgets/helper/TrimRegExpValidator.hpp \
|
||||
src/widgets/helper/ResizingTextEdit.hpp \
|
||||
src/widgets/helper/ScrollbarHighlight.hpp \
|
||||
src/widgets/helper/SearchPopup.hpp \
|
||||
src/widgets/helper/SettingsDialogTab.hpp \
|
||||
src/widgets/helper/SignalLabel.hpp \
|
||||
src/widgets/helper/TitlebarButton.hpp \
|
||||
src/widgets/Label.hpp \
|
||||
src/widgets/listview/GenericItemDelegate.hpp \
|
||||
src/widgets/listview/GenericListItem.hpp \
|
||||
src/widgets/listview/GenericListModel.hpp \
|
||||
src/widgets/listview/GenericListView.hpp \
|
||||
src/widgets/Notebook.hpp \
|
||||
src/widgets/Scrollbar.hpp \
|
||||
src/widgets/settingspages/AboutPage.hpp \
|
||||
src/widgets/settingspages/AccountsPage.hpp \
|
||||
src/widgets/settingspages/CommandPage.hpp \
|
||||
src/widgets/settingspages/ExternalToolsPage.hpp \
|
||||
src/widgets/settingspages/FiltersPage.hpp \
|
||||
src/widgets/settingspages/GeneralPage.hpp \
|
||||
src/widgets/settingspages/GeneralPageView.hpp \
|
||||
src/widgets/settingspages/HighlightingPage.hpp \
|
||||
src/widgets/settingspages/IgnoresPage.hpp \
|
||||
src/widgets/settingspages/KeyboardSettingsPage.hpp \
|
||||
src/widgets/settingspages/ModerationPage.hpp \
|
||||
src/widgets/settingspages/NicknamesPage.hpp \
|
||||
src/widgets/settingspages/NotificationPage.hpp \
|
||||
src/widgets/settingspages/SettingsPage.hpp \
|
||||
src/widgets/splits/ClosedSplits.hpp \
|
||||
src/widgets/splits/InputCompletionItem.hpp \
|
||||
src/widgets/splits/InputCompletionPopup.hpp \
|
||||
src/widgets/splits/Split.hpp \
|
||||
src/widgets/splits/SplitContainer.hpp \
|
||||
src/widgets/splits/SplitHeader.hpp \
|
||||
src/widgets/splits/SplitInput.hpp \
|
||||
src/widgets/splits/SplitOverlay.hpp \
|
||||
src/widgets/StreamView.hpp \
|
||||
src/widgets/TooltipWidget.hpp \
|
||||
src/widgets/Window.hpp \
|
||||
|
||||
RESOURCES += \
|
||||
resources/resources.qrc \
|
||||
resources/resources_autogenerated.qrc
|
||||
|
||||
DISTFILES +=
|
||||
|
||||
FORMS += \
|
||||
src/widgets/dialogs/IrcConnectionEditor.ui \
|
||||
src/widgets/dialogs/EditHotkeyDialog.ui
|
||||
|
||||
# do not use windows min/max macros
|
||||
#win32 {
|
||||
# DEFINES += NOMINMAX
|
||||
#}
|
||||
|
||||
linux:isEmpty(PREFIX) {
|
||||
message("Using default installation prefix (/usr/local). Change PREFIX in qmake command")
|
||||
PREFIX = /usr/local
|
||||
}
|
||||
|
||||
linux {
|
||||
desktop.files = resources/com.chatterino.chatterino.desktop
|
||||
desktop.path = $$PREFIX/share/applications
|
||||
|
||||
build_icons.path = .
|
||||
build_icons.commands = @echo $$PWD && mkdir -p $$PWD/resources/linuxinstall/icons/hicolor/256x256 && cp $$PWD/resources/icon.png $$PWD/resources/linuxinstall/icons/hicolor/256x256/com.chatterino.chatterino.png
|
||||
|
||||
icon.files = $$PWD/resources/linuxinstall/icons/hicolor/256x256/com.chatterino.chatterino.png
|
||||
icon.path = $$PREFIX/share/icons/hicolor/256x256/apps
|
||||
|
||||
target.path = $$PREFIX/bin
|
||||
|
||||
INSTALLS += desktop build_icons icon target
|
||||
}
|
||||
|
||||
git_commit=$$(GIT_COMMIT)
|
||||
git_release=$$(GIT_RELEASE)
|
||||
# Git data
|
||||
isEmpty(git_commit) {
|
||||
git_commit=$$system(git rev-parse HEAD)
|
||||
}
|
||||
isEmpty(git_release) {
|
||||
git_release=$$system(git describe)
|
||||
}
|
||||
git_hash = $$str_member($$git_commit, 0, 8)
|
||||
git_modified=$$system(git status --porcelain -z)
|
||||
|
||||
# Passing strings as defines requires you to use this weird triple-escape then quotation mark syntax.
|
||||
# https://stackoverflow.com/questions/3348711/add-a-define-to-qmake-with-a-value/18343449#18343449
|
||||
DEFINES += CHATTERINO_GIT_COMMIT=\\\"$$git_commit\\\"
|
||||
DEFINES += CHATTERINO_GIT_RELEASE=\\\"$$git_release\\\"
|
||||
DEFINES += CHATTERINO_GIT_HASH=\\\"$$git_hash\\\"
|
||||
!isEmpty(git_modified) {
|
||||
DEFINES += CHATTERINO_GIT_MODIFIED
|
||||
}
|
||||
|
||||
CONFIG(debug, debug|release) {
|
||||
message("Building Chatterino2 DEBUG")
|
||||
} else {
|
||||
message("Building Chatterino2 RELEASE")
|
||||
DEFINES += DEBUG_OFF
|
||||
}
|
||||
|
||||
message("Injected git values: $$git_commit ($$git_release) $$git_hash")
|
|
@ -3,7 +3,6 @@ openssl/1.1.1m
|
|||
boost/1.78.0
|
||||
|
||||
[generators]
|
||||
qmake
|
||||
cmake
|
||||
|
||||
[options]
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
#!/bin/bash
|
||||
cd ../lib/qBreakpad
|
||||
|
||||
echo "Updating qBreakpad's breakpad dependency version"
|
||||
cd third_party/breakpad
|
||||
git checkout 7b3afa9258e58a57ffbeb395d445811f92616ae9
|
||||
cd ../../
|
||||
|
||||
cd handler
|
||||
mkdir build
|
||||
cd build
|
||||
qmake ..
|
||||
echo "Building handler"
|
||||
make -j8 && "Successfully built qBreakpad"
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
if [ ! -d build-docker-release ]; then
|
||||
mkdir build-docker-release
|
||||
fi
|
||||
|
||||
cd build-docker-release
|
||||
qmake ..
|
||||
make -j8
|
|
@ -1,29 +0,0 @@
|
|||
#!/usr/bin/python3
|
||||
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
|
||||
dir_path = os.path.dirname(os.path.realpath(__file__))
|
||||
filename = '../chatterino.pro'
|
||||
data = ""
|
||||
|
||||
with open(filename, 'r') as project:
|
||||
data = project.read()
|
||||
sources_list = subprocess.getoutput("find ../src -path ../src/CMakeFiles -prune -false -o -type f -name '*.cpp' | sed 's_\../_ _g'").splitlines()
|
||||
sources_list.sort(key=str.lower)
|
||||
sources = "\n".join(sources_list)
|
||||
sources = re.sub(r'$', r' \\\\', sources, flags=re.MULTILINE)
|
||||
sources += "\n"
|
||||
data = re.sub(r'^SOURCES(.|\r|\n)*?^$', 'SOURCES += \\\n' + sources, data, flags=re.MULTILINE)
|
||||
|
||||
headers_list = subprocess.getoutput("find ../src -path ../src/CMakeFiles -prune -false -o -type f -name '*.hpp' | sed 's_\../_ _g'").splitlines()
|
||||
headers_list.sort(key=str.lower)
|
||||
headers = "\n".join(headers_list)
|
||||
headers = re.sub(r'$', r' \\\\', headers, flags=re.MULTILINE)
|
||||
headers += "\n"
|
||||
data = re.sub(r'^HEADERS(.|\r|\n)*?^$', 'HEADERS += \\\n' + headers, data, flags=re.MULTILINE)
|
||||
|
||||
with open(filename, 'w') as project:
|
||||
project.write(data)
|
||||
|
Loading…
Reference in a new issue