mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 23:50:19 +00:00
3e86f88d6a
When this feature was finally merged, the serenity_option in lagom_options.cmake had the unintended side effect of always setting the cache variable to "" in the initial cache. In order to actually set the linker to use to be lld or mold, we need to set with the FORCE flag in the use_linker.cmake file. Found by checking with the CMake variable_watch() function. This will stop the build from spamming the "Using LLD to link Lagom" message all over the place :^)
26 lines
944 B
CMake
26 lines
944 B
CMake
# Copyright (c) 2022, Andrew Kaster <akaster@serenityos.org>
|
|
# Copyright (c) 2023, Daniel Bertalan <dani@danielbertalan.dev>
|
|
#
|
|
# SPDX-License-Identifier: BSD-2-Clause
|
|
#
|
|
|
|
if (NOT APPLE AND NOT LAGOM_USE_LINKER)
|
|
find_program(LLD_LINKER NAMES "ld.lld")
|
|
if (LLD_LINKER)
|
|
message(STATUS "Using LLD to link Lagom.")
|
|
set(LAGOM_USE_LINKER "lld" CACHE STRING "" FORCE)
|
|
else()
|
|
find_program(MOLD_LINKER NAMES "ld.mold")
|
|
if (MOLD_LINKER)
|
|
message(STATUS "Using mold to link Lagom.")
|
|
set(LAGOM_USE_LINKER "mold" CACHE STRING "" FORCE)
|
|
endif()
|
|
endif()
|
|
endif()
|
|
|
|
if (LAGOM_USE_LINKER)
|
|
set(LINKER_FLAG "-fuse-ld=${LAGOM_USE_LINKER}")
|
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${LINKER_FLAG}")
|
|
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${LINKER_FLAG}")
|
|
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${LINKER_FLAG}")
|
|
endif()
|