Move most Drizzle symbols into a shared lib
Registered by
Monty Taylor
Change the build setup to build almost all of the symbols in the server as a libdrizzled .so file, and then have a very small main.cc which builds and links in libdrizzled to make a drizzled executable.
Upshots are:
- linktime-binding of plugin symbols
- library link versioning with symbols
- can start to use symbol visibility on the server to explicitly make various symbols either part of the API or not
- track API breakages via objdump
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Low
- Drafter:
- None
- Direction:
- Needs approval
- Assignee:
- Monty Taylor
- Definition:
- Approved
- Series goal:
- Accepted for cherry
- Implementation:
- Implemented
- Milestone target:
- 2010-04-26
- Started by
- Monty Taylor
- Completed by
- Monty Taylor
Related branches
Related bugs
Bug #531503: undefined symbol: _ZN8drizzled9algorithm5crc32EPKcm)Couldn't load plugin library named 'crc32' | Fix Released |
Sprints
Whiteboard
All done - but there's a weird interaction with some of Jay's code only on OSX (my favorite). Tracking down.
(?)