1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-08 05:27:14 +09:00

LibGC: Add the minimum export macros required to link LibJS

This approach still requires the WINDOWS_EXPORT_ALL_SYMBOLS target
property, but it does let us run a lot more tests than before.
This commit is contained in:
R-Goc 2025-05-29 00:04:33 -06:00 committed by Andrew Kaster
parent d5cb940fe0
commit f669af3a5c
Notes: github-actions[bot] 2025-05-29 09:27:56 +00:00
2 changed files with 6 additions and 1 deletions

View file

@ -23,3 +23,7 @@ if (ENABLE_SWIFT)
target_link_libraries(LibGC PRIVATE AK)
add_swift_target_properties(LibGC LAGOM_LIBRARIES AK)
endif()
# TODO: Use lagom_generate_export_header and annotate entire LibGC with export macros
include(GenerateExportHeader)
generate_export_header(LibGC EXPORT_MACRO_NAME GC_API EXPORT_FILE_NAME "Export.h")

View file

@ -8,6 +8,7 @@
#pragma once
#include <AK/Types.h>
#include <LibGC/Export.h>
#include <LibGC/Forward.h>
namespace GC {
@ -33,7 +34,7 @@ class HeapBlockBase {
AK_MAKE_NONCOPYABLE(HeapBlockBase);
public:
static size_t block_size;
GC_API static size_t block_size;
static HeapBlockBase* from_cell(Cell const* cell)
{
return reinterpret_cast<HeapBlockBase*>(bit_cast<FlatPtr>(cell) & ~(HeapBlockBase::block_size - 1));