Commit Graph

242 Commits

Author SHA1 Message Date
WerWolv b0490cfbbc build: Improve pdb generation 2023-12-21 13:57:40 +01:00
WerWolv 27cd3cc83a fix: Missing welcome screen header localization 2023-12-09 15:32:21 +01:00
WerWolv 15af0726f1 build: Disable error on unknown warning flags 2023-12-09 13:57:46 +01:00
WerWolv df03ba3883 build: Fix build on macOS 2023-12-09 12:23:11 +01:00
WerWolv 878f45dd80 fix: Various build errors 2023-12-08 16:22:36 +01:00
WerWolv 0cbaf40747 build: Allow for better stacktraces on Linux 2023-12-08 14:00:32 +01:00
WerWolv 2cf642a2a4 build: Updated libwolv 2023-12-01 14:07:10 +01:00
WerWolv e370fdb0fc build: Add support for unity builds 2023-11-30 10:22:15 +01:00
iTrooz 9306017f01
refactor: refactor setupCompilerFlags() function (#1448) 2023-11-25 15:40:12 +00:00
WerWolv 71df45a347 build: Compile plugins as cmake module libraries instead of shared libraries 2023-11-23 23:01:11 +01:00
WerWolv 9e0b02f86e build: Update .NET version 2023-11-20 22:55:49 +01:00
WerWolv a4e14497a5 build: Force set .NET library/include directory variables 2023-11-20 22:49:06 +01:00
WerWolv de3e92e21b build: Use different method of enforcing nethost.h 2023-11-19 16:11:17 +01:00
WerWolv 981ae5067c build: Try force reconfiguring when nethost header isn't found 2023-11-19 12:03:17 +01:00
WerWolv 60b640d9f5 build: Restructure ImGui dependencies, added Readmes and licenses 2023-11-19 11:59:25 +01:00
iTrooz f0465c63ed
build: move third party libraries to lib/third_party (#1417)
Co-authored-by: Nik <werwolv98@gmail.com>
2023-11-12 02:02:54 +01:00
iTrooz 7405219fb8 build: Make ImHex buildable for MacOS arm64 (#1414) 2023-11-11 20:56:30 +01:00
iTrooz 6e6c5c4cb7
build: Fix build script for MacOS (#1404)
Fix build problem introduced by
https://github.com/WerWolv/ImHex/pull/1398
I didn't refactor the code well because I thought `CREATE_PACKAGE` was
an option only used for Windows, when it needs to be used for MacOS too
2023-11-07 14:06:38 +01:00
iTrooz c839ee7d13
build: Improve names of packaging cmake options (#1398)
This PR is simply a refactor, to clarify these flags that shouldn't
impact anything
2023-11-04 00:11:50 +00:00
WerWolv 407ec1ceb6 build: Use custom jthread implementation if standard one is not available 2023-11-02 20:21:38 +01:00
WerWolv c444ad9280 impr: Bundle default magic file with application 2023-10-29 19:43:45 +01:00
Nik 58189e5403
impr: Allow console output to work when debugging (#1382) 2023-10-22 21:39:14 +00:00
WerWolv 03af1687d9 build: Only copy required libraries to SDK 2023-10-22 22:01:42 +02:00
WerWolv e92f937587 build: Bundle SDK with releases 2023-10-22 21:27:13 +02:00
Nik f114239f51
feat: Added Auto Updater for Windows, macOS and Ubuntu (#1377) 2023-10-21 18:40:24 +00:00
iTrooz d15bd4771d
feat: Support for building ImHex for the web (#1328)
Co-authored-by: WerWolv <werwolv98@gmail.com>
Co-authored-by: AnnsAnn <git@annsann.eu>
2023-10-04 12:00:32 +02:00
WerWolv 7400b9ce8a build: Fixed macOS library path 2023-10-01 16:59:04 +02:00
WerWolv 4436e8a589 build: Try to fix script loader on macOS 2023-10-01 16:18:31 +02:00
WerWolv e80c7bff1c impr: Refactored forwarder executable and add lots more information to it 2023-09-27 14:14:27 +02:00
PerikiyoXD 691df0fc83
fix: Implemented forwarder executable (#1308)
Fixes random .NET plugin crash caused by the console window being freed
on the same process.

### Problem description
Sometimes when launching from the explorer ImHex crashes

### Implementation description
We've implemented a launcher to avoid freeing the std streams, that
generated the bug.

### Screenshots
N/A

### Additional things
Blame windows console subsystem
2023-09-16 13:08:19 +02:00
Nik a1dc979217
build: Fixed plugins not having their C++ version set correctly 2023-08-22 19:29:03 +02:00
WerWolv fae8f0a8d5 build: Fixed cmake not using default settings on Windows 2023-08-06 01:52:23 +02:00
iTrooz 55e6761bf1
build: Fix LTO not being enabled correctly (#1217)
Currently, LTO isn't enabled (at least on Linux ?), because LTO doesn't
recognize any language as being enabled.

I fixed that by explicitly enabling C and CXX languages before enabling
LTO
2023-08-05 20:39:20 +02:00
WerWolv f67e808d0b build: Add plugins to main dependency 2023-07-27 10:45:11 +02:00
WerWolv e1d0a057ff build: Set plugin output directory correctly 2023-07-27 02:07:36 +02:00
WerWolv 94a02c4b6d build: Streamlined plugin creation process 2023-07-27 00:53:04 +02:00
WerWolv a83ca3c228 feat: Added --pl and --magic command 2023-07-17 10:43:29 +02:00
WerWolv 0a6815da8f fix: Always use default CA Cert 2023-07-16 19:56:07 +02:00
WerWolv 54fba5bf8b build: Always bundle CA Cert on Windows 2023-07-15 23:20:09 +02:00
WerWolv 2fea1975c2 build: Don't set recommended properties if they were already set 2023-07-15 14:29:54 +02:00
Nik 5171bea0bf
feat: Added cross-platform .NET scripts support (#1185)
This PR intends to add support for .NET scripts that can extend ImHex's
functionality in a portable and cross-platform way.

---------

Co-authored-by: Justus Garbe <55301990+Nowilltolife@users.noreply.github.com>
2023-07-15 14:29:14 +02:00
WerWolv afcc01c3dc build: Set default settings only if they haven't been set already 2023-07-15 10:33:42 +02:00
WerWolv 0f54a3a1f3 build: Added option to disable strict warnings 2023-07-15 10:02:19 +02:00
Nik aae3004f1f
build: Various build improvements (#1193) 2023-07-15 00:10:01 +02:00
WerWolv 6c4fdd146f build: Use llvm-ar and llvm-ranlib on Windows 2023-07-14 21:51:18 +02:00
iTrooz 1ed658bcdc
feat: Added command line interface support (#1172)
System design has been discussed on discord

Should fix #948

---------

Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-13 14:08:23 +02:00
WerWolv 511ef3ef2b build: Supress warning generated by libraries setting BUILD_SHARED_LIBS 2023-07-09 22:39:27 +02:00
WerWolv 32ade6136b build: Make sure ImHex Patterns repo gets cloned correctly 2023-07-09 22:18:53 +02:00
WerWolv 65d9509c38 build: Add checked option to enable LTO 2023-07-09 20:34:49 +02:00
WerWolv 25d6380963 build: Upgraded capstone to full V5 release 2023-07-05 20:45:46 +02:00
WerWolv b87c32a94b build: Fedora fix again 2023-06-26 14:52:00 +02:00
WerWolv b13494a192 build: Try fixing Fedora build 2023-06-26 14:37:35 +02:00
WerWolv d527675bda build: Make sure changing commit hash doesn't trigger a full rebuild
Closes #1137
2023-06-26 14:01:45 +02:00
WerWolv 13b4201446 build: Clean up build logs 2023-06-26 08:45:33 +02:00
WerWolv 568e8d8d42 build: Don't generated PDBs in Debug mode 2023-06-24 11:52:37 +02:00
WerWolv cabe9cf995 build: Fixed PDB generation again 2023-06-24 01:48:13 +02:00
WerWolv 35d2fda0a4 build: More pdb gen fixes 2023-06-23 23:20:56 +02:00
WerWolv 2c6f1503ef build: Corrected pdb generation and install issues 2023-06-23 23:00:06 +02:00
WerWolv c787532ed9 build: Fixed pdb creation removing bundled debug info 2023-06-23 21:39:13 +02:00
WerWolv ae06954771 fix: Stack trace printing on Windows not working right 2023-06-22 15:15:06 +02:00
WerWolv e1b0c1c268 build: Fixed commit hash define being set incorrectly 2023-06-21 23:09:22 +02:00
Nik f703b15165
feat: Added statistics and crash log uploading (#1149)
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
2023-06-20 11:55:56 +02:00
WerWolv 25154dd450 build: Force enable exceptions and rtti 2023-06-18 14:42:48 +02:00
KOLANICH 330c8399ce
build: Only enable GCC-exclusive warnings on GCC (#1091)
Move all the flags added into an if block, since the flags are for
GCC/Clang and are not suitable for Visual Studio.
2023-06-13 23:01:26 +02:00
iTrooz bfe698f883
build: Do not install _schema.json files (#1095) 2023-05-22 13:20:55 +02:00
KOLANICH 749823e044
build: Move `-s` additional compiler flags into linker flags, and enable it only when gcc/clang are used. (#1087)
Compiler when compiling doesn't use them in those cases and emit a
warning, which is turned into an error by `-Werror`. Unfortunately,
CPack doesn't expose the logic it uses for stripping binaries.
2023-05-20 13:37:57 +02:00
WerWolv 636ed0095d feat: Added new `imhex/capabilities` network interface 2023-05-16 11:01:40 +02:00
WerWolv 6e5d6810e7 build: Disable assertions in release builds 2023-05-13 17:49:53 +02:00
WerWolv 50c3cf8272 build: Replace old interval tree in favour of custom libwolv one 2023-05-11 09:27:23 +02:00
WerWolv 5a6e5d2255 build: Switch to better interval tree implementation 2023-05-07 23:27:43 +02:00
classabbyamp 82f5900759
build: Added option to disable update checking (#1036)
This is aimed at use by linux distros, where package updates come from a
central location, and users shouldn't need to worry about updating ImHex
on their own. This disables parts of the ImHex UI that would not be
useful in that case.

Tested and confirmed that this works in both states of the of the
`-DIMHEX_DISABLE_UPDATE_CHECK` switch.
2023-05-05 22:03:45 +02:00
WerWolv 143fe36d35 build: Fixed various build warnings 2023-04-13 16:11:39 +02:00
WerWolv 0aaeeffff7 build: Fixed capitalization of ImHex in MSI installer 2023-03-26 11:22:50 +02:00
WerWolv eb2ed6852c build: Make SSL work when using system curl on WIndows 2023-03-23 20:12:33 +01:00
WerWolv a36b4d65e3 build: Make sure commit hash and branch end up in nightly builds 2023-03-21 10:14:09 +01:00
WerWolv d9a498e8ec build: Make sure libwolv is compiled with -fPIC 2023-03-13 10:39:34 +01:00
WerWolv 0dafb3d230 sys: Replaced many helper functions with libwolv 2023-03-12 18:27:33 +01:00
WerWolv 505c1bc274 build: Fix Fedora build errors 2023-03-10 14:46:15 +01:00
WerWolv 58324b4539 build: Fixed linking against execinfo 2023-02-17 17:56:27 +01:00
WerWolv 09b7794d71 build: Added option to disable stack traces 2023-02-17 17:52:10 +01:00
WerWolv a87190960f build: Fixed one more missing imhex target name 2023-02-12 22:08:35 +01:00
WerWolv e426606542 build: Fixed flatpak build issues 2023-02-12 21:55:09 +01:00
WerWolv 79ecf7fa59 build: Fix non-Windows build 2023-02-01 09:38:03 +01:00
WerWolv 4c761df181 build: Improve build script a bit 2023-02-01 09:20:46 +01:00
WerWolv 94cd83e0dc feat: Added sound visualizer 2023-01-24 23:27:35 +01:00
Nik 48a57cd981
feat: Added stacktrace printing on crashes (#892)
* feat: Added simple stack trace output

* feat: Added backtrace wrapper

* build: Added libbacktrace include dirs to build

* build: Fixed libbacktrace variables

* build: More backtrace variable fixes

* build: Try to find backtrace include

* build: Get backtrace header from cmake script

* feat: Added backtrace support for execinfo

* feat: Added support for StackWalk on Windows
2023-01-17 21:38:56 +01:00
WerWolv 7e17059154 sys: Improved exception debug output 2023-01-16 18:17:13 +01:00
WerWolv 0c302da0db build: Add option to use the GTK file picker instead of portals on Linux
Fixes #882
2023-01-13 20:11:27 +01:00
WerWolv 9a5881fc47 build: Fixed -Wpedantic issues on macOS 2023-01-04 14:24:07 +01:00
WerWolv f7dd28002e build: Build everything using `-Wpedantic` 2023-01-04 14:03:09 +01:00
WerWolv 496b0ec41d build: Fixed more build errors 2023-01-04 13:29:39 +01:00
WerWolv eb4a1e2692 build: Try to clean up bundled dependencies a bit 2023-01-04 12:34:38 +01:00
WerWolv 4cd6646cca build: Enable libstdc++ assertions in debug builds 2023-01-01 01:05:01 +01:00
WerWolv ad71e612a3 build: Clean up some old compiler/linker flag settings 2022-12-30 10:35:11 +01:00
WerWolv 85823e8e5d build: Removed all usages of Python 2022-12-29 23:32:57 +01:00
WerWolv 264da1ed78 pattern: Show array entries directly if there are less than 512 2022-12-20 20:56:01 +01:00
WerWolv 1dd873462e build: Fixed build failure when VERSION file contains extra white space 2022-11-29 09:44:47 +01:00
iTrooz_ b10a59661e
build: Tell users patterns are being downloaded (#820)
* Tell users patterns are being downloaded

* Improved log message

Co-authored-by: Nik <werwolv98@gmail.com>
2022-11-25 10:37:31 +01:00
iTrooz_ a537fe90a0
build: Added `make uninstall` (#784) 2022-10-14 15:35:45 +02:00
WerWolv 556895744b build: Disable more bogus stringop warnings 2022-10-05 15:09:41 +02:00