TheAssassin
8ee0e43c23
Switch to new subprocess lib in type 0 plugins, mk. 3
...
This commit fixes the remaining buffer issues by introducing a little more complexity. It shall be refactored in the future to decrease complexity again, but for now, it works well and function is more important than form at this point.
CC #143
2020-09-04 18:02:40 +02:00
TheAssassin
e9bbbc80f4
Switch to new subprocess lib in type 0 plugins, mk. 2
...
Apparently fixes all buffer-related crashes, but there's a few minor bugs left.
CC #143
2020-08-31 08:39:43 +02:00
TheAssassin
68f4655fc4
Add method to write from buffers to ldLog streams
2020-08-31 06:30:06 +02:00
TheAssassin
1072c6d9f0
Improve check_output performance
2020-08-31 05:08:24 +02:00
TheAssassin
f33dc8dd34
Switch to new subprocess lib in type 0 plugins, mk. 1
2020-08-31 04:41:01 +02:00
TheAssassin
6621f1edf7
Forgot to add pipe reader to CMake
2020-08-31 04:20:40 +02:00
TheAssassin
ee73ac6c8e
Use new pipe_reader in subprocess's check_output
...
The class will read until the process quits (or until memory's up).
TODO: reduce load on CPU with some sleep (right now, it's pretty much some busy waiting)
2020-08-31 04:20:03 +02:00
TheAssassin
66691ee882
Add new helper class pipe reader
...
Implements synchronous, non-block reading from pipes.
2020-08-28 17:36:56 +02:00
TheAssassin
e91b459fce
Use std::distance instead of pointer arithmetics
2020-08-08 11:54:58 +02:00
TheAssassin
3f86f178a5
Use classic C string handling
...
That way, we don't have to allocate memory, and it's also shorter.
2020-08-08 11:49:17 +02:00
TheAssassin
a8975e0e50
Clean up memory in case exec* fails
...
Prevents memory leaks.
2020-08-08 11:44:21 +02:00
TheAssassin
6c47939fdc
Fix initialization bug
2020-08-08 11:34:02 +02:00
TheAssassin
8663e5bf26
Update license information in help text
2020-08-08 01:06:51 +02:00
TheAssassin
89493e399b
Build fully static strip binary
2020-08-08 00:47:54 +02:00
TheAssassin
4d999ef5c6
Build somewhat static strip ourselves
2020-08-08 00:30:28 +02:00
TheAssassin
b39dfa6591
Fix static binaries handling
2020-08-08 00:30:28 +02:00
TheAssassin
484ff3f004
Fix C string processing bug
...
Well, makes sense now that I look at it... but caused a couple of hours worrying why my child processes were crashing until I noticed it'd only happen if I specified custom environment variables...
2020-08-08 00:30:28 +02:00
TheAssassin
8b604871cc
Refactor duplicate code into static method
2020-08-08 00:30:28 +02:00
TheAssassin
88dd09f2d1
Set all variables to defaults in header
2020-08-08 00:30:28 +02:00
TheAssassin
d43e8a42bf
Fix whitespace
2020-08-08 00:30:28 +02:00
TheAssassin
5feef7880e
Try to fix waitpid issues
2020-08-08 00:30:28 +02:00
TheAssassin
2b2c6a913f
Set default value
2020-08-07 21:22:58 +02:00
TheAssassin
aeb0bfa98b
Use consistent error message for all plugins
2020-08-07 21:22:58 +02:00
TheAssassin
37aa37f5fe
Fix behavior of close()
...
The implementation was obviously wrong/incomplete.
2020-08-07 21:22:58 +02:00
TheAssassin
59a8ec41ba
Replace cpp-subprocess with own linuxdeploy-subprocess
2020-08-07 21:22:58 +02:00
TheAssassin
4a0cfe323d
Require newer CMake version only for static builds
2020-08-07 21:22:58 +02:00
TheAssassin
c895a1dc59
Add kill and poll features for processes
2020-08-07 21:22:58 +02:00
TheAssassin
80a5667ca7
Check waitpid() for errors
2020-08-07 21:22:58 +02:00
TheAssassin
2425ccc832
Extract process handling into separate class
...
Needed for plugins' subprocess handling.
2020-08-07 21:22:58 +02:00
TheAssassin
55b2d00f23
Add reusable assert template
2020-08-07 21:22:58 +02:00
TheAssassin
e1f6da17b4
Add basic subprocess micro library
...
cpp-subprocess does not work when linked statically for some weird reason. Therefore, we're going to ship our own.
2020-08-07 21:22:58 +02:00
TheAssassin
326b002ed5
Fetch up-to-date CMake for AppImage builds
2020-08-07 21:22:58 +02:00
TheAssassin
86d4404a16
Try to use target_link_options again
2020-08-07 21:22:58 +02:00
TheAssassin
cbfbb1ee2d
Debug CI build issues mk. 1
2020-08-07 21:22:58 +02:00
TheAssassin
5fde708954
Improve CMake check
2020-08-06 14:44:00 +02:00
TheAssassin
dc07fbd401
Build static binaries for releases on Travis
2020-08-06 14:10:57 +02:00
TheAssassin
5b713b3bee
Add support for fully static builds
2020-08-06 02:07:31 +02:00
TheAssassin
5644d5ca06
Add license notices to binary for dependencies
...
Was long overdue.
2020-08-06 01:19:29 +02:00
TheAssassin
557bad2241
Add --deploy-deps-only
2020-07-15 03:17:37 +02:00
TheAssassin
590a746882
Replace std::cerr messages with ldLog
...
Was long overdue now. Makes for a consistent logging, and helps communicate that the messages are errors to the user.
2020-07-15 03:10:12 +02:00
TheAssassin
a609adb4f5
Merge pull request #135 from komputerwiz/master
...
Fix update information used by Travis builds
2020-07-05 20:41:00 +02:00
Matthew Barry
591e21a766
fix update information used by Travis builds
...
Seems like this was overlooked by commit 2af5430 when fixing #126
2020-07-05 12:50:47 -05:00
TheAssassin
0f3a118687
Add param to automatically rename deployed icons
...
Useful e.g., when passing multiple icons with different resolutions via -i, if they have the resolution in the filename.
Also removes all traces of that appName concept that has been abandoned.
2020-06-11 21:04:33 +02:00
TheAssassin
1c0ce6a0a5
Merge pull request #132 from X0rg/patch-1
...
Update README.md with CPU-X project
2020-05-24 01:50:12 +02:00
Xorg
2f00292756
Update README.md with CPU-X project
2020-05-24 01:00:32 +02:00
TheAssassin
f24c167722
Add $LINUXDEPLOY for input plugins
...
The input plugins can use this environment variable to call linuxdeploy themselves. This can be very handy to have it deploy additional dependencies on libraries they copy themselves.
An alternative approach is to simply use liblinuxdeploy inside the plugin, like the Qt plugin does.
2020-05-03 18:32:55 +02:00
TheAssassin
2af54304e2
Fix update information
...
Closes #126 .
2020-04-08 23:41:58 +02:00
TheAssassin
4391ad24d9
Merge pull request #125 from d1vanov/master
...
Fix links in README.md
2020-04-04 16:19:13 +02:00
Dmitry Ivanov
f3ae65bc57
Fix links in README.md
2020-04-04 17:17:41 +03:00
TheAssassin
d086da38c4
Allow users to use custom patchelf
...
Fixes #120 .
2020-02-06 02:34:37 +01:00