Skip to content
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

WIP Plugins common code, initial implementation #469

Draft
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

375gnu
Copy link
Member

@375gnu 375gnu commented Oct 23, 2019

hi this a basic code for plugin based architecture, it's not integrated with any other parts of celestia. i push it for testing.

cmakelists.txt in src/celplugin generates 2 files - plugintest and libmyplug.so. please build them and test.

@eyvallah how libmyplug.so is named on macos?

@levinli303
Copy link
Collaborator

It should be libmyplug.dylib on Mac

@levinli303
Copy link
Collaborator

so i built the it, with modification to the CMakeLists(C++11, gettext). it works. it builds an .so file because in CMakeLists.txt it is a module library.

So on mac, it can be either MODULE -> .so or SHARED -> .dylib. however i do feel like it's more common to see .dylib library plugins

the output should be correct:
dlsym(CreateScriptEnvironment) failed: dlsym(0x7ffcd1602070, CreateScriptEnvironment): symbol not found
APIVersion = 107, Type = 1, ID = 0x10b22efa0
LUA
0x7ffcd1500dd0 0x7ffcd1500dd0

@pirogronian
Copy link
Contributor

How to build it in painless way? I cannot make it by make celplugin, while initiating and making directly in its directory throws compile error fatal error: fmt/printf.h. Have I build whole Celestia for it?

@375gnu
Copy link
Member Author

375gnu commented Mar 6, 2020

i'm unsure if it's easily buildable today. i even don't remember in what state it was left.

@375gnu 375gnu marked this pull request as draft April 20, 2020 12:51
@375gnu 375gnu force-pushed the master branch 2 times, most recently from 690ab56 to 2f8f3b0 Compare May 15, 2023 19:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants