Option to select extensions compile-time. Fix #50 #123#125
Option to select extensions compile-time. Fix #50 #123#125
Conversation
|
Seems that cutting of the autotype cmake don't disable autotype at all. |
|
Excellent, I'll see if I can add the about dialog feature i mentioned. As for the HTTP build, I think its smart to make it a static link library, perhaps we can make a fresh CMakeLists.txt in the http folder to encapsulate the build. I foresee a future where we have 'src/plugins/[http|autotype|yubikey]' which build either static or dynamic libraries. |
|
It's already been build into a static library that it's later linked in the main executable Implementing the AboutDialog should be easy with the Anyway, the Autotype plugin works even if you cut off the src/autotype/Cmake. |
|
|
||
| #define KEEPASSX_TEST_DATA_DIR "${KEEPASSX_TEST_DATA_DIR}" | ||
|
|
||
| #cmakedefine WITH_XC_HTTP |
There was a problem hiding this comment.
Are these defines used anywhere or is this just for when we have proper HTTP tests?
There was a problem hiding this comment.
Yes they are not used rigth now, but I think it's usefull for future development
There was a problem hiding this comment.
Alright, seems fair. Code's looking okay to me.
|
I implemented the about dialog extensions view. It's not scalable with #ifdef's, there might be a better way to do it in the future when we define an actual plugin interface (maybe). |
|
I think it's the best option we have right now |
|
I think this can be merged @droidmonkey what do you think? |
|
I might be able to look at it this week, took some time off from the project recently. |
|
I made a bunch of changes to the autotype lib building. It did not work at all on Windows, a bunch of dual definitions and the EXPORT/IMPORT was backwards (this was an error from many moons ago). I tested on Fedora and everything seemed ok, this needs to be tested on OpenSuse and Apple. |
|
Tested on macOS Sierra, compile fine and works fine but testgui give some error (maybe unrelated) |
|
The autoreload tests are susceptible to timing issues since they wait an arbitrary 1.5 seconds for the auto-detection of the file change to work. This can likely be enhanced in the future, but it is definitely unrelated to this PR. |
|
Really it's the autoreload that fails |
|
Ping @droidmonkey |
|
Thanks. This pull request has been integrated manually. |
|
Merged using multiple squash commits to preserve authorship. |
|
I think it'd also be good to update the Wiki to reflect the additional flags. E.g. |
|
I like the idea of showing up in the Cmake message, but it will show up also when enabled. I will update the wiki asap (now) |
Description
This PR add Options to select extensions at compile time to let user and distributors to select with component add to KeePassXC.
The extensions/components supported right now are:
You can enable (ON) or disable (OFF) extensions with the following cmake flag:
-DWITH_XC_HTTP=ONfor KeePassHTTP-DWITH_XC_AUTOTYPE=ONfor Autotype-DWITH_XC_YUBIKEY=ONfor YubikeyAt the end of the cmake command, enabled and disabled extensions will be listed:
Right now, by default no extension is enabled. (We can discuss about this)
Motivation and Context
This fixes #50 and #123
How Has This Been Tested?
Manually tested the enabled and disabled option for HTTP and Autotype.
NEED an update to the travis file to set all the extension to ON so it will test them
(or maybe building a matrix with different ON/OFF combination?)
Types of changes
Checklist: