A Hollywood plugin is a shared library that is dynamically loaded by Hollywood at run time. Every Hollywood plugin has to export a number of function symbols that Hollywood can call when necessary. The actual file format of a plugin is platform-dependent. Here is an overview of the file formats used by Hollywood plugins on the individual platforms:
Windows:
LoadLibrary()
.
macOS:
dlopen()
.
Linux and Android:
dlopen()
.
AmigaOS and compatibles:
LoadSeg()
. As AmigaOS doesn't supported named symbol export,
some glue code is necessary to allow access to named symbols. See AmigaOS glue code for details.
Another speciality on AmigaOS is that you cannot use certain functions from the
standard ANSI C runtime library. See AmigaOS C runtime limitations for details.
Please note that although Hollywood uses common file formats like DLLs on
Windows, dylibs on macOS, and shared objects on Linux/Android, the file
extension of a Hollywood plugin always has to be *.hwp
. Otherwise
Hollywood won't be able to detect plugins.