From ad1b1ec8ea9810e70a084902dd91c59d07e412c1 Mon Sep 17 00:00:00 2001 From: Max Wash Date: Sun, 15 Aug 2021 16:25:09 +0100 Subject: [PATCH] Removed old bundle generation --- CMakeLists.txt | 98 ++++++++++++++++++++++++++++---------------------- 1 file changed, 56 insertions(+), 42 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d1975da..b6548b7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,7 +14,6 @@ macro(subdirlist result curdir) set(${result} ${dirlist}) endmacro() -include(Bundles) include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/platform.cmake) platform_config(${PHOTON_TARGET}) @@ -47,7 +46,7 @@ message(STATUS "CRT files: ${photon_libc_crt}") add_custom_target(crt ALL DEPENDS ${photon_libc_crt} - COMMAND mx.clang -c -ffreestanding ${photon_libc_crt} + COMMAND ${CMAKE_C_COMPILER} -c -ffreestanding ${photon_libc_crt} COMMENT "Generating CRT files") file(GLOB platform_sources @@ -78,50 +77,65 @@ file(GLOB platform_headers set(photon_libc_sources ${photon_libc_sources} ${malloc_sources} ${platform_sources}) set(photon_libc_headers ${photon_libc_headers} ${platform_headers}) - -add_framework(photon STATIC SHARED - BUNDLE_ID net.doorstuck.photon - SOURCES ${photon_libc_sources} ${photon_libc_headers} - HEADERS ${CMAKE_CURRENT_BINARY_DIR}/sysroot/usr/include/*) - -bundle_compile_options(photon PRIVATE -ffreestanding -nostdlib -fPIC -fPIE) -bundle_link_libraries(photon ${photon_platform_libs} -ffreestanding -nostdlib) -bundle_link_frameworks(photon ${photon_platform_frameworks}) - -bundle_include_directories(photon PRIVATE +set(photon_libc_include_dirs ${CMAKE_CURRENT_SOURCE_DIR}/photon/libc/include ${CMAKE_CURRENT_SOURCE_DIR}/photon/libc/sys/${platform}/ ${CMAKE_CURRENT_BINARY_DIR}/sysroot/usr/include) -foreach (platform_include_dir ${photon_platform_extra_include_dirs}) - bundle_include_directories(photon - ${CMAKE_CURRENT_SOURCE_DIR}/photon/libc/sys/${platform}/${platform_include_dir}) -endforeach (platform_include_dir) +set(photon_libc_cflags -ffreestanding -nostdlib -fPIC -fPIE) -add_custom_target(local-root - DEPENDS ${photon_libc_headers} - COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/scripts/create-sysroot.sh - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} - ${platform} ${machine}) - -bundle_add_dependencies(photon local-root crt) - -add_custom_command(TARGET photon POST_BUILD - COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/scripts/add-framework-crt.sh - ${BUNDLE_PROGRAM} - ${CMAKE_CURRENT_BINARY_DIR}/photon.framework - ${CMAKE_CURRENT_BINARY_DIR}) - -if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") - bundle_link_libraries(photon gcc) +if (PHOTON_EXPORT_VARS) + set(photon_libc_sources ${photon_libc_sources} PARENT_SCOPE) + set(photon_libc_headers ${photon_libc_headers} ${platform_headers} PARENT_SCOPE) + set(photon_libc_crt ${photon_libc_crt} PARENT_SCOPE) + set(photon_libc_cflags ${photon_libc_cflags} PARENT_SCOPE) + set(photon_libc_include_dirs ${photon_libc_include_dirs} PARENT_SCOPE) + return () endif () -if (TARGET early-sysroot) - # We are being built as part of asbestOS, make sure the sysroot is there. - bundle_add_dependencies(photon early-sysroot) -endif () - -if (PHOTON_TESTS EQUAL 1) - add_subdirectory(tests) -endif () +# add_framework(photon STATIC SHARED +# BUNDLE_ID net.doorstuck.photon +# SOURCES ${photon_libc_sources} ${photon_libc_headers} +# HEADERS ${CMAKE_CURRENT_BINARY_DIR}/sysroot/usr/include/*) +# +# bundle_compile_options(photon PRIVATE -ffreestanding -nostdlib -fPIC -fPIE) +# bundle_link_libraries(photon ${photon_platform_libs} -ffreestanding -nostdlib) +# bundle_link_frameworks(photon ${photon_platform_frameworks}) +# +# bundle_include_directories(photon PRIVATE +# ${CMAKE_CURRENT_SOURCE_DIR}/photon/libc/include +# ${CMAKE_CURRENT_SOURCE_DIR}/photon/libc/sys/${platform}/ +# ${CMAKE_CURRENT_BINARY_DIR}/sysroot/usr/include) +# +# foreach (platform_include_dir ${photon_platform_extra_include_dirs}) +# bundle_include_directories(photon +# ${CMAKE_CURRENT_SOURCE_DIR}/photon/libc/sys/${platform}/${platform_include_dir}) +# endforeach (platform_include_dir) +# +# add_custom_target(local-root +# DEPENDS ${photon_libc_headers} +# COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/scripts/create-sysroot.sh +# ${CMAKE_CURRENT_SOURCE_DIR} +# ${CMAKE_CURRENT_BINARY_DIR} +# ${platform} ${machine}) +# +# bundle_add_dependencies(photon local-root crt) +# +# add_custom_command(TARGET photon POST_BUILD +# COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/scripts/add-framework-crt.sh +# ${BUNDLE_PROGRAM} +# ${CMAKE_CURRENT_BINARY_DIR}/photon.framework +# ${CMAKE_CURRENT_BINARY_DIR}) +# +# if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") +# bundle_link_libraries(photon gcc) +# endif () +# +# if (TARGET early-sysroot) +# # We are being built as part of asbestOS, make sure the sysroot is there. +# bundle_add_dependencies(photon early-sysroot) +# endif () +# +# if (PHOTON_TESTS EQUAL 1) +# add_subdirectory(tests) +# endif ()