44 lines
1006 B
CMake
44 lines
1006 B
CMake
cmake_minimum_required(VERSION 3.31)
|
|
|
|
project(kolibrios-ports)
|
|
|
|
include(ExternalProject)
|
|
|
|
# Number of threads for build
|
|
set(JOBS 6)
|
|
|
|
# Installation directory for GCC and Binutils
|
|
if(NOT DEFINED ENV{KOS_SDK_DIR})
|
|
message(FATAL_ERROR "The environment variable KOS_SDK_DIR is not set!")
|
|
endif()
|
|
|
|
set(KOS_SDK_DIR $ENV{KOS_SDK_DIR})
|
|
|
|
message(STATUS "KOS_SDK_DIR=${KOS_SDK_DIR}")
|
|
|
|
# Directory for installing ports
|
|
if(NOT DEFINED ENV{KOS_PORTS_DIR})
|
|
message(FATAL_ERROR "The environment variable KOS_PORTS_DIR is not set!")
|
|
endif()
|
|
|
|
set(KOS_PORTS_DIR $ENV{KOS_PORTS_DIR})
|
|
message(STATUS "SDK_SYSROOT_DIR=${KOS_PORTS_DIR}")
|
|
|
|
add_subdirectory(toolchain)
|
|
add_subdirectory(libraries)
|
|
|
|
ExternalProject_Add(
|
|
program
|
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/program
|
|
CMAKE_ARGS
|
|
-DCMAKE_C_COMPILER=i586-kolibrios-gcc
|
|
-DCMAKE_C_COMPILER_WORKS=1
|
|
-DCMAKE_INSTALL_PREFIX=${KOS_PORTS_DIR}
|
|
BUILD_ALWAYS TRUE
|
|
DEPENDS
|
|
gcc
|
|
newlib
|
|
console_shim
|
|
sha
|
|
)
|