tum-ei-eda / etiss

Extendable Translating Instruction Set Simulator
https://tum-ei-eda.github.io/etiss/
Other
29 stars 36 forks source link

Fixes to allow building ETISS Plugins out-of tree #150

Open PhilippvK opened 3 months ago

PhilippvK commented 3 months ago

Docs for how to build plugins out-of-tree will follow. (QVanillaAccelerator depends on https://github.com/tum-ei-eda/etiss/commits/patch_sysplugs_vanilla/ which was never merged to main).

PhilippvK commented 3 months ago

Rebased on master

PhilippvK commented 3 months ago

After the latest commit, building etiss plugins can be done without making any changes to the cmakefiles of the plugin:

Just cmake -DETISS_DIR=/path/to/etiss/installation/lib/CMake/ETISS .. and you should be good to go. Now i will need not look into how to load the plugin dynamicallyt at runtime (using list.txt)

PhilippvK commented 3 months ago

CC @mkiessling-ifx @mkiessling89

PhilippvK commented 3 months ago

@wysiwyng lets try to get #149 merged to trigger the ci here...

PhilippvK commented 3 months ago

CI passed, any comments @wysiwyng ?

wysiwyng commented 3 months ago

Looks good from a code standpoint, please add documentation. Currently it is not obvious how the plugins can be used in ETISS after they were built.

Overall, additional work needs to be put in to make ETISS actually relocatable.

PhilippvK commented 1 month ago

@wysiwyng I am working on the docs now. Should it be part of the (quite outdated) Docygen documentation or can I just write a markdown file for explaining how to integrate out-of-tree plugins?

PhilippvK commented 1 month ago

@wysiwyng I have just pushed three more commits that are related to Plugins and would like to hear your feedback:

PhilippvK commented 1 month ago

I realized that there are quite some inconsistencies regarding default values of INI settings. Can I look into fixing these in a followup PR? Also there are a lot of places where file paths are build manually using string concatenation. IMHO it would be good to use boost FS everwhere instead, what do you think @wysiwyng?

PhilippvK commented 1 month ago

@wysiwyng Here is the documentation I came up with: https://github.com/tum-ei-eda/etiss-accelerator-plugins/blob/main/README.md

It's currently specific for the etiss-accelerator-plugins repository but the instructions for other types if plugins would be very similar.

wysiwyng commented 1 month ago

@wysiwyng I am working on the docs now. Should it be part of the (quite outdated) Docygen documentation or can I just write a markdown file for explaining how to integrate out-of-tree plugins?

The latter should be good enough for now.