Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convert project to CMake #305

Draft
wants to merge 29 commits into
base: 3.0-dev
Choose a base branch
from

Conversation

marcusbirkin
Copy link
Collaborator

@marcusbirkin marcusbirkin commented Jun 18, 2023

#273 Convert the project from QMake to CMake
Will also resolve the reason for #272 by using CPack

ToDo

Windows

  • CI Build
  • Package - NSIS

Linux

  • CI Build
  • Package - .deb
  • Package - Appimage

macOS

  • CI Build
  • Package - .dmg

Legacy imports from ETC public code
WiP Many aspects unresolved
Correctly embed with CMake
Qt6 updates
Clazy updates
Cleanup TS files
Explicitly include CheckCCompilerFlag for blake2.cmake
Find Pcap using Wireshark cmake scripts
Add Zlib as dependency
Update crash test for Qt6
Potentially added back macOS support (Untested)
Download and build as required
Download and build as required
Update about dialog
n.b. Installers not yet ported to CMake
OpenSSL: Link shared, not static
OpenSSL: Build debug as required
OpenSSL: Don't copy documentation
Allows OpenSSL::SSL to pick up OpenSSL::Crypto in the same folder
@marcusbirkin marcusbirkin added this to the v2.2 milestone Jun 18, 2023
@marcusbirkin marcusbirkin self-assigned this Jun 18, 2023
@marcusbirkin marcusbirkin marked this pull request as draft June 18, 2023 21:37
.gitignore Show resolved Hide resolved
@RichardTea
Copy link
Contributor

Very strongly recommend adding a toplevel CMakePresets.json to set up the default debug and release builds on each platform.

Introduced in cmake 3.19, ignored by everything older than that.

This makes cmake projects far nicer to use.
Most commandline builds simply specify which preset config to use --preset=preset_name , and IDEs like Visual Studio, VSCode and Qt Creator will offer all the applicable presets in their CMake integration UI.

Delay load pcap due to Npcap license restricting distribution.
Check if pcap is found before use, and inform the user if not.
Fix icon
Link missing Win32 libs
Correct OpenSSL shared lib extension
Add NSIS installer
Update Github actions artifacts
Update readme
Add missing download hashes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants