mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-11 13:36:13 +03:00
Build: Stop using precompiled headers (PCH)
This had very bad interactions with ccache, often leading to rebuilds with 100% cache misses, etc. Ali says it wasn't that big of a speedup in the end anyway, so let's not bother with it. We can always bring it back in the future if it seems like a good idea.
This commit is contained in:
parent
a5603c35df
commit
a15c7b7944
Notes:
sideshowbarker
2024-07-18 17:56:13 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/a15c7b7944a
@ -26,7 +26,6 @@ option(ENABLE_ALL_THE_DEBUG_MACROS "Enable all debug macros to validate they sti
|
||||
option(ENABLE_COMPILETIME_FORMAT_CHECK "Enable compiletime format string checks" ON)
|
||||
option(ENABLE_PCI_IDS_DOWNLOAD "Enable download of the pci.ids database at build time" ON)
|
||||
option(BUILD_LAGOM "Build parts of the system targeting the host OS for fuzzing/testing" OFF)
|
||||
option(PRECOMPILE_COMMON_HEADERS "Precompile some common headers to speedup compilation" OFF)
|
||||
option(ENABLE_KERNEL_LTO "Build the kernel with link-time optimization" OFF)
|
||||
|
||||
add_custom_target(run
|
||||
|
@ -383,7 +383,6 @@ endif()
|
||||
target_link_libraries(Kernel kernel_heap gcc stdc++)
|
||||
add_dependencies(Kernel boot kernel_heap)
|
||||
install(TARGETS Kernel RUNTIME DESTINATION boot)
|
||||
serenity_add_ak_precompiled_headers_to_target(Kernel)
|
||||
|
||||
add_custom_command(
|
||||
TARGET Kernel
|
||||
|
@ -1,9 +0,0 @@
|
||||
function(serenity_add_precompiled_header_to_target target header)
|
||||
if (PRECOMPILE_COMMON_HEADERS AND COMMAND target_precompile_headers)
|
||||
target_precompile_headers(${target} PRIVATE ${header})
|
||||
endif ()
|
||||
endfunction()
|
||||
|
||||
function(serenity_add_ak_precompiled_headers_to_target target)
|
||||
serenity_add_precompiled_header_to_target(${target} ${CMAKE_SOURCE_DIR}/Meta/Precompile/AK.h)
|
||||
endfunction()
|
@ -1,5 +1,3 @@
|
||||
include(${CMAKE_SOURCE_DIR}/Meta/CMake/precompile-headers.cmake)
|
||||
|
||||
function(serenity_install_headers target_name)
|
||||
file(GLOB_RECURSE headers RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
|
||||
foreach(header ${headers})
|
||||
@ -32,7 +30,6 @@ function(serenity_lib target_name fs_name)
|
||||
add_library(${target_name} SHARED ${SOURCES} ${GENERATED_SOURCES})
|
||||
install(TARGETS ${target_name} DESTINATION usr/lib)
|
||||
set_target_properties(${target_name} PROPERTIES OUTPUT_NAME ${fs_name})
|
||||
serenity_add_ak_precompiled_headers_to_target(${target_name})
|
||||
serenity_generated_sources(${target_name})
|
||||
endfunction()
|
||||
|
||||
@ -69,7 +66,6 @@ endfunction()
|
||||
function(serenity_bin target_name)
|
||||
add_executable(${target_name} ${SOURCES})
|
||||
install(TARGETS ${target_name} RUNTIME DESTINATION bin)
|
||||
serenity_add_ak_precompiled_headers_to_target(${target_name})
|
||||
serenity_generated_sources(${target_name})
|
||||
endfunction()
|
||||
|
||||
|
@ -1,28 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2021, Ali Mohammad Pur <ali.mpfard@gmail.com>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AK/Assertions.h>
|
||||
#include <AK/Badge.h>
|
||||
#include <AK/ByteBuffer.h>
|
||||
#include <AK/Format.h>
|
||||
#include <AK/Forward.h>
|
||||
#include <AK/Function.h>
|
||||
#include <AK/HashMap.h>
|
||||
#include <AK/JsonObject.h>
|
||||
#include <AK/LexicalPath.h>
|
||||
#include <AK/Optional.h>
|
||||
#include <AK/OwnPtr.h>
|
||||
#include <AK/RefCounted.h>
|
||||
#include <AK/RefPtr.h>
|
||||
#include <AK/StdLibExtras.h>
|
||||
#include <AK/String.h>
|
||||
#include <AK/StringBuilder.h>
|
||||
#include <AK/StringView.h>
|
||||
#include <AK/Types.h>
|
||||
#include <AK/URL.h>
|
||||
#include <AK/Vector.h>
|
@ -93,6 +93,3 @@ set(SOURCES
|
||||
|
||||
serenity_lib(LibJS js)
|
||||
target_link_libraries(LibJS LibM LibCore LibCrypto LibRegex LibSyntax)
|
||||
|
||||
serenity_add_precompiled_header_to_target(LibJS ${CMAKE_CURRENT_SOURCE_DIR}/Heap/Heap.h)
|
||||
serenity_add_precompiled_header_to_target(LibJS ${CMAKE_CURRENT_SOURCE_DIR}/Runtime/GlobalObject.h)
|
||||
|
Loading…
Reference in New Issue
Block a user