Skip to content
This repository was archived by the owner on Nov 27, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 18 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -472,11 +472,25 @@ if(UNIX AND NOT APPLE)
if(NOT BOLT_SKIP_RPATH)
set_target_properties(bolt PROPERTIES INSTALL_RPATH "$ORIGIN")
endif()

if(TARGET CEF::Library)
message(STATUS "Linking with FindPackage version of CEF::Library")
target_link_libraries(bolt PUBLIC CEF::Library)
else()
target_link_libraries(bolt PUBLIC "${BOLT_LIBCEF_DIRECTORY}/libcef.so")
endif()

find_package(PkgConfig REQUIRED)

pkg_check_modules(X11 REQUIRED IMPORTED_TARGET x11)
target_link_libraries(bolt PUBLIC PkgConfig::X11)

pkg_check_modules(XCB REQUIRED IMPORTED_TARGET xcb)
target_link_libraries(bolt PUBLIC PkgConfig::XCB)

pkg_check_modules(LIBARCHIVE REQUIRED IMPORTED_TARGET libarchive)
target_link_libraries(bolt PUBLIC PkgConfig::LIBARCHIVE)
target_compile_definitions(bolt PUBLIC HAS_LIBARCHIVE)
target_link_libraries(bolt PUBLIC "${BOLT_LIBCEF_DIRECTORY}/libcef.so")
target_link_libraries(bolt PUBLIC "X11")
target_link_libraries(bolt PUBLIC "xcb")
target_link_libraries(bolt PUBLIC "archive")
elseif(WIN32)
set_target_properties(bolt PROPERTIES WIN32_EXECUTABLE TRUE)
target_link_libraries(bolt PUBLIC "${CEF_ROOT}/${CMAKE_BUILD_TYPE}/libcef.lib")
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ If you accidentally cloned without submodules (no `modules` directory), you can
Place your entire CEF binary distribution folder inside the `cef` directory with the name "dist", or create a symbolic link with the same effect.

If building on Linux, the following are required:
- pkgconf (`pkgconf` or `pkg-config` on most package managers)
- X11 development libraries (`libX11-devel` or `libx11-dev` on most package managers)
- xcb development libraries (`libxcb-devel` or `libxcb1-dev` on most package managers)
- libarchive development libraries (`libarchive-devel` or `libarchive-dev` on most package managers)
Expand Down
9 changes: 7 additions & 2 deletions src/library/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,13 @@ if(UNIX AND NOT APPLE)
add_library(${BOLT_PLUGIN_LIB_NAME} SHARED so/main.c plugin/plugin.c plugin/plugin_api.c gl.c
rwlock/rwlock_posix.c ipc_posix.c plugin/plugin_posix.c ../../modules/hashmap/hashmap.c
../miniz/miniz.c ../sha256/sha256.c ../../modules/spng/spng/spng.c)
target_link_libraries(${BOLT_PLUGIN_LIB_NAME} luajit-5.1)
target_include_directories(${BOLT_PLUGIN_LIB_NAME} PUBLIC "${BOLT_LUAJIT_INCLUDE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/../miniz")

find_package(PkgConfig REQUIRED)

pkg_check_modules(LUAJIT REQUIRED IMPORTED_TARGET luajit)
target_link_libraries(${BOLT_PLUGIN_LIB_NAME} PUBLIC PkgConfig::LUAJIT)

target_include_directories(${BOLT_PLUGIN_LIB_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/../miniz")
install(TARGETS ${BOLT_PLUGIN_LIB_NAME} DESTINATION "${BOLT_LIBDIR}")
endif()
if (WIN32)
Expand Down