# wnix, a Unix-like operating system for WebAssembly applications. # Copyright (C) 2025 Xavier Del Campo Romero # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . find_package(Clang REQUIRED) set(expr "^([0-9]+)\.([0-9]+)\.([0-9]+)$") string(REGEX REPLACE ${expr} "\\1" LLVM_VERSION_MAJOR "${LLVM_VERSION}") find_program(clang_exec clang-${LLVM_VERSION_MAJOR} REQUIRED) set(CMAKE_C_COMPILER ${clang_exec}) set(CMAKE_C_COMPILER_WORKS 1) set(CMAKE_C_FLAGS " \ ${CMAKE_C_FLAGS} \ --target=wasm32-unknown-unknown-wasm \ -mcpu=mvp \ -fno-exceptions \ -nostdinc \ -nostdlib \ ") set(CMAKE_EXE_LINKER_FLAGS "\ ${CMAKE_EXE_LINKER_FLAGS} \ -Wl,--threads=1 \ ") set(CMAKE_STRIP ${WASI_SDK_STRIP})