-
-
Notifications
You must be signed in to change notification settings - Fork 527
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
CMake support for Qt5 and Qt6 #100
base: master
Are you sure you want to change the base?
Commits on Sep 24, 2022
-
This commit brings CMake support for the Qt5 build of NotepadNext. To build use: ``` cmake -S . -B cbuild -G Ninja cmake --buid cbuild ``` Building using `qmake` on my machine takes 1:37, and using `cmake/ninja` it takes about 0:53. As part of the changes - I am using external dependencies - using CPM (https://github.com/cpm-cmake/CPM.cmake). Some sub projects had no CMake support - and thus I forked them, and added cmake support so I add them. This is a big issue I need to fix over time. Note I have made 2 modifications to the code: 1. In NotepadNextApplication.cpp - when using CPM, the lua bridge include is under a subdirectory. I could have fixed the internal fork to behave like this, but I opted to make as minimal changes to the app's code. Instead, I use a hack. 2. When using upstreams Lua (the forked version I have made...), the include `lua.hpp` is not availble. The original code had that file inside the library - which is a big no-no. We do not modify upstream's code. Instead - I copied this into the apps main code. Note that this branch can still be compiled using QMake. When the build stabilizes - it should be easy to remove all submodules and internal forks, and keep the CMake build only. (the only code this repo will have is the main app). This was tested under Debian, using Qt5. I will have to test this under Windows (can test the mingw and CL builds). I cannot test this under OSX, as I don't own a Mac (I am open to donations!). Adding Qt6 will be also "trivial" - just fixing all the forks I have done, and then the main app. It will take some time. Note: The initial cmake takes time, as part of the configuration the code will git/clone the code from scintilla. This is a one time task - not to affect you until you clan up the build/_deps directory.
Configuration menu - View commit details
-
Copy full SHA for 83ed448 - Browse repository at this point
Copy the full SHA 83ed448View commit details -
* NotepadNext - moved compile defines to the main target, no longer visible to the whole project * Main - Fixed clang building - using C++ 17 globally fixed building using clang (it seems GCC defaults to 17, while clang not). * Updates to 3rd parties.
Configuration menu - View commit details
-
Copy full SHA for a167543 - Browse repository at this point
Copy the full SHA a167543View commit details -
Configuration menu - View commit details
-
Copy full SHA for d6f1a0f - Browse repository at this point
Copy the full SHA d6f1a0fView commit details -
Configuration menu - View commit details
-
Copy full SHA for bed2be6 - Browse repository at this point
Copy the full SHA bed2be6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5bf8e88 - Browse repository at this point
Copy the full SHA 5bf8e88View commit details -
Updated upstreams scintilla. Both scintilla and Lexzilla. I also added demos of how to use the moving branches, instead of tags. From the other side, all I do is `git checkout cmake-support && git pull origin master` so things are easy. When I get a new tag upstream, I merge and re-tag with `-cmake` suffix. Seems easy and maintainable.
Configuration menu - View commit details
-
Copy full SHA for f9891b7 - Browse repository at this point
Copy the full SHA f9891b7View commit details -
We will check Qt6, soon. Meanwhile, as Qt5 on debian is known to work - lets use it. I am not building the app image yet.
Configuration menu - View commit details
-
Copy full SHA for 83929a2 - Browse repository at this point
Copy the full SHA 83929a2View commit details -
Configuration menu - View commit details
-
Copy full SHA for e8d13be - Browse repository at this point
Copy the full SHA e8d13beView commit details -
Configuration menu - View commit details
-
Copy full SHA for ee266af - Browse repository at this point
Copy the full SHA ee266afView commit details -
Configuration menu - View commit details
-
Copy full SHA for 849d9b2 - Browse repository at this point
Copy the full SHA 849d9b2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 194b106 - Browse repository at this point
Copy the full SHA 194b106View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f64763 - Browse repository at this point
Copy the full SHA 4f64763View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0eea772 - Browse repository at this point
Copy the full SHA 0eea772View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2c68a89 - Browse repository at this point
Copy the full SHA 2c68a89View commit details -
Configuration menu - View commit details
-
Copy full SHA for bab61e9 - Browse repository at this point
Copy the full SHA bab61e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 17b76fb - Browse repository at this point
Copy the full SHA 17b76fbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 48e8582 - Browse repository at this point
Copy the full SHA 48e8582View commit details -
Use static builds for all libraries
Also - prepare for creating appimage - added an install target.
Configuration menu - View commit details
-
Copy full SHA for 7726b03 - Browse repository at this point
Copy the full SHA 7726b03View commit details -
- Switch to gnu-makefiles - as I learn how to handle ninja install - Added a new artifact for Linux/Qt5/AppImage/CMake. Matrix is now larger :)
Configuration menu - View commit details
-
Copy full SHA for d1ac7a6 - Browse repository at this point
Copy the full SHA d1ac7a6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1757daf - Browse repository at this point
Copy the full SHA 1757dafView commit details -
Configuration menu - View commit details
-
Copy full SHA for d9368bc - Browse repository at this point
Copy the full SHA d9368bcView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0bb613 - Browse repository at this point
Copy the full SHA c0bb613View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3b09454 - Browse repository at this point
Copy the full SHA 3b09454View commit details -
Configuration menu - View commit details
-
Copy full SHA for c9315bf - Browse repository at this point
Copy the full SHA c9315bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for dbe2a27 - Browse repository at this point
Copy the full SHA dbe2a27View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b1d97d - Browse repository at this point
Copy the full SHA 2b1d97dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 86822ce - Browse repository at this point
Copy the full SHA 86822ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c33eab - Browse repository at this point
Copy the full SHA 6c33eabView commit details -
Fixed cmake to compile using Qt6. I think I did not break Qt5.
Configuration menu - View commit details
-
Copy full SHA for 47e1558 - Browse repository at this point
Copy the full SHA 47e1558View commit details -
Due to a stupidity found in SimpleApplication - this is not trivial to automatically Qt version. This is because we need to tell that project, the Qt version we want... I can workaround it, but not now.
Configuration menu - View commit details
-
Copy full SHA for 49c5869 - Browse repository at this point
Copy the full SHA 49c5869View commit details -
Configuration menu - View commit details
-
Copy full SHA for 212d5c8 - Browse repository at this point
Copy the full SHA 212d5c8View commit details -
Configuration menu - View commit details
-
Copy full SHA for e9cfdac - Browse repository at this point
Copy the full SHA e9cfdacView commit details -
Fix compilation for version 0.5.5
Added missing source files - and re-ordered the list of files inside the CMakeLists.txt. ALSO: fixed include inside MacroStepTableModel.h - we needed to guard it (How did it work on QMake?)
Configuration menu - View commit details
-
Copy full SHA for b4368bd - Browse repository at this point
Copy the full SHA b4368bdView commit details
Commits on Sep 25, 2022
-
I am now installing using `cmake` which means I can build using ninja again.
Configuration menu - View commit details
-
Copy full SHA for 69f4f68 - Browse repository at this point
Copy the full SHA 69f4f68View commit details -
- build lua without a fork, create a local cmake file for it - ADS - 3.8.2 -> 3.8.3 - ucharder - update upsream sha1
Configuration menu - View commit details
-
Copy full SHA for 1e22932 - Browse repository at this point
Copy the full SHA 1e22932View commit details -
- dont link same library twise - when building on the CI - pass the correct defines, this should work (works on my local setup!)
Configuration menu - View commit details
-
Copy full SHA for 6c17f3a - Browse repository at this point
Copy the full SHA 6c17f3aView commit details -
Also.. use the default configure path for cmake
Configuration menu - View commit details
-
Copy full SHA for e14db3a - Browse repository at this point
Copy the full SHA e14db3aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f258ac - Browse repository at this point
Copy the full SHA 4f258acView commit details -
Configuration menu - View commit details
-
Copy full SHA for 82ad512 - Browse repository at this point
Copy the full SHA 82ad512View commit details -
Configuration menu - View commit details
-
Copy full SHA for 98814e3 - Browse repository at this point
Copy the full SHA 98814e3View commit details
Commits on Sep 27, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 6b43166 - Browse repository at this point
Copy the full SHA 6b43166View commit details -
Configuration menu - View commit details
-
Copy full SHA for ea0924b - Browse repository at this point
Copy the full SHA ea0924bView commit details
Commits on Sep 29, 2022
-
Move to a local build system for QSimpleUpdater
As we did with LUA, QSimpleUpdater has a local CMake build system, which we just include. No port is needed. I am abandoning the idea of upstreaming the CMake support - as I see for example that LUA is not intersted at this at all. I think SCintilla are in a similar position. If anyone wants to port these libraries to use CMake, they can adpot this code from ours.
Configuration menu - View commit details
-
Copy full SHA for 3368536 - Browse repository at this point
Copy the full SHA 3368536View commit details
Commits on Oct 3, 2022
-
Now that editor-config-qt cmake support is upstream we can use the upstream repo, instead of the previous port. I also removed all other forks and instead made a local cmake build system (local to the project, a simple include file). Now we are left with a single fork - which is necesary (upstream uses mervurial, and demands python for generting some files on build time - my fork has that as part of the tree). All projects point to the newewst code available on their git - code seems to compile and run, so... yap, ship it. Fixed the app name and also remove lots of craft from the main CMakeFile. Fixed the workflow to use the *.so files generated at build, and disabled the OSX build for now.
Configuration menu - View commit details
-
Copy full SHA for b418cba - Browse repository at this point
Copy the full SHA b418cbaView commit details -
Upstream removed this signal - I commend this just to the the code to compile and later on I will fix it.
Configuration menu - View commit details
-
Copy full SHA for 4ece07f - Browse repository at this point
Copy the full SHA 4ece07fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4a88b2d - Browse repository at this point
Copy the full SHA 4a88b2dView commit details -
Fix compilation and appimage ?
uchardet is not compiling for windows, revert the sha1 appimage is broken, lets try and fix?
Configuration menu - View commit details
-
Copy full SHA for ff27b7e - Browse repository at this point
Copy the full SHA ff27b7eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 03fbc1f - Browse repository at this point
Copy the full SHA 03fbc1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for f3b0954 - Browse repository at this point
Copy the full SHA f3b0954View commit details -
Configuration menu - View commit details
-
Copy full SHA for b2bdb2b - Browse repository at this point
Copy the full SHA b2bdb2bView commit details -
Configuration menu - View commit details
-
Copy full SHA for c75f333 - Browse repository at this point
Copy the full SHA c75f333View commit details
Commits on Oct 17, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 45d8c29 - Browse repository at this point
Copy the full SHA 45d8c29View commit details
Commits on Oct 31, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 4fa992a - Browse repository at this point
Copy the full SHA 4fa992aView commit details
Commits on Nov 3, 2022
-
The main window will manually initialize ADS. I am unsure what this was needed, but as of now, ADS knows how to initialize this for us. This code is does not compile on my CMake build - not in static, and not in shared - so we need to remove it.
Configuration menu - View commit details
-
Copy full SHA for 9170d8f - Browse repository at this point
Copy the full SHA 9170d8fView commit details -
Main fix is - a new version of ScintillaCode which now properly build statically on Windows (by using `BUILD_SHARED_LIBS` properly). The main build file no longer build tests and examples (except `uchardet` which does not support this upstream). New version of `CPM.cmake` v0.3.5 -> v0.3.6, because WTF not.
Configuration menu - View commit details
-
Copy full SHA for 2bd9274 - Browse repository at this point
Copy the full SHA 2bd9274View commit details -
Configuration menu - View commit details
-
Copy full SHA for c1a91a5 - Browse repository at this point
Copy the full SHA c1a91a5View commit details -
Master got a new file, `ZoomEventWatcher` - lets add it. Also - as a bonus, use a newer version of Qt 6.3.
Configuration menu - View commit details
-
Copy full SHA for 2f7ef95 - Browse repository at this point
Copy the full SHA 2f7ef95View commit details
Commits on Nov 7, 2022
-
Configuration menu - View commit details
-
Copy full SHA for dbdbc1f - Browse repository at this point
Copy the full SHA dbdbc1fView commit details
Commits on Nov 8, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 3707317 - Browse repository at this point
Copy the full SHA 3707317View commit details
Commits on Nov 16, 2022
-
Reduce some warnings (dail8859#257)
1) Moved a global inline function to be a member (static) - this fixes warnings (as some compilation unit included that file, but did not use that function). 2) Inside a lambda - we are not using a flag - so, lets mark it unused.
Configuration menu - View commit details
-
Copy full SHA for 91f4094 - Browse repository at this point
Copy the full SHA 91f4094View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1aa4045 - Browse repository at this point
Copy the full SHA 1aa4045View commit details -
Configuration menu - View commit details
-
Copy full SHA for 082c7d6 - Browse repository at this point
Copy the full SHA 082c7d6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6933aa2 - Browse repository at this point
Copy the full SHA 6933aa2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 749a406 - Browse repository at this point
Copy the full SHA 749a406View commit details
Commits on Nov 19, 2022
-
Configuration menu - View commit details
-
Copy full SHA for e9b58cb - Browse repository at this point
Copy the full SHA e9b58cbView commit details -
Compile decorators/URLFinder.cpp
I was missing URLFinder.cpp in the list of files to be compiled. I took the time also to sort this list inside the CMakeLists.txt
Configuration menu - View commit details
-
Copy full SHA for 5f225b0 - Browse repository at this point
Copy the full SHA 5f225b0View commit details -
Update versions.. .for almost everything
No breaks, simply compiles. NICE!
Configuration menu - View commit details
-
Copy full SHA for 9bcd559 - Browse repository at this point
Copy the full SHA 9bcd559View commit details -
Merge branch 'cmake-build' of https://github.com/elcuco/NotepadNext i…
…nto cmake-build
Configuration menu - View commit details
-
Copy full SHA for 6d4ca35 - Browse repository at this point
Copy the full SHA 6d4ca35View commit details -
Configuration menu - View commit details
-
Copy full SHA for 311bbc0 - Browse repository at this point
Copy the full SHA 311bbc0View commit details
Commits on Nov 30, 2022
-
Configuration menu - View commit details
-
Copy full SHA for dc3b61c - Browse repository at this point
Copy the full SHA dc3b61cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1624591 - Browse repository at this point
Copy the full SHA 1624591View commit details
Commits on Dec 5, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 45bee8f - Browse repository at this point
Copy the full SHA 45bee8fView commit details -
- point to a newer Scintilla-Code - add to the CMakeLists.txt newer files from main.
Configuration menu - View commit details
-
Copy full SHA for 0c40bd3 - Browse repository at this point
Copy the full SHA 0c40bd3View commit details -
Configuration menu - View commit details
-
Copy full SHA for ac632bb - Browse repository at this point
Copy the full SHA ac632bbView commit details
Commits on Dec 7, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 6f3b8c8 - Browse repository at this point
Copy the full SHA 6f3b8c8View commit details
Commits on Dec 23, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 333d3f4 - Browse repository at this point
Copy the full SHA 333d3f4View commit details
Commits on Feb 10, 2023
-
Configuration menu - View commit details
-
Copy full SHA for e687865 - Browse repository at this point
Copy the full SHA e687865View commit details -
Added new files to the CMake build
New files added upstream (the master branch...) and I need to update the CMakeLists.txt file - everything works.
Configuration menu - View commit details
-
Copy full SHA for c1c4dfd - Browse repository at this point
Copy the full SHA c1c4dfdView commit details -
scintilla-code - rel-5-3-2-cmake -> rel-5-3-3-cmake loexilla - rel-5-2-1 -> rel-5-2-2 uchardet - 143b3fe513bad2cc85903ee564fe55ccbe96d86b -> 2f5c24006ebc7f005040358f58f22a61a3c92522 - effectively v0.0.8 LuaBridge - 9092ace9615d14e3f5926f2e8a3b612ddc6c8efa -> 6580b18755a0fdbf87820aa16a3bc63d24b5bf31 Qt-Advanced-Docking-System - 8d30fc9c3c36ac66bf3d027aaad7adff973f628f -> 54c2bd0c304505f9c5abffdd9eaa29ecfd691054
Configuration menu - View commit details
-
Copy full SHA for 0254f14 - Browse repository at this point
Copy the full SHA 0254f14View commit details -
Configuration menu - View commit details
-
Copy full SHA for e7dd220 - Browse repository at this point
Copy the full SHA e7dd220View commit details
Commits on Mar 4, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 6195ddb - Browse repository at this point
Copy the full SHA 6195ddbView commit details
Commits on Mar 17, 2023
-
Configuration menu - View commit details
-
Copy full SHA for d4615e5 - Browse repository at this point
Copy the full SHA d4615e5View commit details -
Configuration menu - View commit details
-
Copy full SHA for c59c7eb - Browse repository at this point
Copy the full SHA c59c7ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4e76321 - Browse repository at this point
Copy the full SHA 4e76321View commit details
Commits on Mar 18, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 27cdd3e - Browse repository at this point
Copy the full SHA 27cdd3eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 78ff74a - Browse repository at this point
Copy the full SHA 78ff74aView commit details -
Configuration menu - View commit details
-
Copy full SHA for ca88456 - Browse repository at this point
Copy the full SHA ca88456View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d5825e - Browse repository at this point
Copy the full SHA 2d5825eView commit details
Commits on Nov 28, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 24f4413 - Browse repository at this point
Copy the full SHA 24f4413View commit details -
1) updated CPM to v0.36.0 2) uchardet: the github mirror is no longer active. Instead use the official freedesktop gitlab mirror. 3) Updated sha1/versions of libraries 4) ADS is now at v4.1.1 5) LanguagePropertiesModel and frieds are removed from code
Configuration menu - View commit details
-
Copy full SHA for d34fe4d - Browse repository at this point
Copy the full SHA d34fe4dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 80e5151 - Browse repository at this point
Copy the full SHA 80e5151View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66b5a35 - Browse repository at this point
Copy the full SHA 66b5a35View commit details -
Configuration menu - View commit details
-
Copy full SHA for bc794b0 - Browse repository at this point
Copy the full SHA bc794b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for b640125 - Browse repository at this point
Copy the full SHA b640125View commit details