From 3c81186daf97cf7011fd2806dfd0bc3b875e92f3 Mon Sep 17 00:00:00 2001 From: "Luke T. Shumaker" Date: Thu, 31 Oct 2024 15:39:37 -0600 Subject: Clean up the build system --- cmd/srv9p/CMakeLists.txt | 38 ++++---------------------------------- cmd/srv9p/static.h.gen | 10 ---------- 2 files changed, 4 insertions(+), 44 deletions(-) delete mode 100755 cmd/srv9p/static.h.gen (limited to 'cmd/srv9p') diff --git a/cmd/srv9p/CMakeLists.txt b/cmd/srv9p/CMakeLists.txt index 4c170fb..b747882 100644 --- a/cmd/srv9p/CMakeLists.txt +++ b/cmd/srv9p/CMakeLists.txt @@ -5,15 +5,14 @@ if (PICO_PLATFORM STREQUAL "host") -set(static_srcs - static/README.md - static/Documentation/x -) - add_executable(srv9p main.c static9p.c ) +target_embed_sources(srv9p static.h + static/README.md + static/Documentation/x +) target_include_directories(srv9p PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) target_include_directories(srv9p PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/config) target_link_libraries(srv9p @@ -23,33 +22,4 @@ target_link_libraries(srv9p lib9p ) -set(static_objs) -foreach(static_src ${static_srcs}) - add_custom_command( - OUTPUT "${static_src}.obj" - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - COMMAND dirname -- ${CMAKE_CURRENT_BINARY_DIR}/${static_src}.obj | xargs mkdir -p -- - COMMAND ${CMAKE_LINKER} -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/${static_src}.obj ${static_src} - DEPENDS "${static_src}" - ) - list(APPEND static_objs "${static_src}.obj") -endforeach() - -set_source_files_properties(${static_objs} PROPERTIES - EXTERNAL_OBJECT true - GENERATED true -) - -set_source_files_properties(static.h PROPERTIES - GENERATED true -) - -add_custom_command( - OUTPUT static.h - DEPENDS ${static_objs} static.h.gen - COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/static.h.gen ${static_objs} >static.h -) - -target_sources(srv9p PRIVATE ${static_objs} static.h) - endif() diff --git a/cmd/srv9p/static.h.gen b/cmd/srv9p/static.h.gen deleted file mode 100755 index a93419f..0000000 --- a/cmd/srv9p/static.h.gen +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh -# srv9p/static.h.gen - Generate C definitions for GNU `ld -r -b binary` files -# -# Copyright (C) 2024 Luke T. Shumaker -# SPDX-License-Identifier: AGPL-3.0-or-later - -nm --format=posix "$@" | - sed -n -E \ - -e 's/(.*_(end|start)) D .*/extern char \1[];/p' \ - -e 's/(.*_size) A .*/extern size_t \1;/p' -- cgit v1.2.3-2-g168b