1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-09-13 22:57:34 +00:00

Build: Install most headers to Root (and libcore.a/libgui.a)

This makes out-of-tree linking possible. And at the same time, add a
CMakeToolchain.txt file that can be used to build arbitrary cmake-using
applications on Serenity by pointing to the CMAKE_TOOLCHAIN_FILE when
running cmake:

    -DCMAKE_TOOLCHAIN_FILE=~/code/serenity/Toolchain/CMakeToolchain.txt
This commit is contained in:
Robin Burchell 2019-05-17 20:40:38 +02:00 committed by Andreas Kling
parent 2d98f4e28f
commit 5babcac289
12 changed files with 67 additions and 3 deletions

View file

@ -0,0 +1,19 @@
set(CMAKE_SYSTEM_NAME Generic)
if (NOT DEFINED ENV{SERENITY_ROOT})
message(FATAL_ERROR "SERENITY_ROOT not set. Please source Toolchain/UseIt.sh.")
endif()
# where to read from/write to
set(CMAKE_SYSROOT $ENV{SERENITY_ROOT}/Root)
set(CMAKE_STAGING_PREFIX $ENV{SERENITY_ROOT}/Root)
set(CMAKE_INSTALL_PREFIX $ENV{SERENITY_ROOT}/Root)
set(CMAKE_C_COMPILER i686-pc-serenity-gcc)
set(CMAKE_CXX_COMPILER i686-pc-serenity-g++)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)

View file

@ -2,4 +2,5 @@
DIR=$( dirname $( readlink -e "$0" ) )
export PATH="$DIR/Local/bin:$PATH"
export TOOLCHAIN="$DIR"
export SERENITY_ROOT="$DIR/.."
echo "$PATH"