Bug 186594

Summary: [WPE] Pack inspector resources in a .gresource file instead of a shared library
Product: WebKit Reporter: Adrian Perez <aperez>
Component: WPE WebKitAssignee: Adrian Perez <aperez>
Status: RESOLVED FIXED    
Severity: Normal CC: bugs-noreply, calvaris
Priority: P2    
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=193826
https://bugs.webkit.org/show_bug.cgi?id=280512
https://bugs.webkit.org/show_bug.cgi?id=281298
https://bugs.webkit.org/show_bug.cgi?id=281771
Bug Depends on: 186588    
Bug Blocks: 280561    

Adrian Perez
Reported 2018-06-13 09:33:14 PDT
For the WPE port the inspector resources are bundled using for loading with GResource, built into an shared library which contains the bundled data, and finally loaded on-demand using GModule (which ends up using “dlopen”) when first needed. There are no other contents in the shared library, so we could as well generate a “*.gresource” data file instead (which is a GVDB file), and load it using “g_resource_load” (instead of using GModule). There are a few small advantages: - Disk space savings. GDVB files are slightly more compact than a shared library, and are mmap'd when loaded. - Loading the data does not involve the dynamic linker (no need for parsing an executable object, resolving symbols, etc.). - No intermediate build steps: the XML manifest gets built into the .gresource data file directly (compare with the current approach, which is: XML manifest → C source → object file → shared library). While there's nothing particularly important in the list above, it still would be nicer to use a data file instead of a shared library for the inspector resources.
Attachments
Adrian Perez
Comment 1 2018-06-13 09:36:13 PDT
FWIW, the .gresource files being data, I understand the file would be installed into “${DATADIR}/wpe-webkit-${VERSION}” instead of “${LIBDIR}/wpe-webkit-${VERSION}” (as currently done).
lisiwei
Comment 2 2024-09-13 17:42:31 PDT
EWS
Comment 3 2024-09-26 00:03:42 PDT
Committed 284269@main (8ceb1da47e75): <https://commits.webkit.org/284269@main> Reviewed commits have been landed. Closing PR #33654 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.