Commit 9741b2aab4
Changed files (5)
src/config.h.in
@@ -23,5 +23,7 @@
#define ZIG_LLD_LIBRARIES "@LLD_LIBRARIES@"
#define ZIG_LLVM_CONFIG_EXE "@LLVM_CONFIG_EXE@"
#define ZIG_DIA_GUIDS_LIB "@ZIG_DIA_GUIDS_LIB_ESCAPED@"
+#define ZIG_STD_FILES "@ZIG_STD_FILES@"
+#define ZIG_C_HEADER_FILES "@ZIG_C_HEADER_FILES@"
#endif
src/install_files.h.in
@@ -1,15 +0,0 @@
-/*
- * Copyright (c) 2019 Andrew Kelley
- *
- * This file is part of zig, which is MIT licensed.
- * See http://opensource.org/licenses/MIT
- */
-
-#ifndef ZIG_INSTALL_FILES_H
-#define ZIG_INSTALL_FILES_H
-
-#define ZIG_MUSL_SRC_FILES "@ZIG_MUSL_SRC_FILES@"
-#define ZIG_STD_FILES "@ZIG_STD_FILES@"
-#define ZIG_C_HEADER_FILES "@ZIG_C_HEADER_FILES@"
-
-#endif
src/link.cpp
@@ -501,15 +501,13 @@ static const char *build_musl(CodeGen *parent) {
MuslSrcO3,
};
+ const char *target_musl_arch_name = musl_arch_name(parent->zig_target);
+
HashMap<Buf *, MuslSrc, buf_hash, buf_eql_buf> source_table = {};
source_table.init(1800);
- SplitIterator install_h_it = memSplit(str(ZIG_MUSL_SRC_FILES), str(";"));
- const char *target_musl_arch_name = musl_arch_name(parent->zig_target);
- for (;;) {
- Optional<Slice<uint8_t>> opt_item = SplitIterator_next(&install_h_it);
- if (!opt_item.is_some) break;
- Buf *src_file = buf_create_from_slice(opt_item.value);
+ for (size_t i = 0; i < array_length(ZIG_MUSL_SRC_FILES); i += 1) {
+ Buf *src_file = buf_create_from_str(ZIG_MUSL_SRC_FILES[i]);
MuslSrc src_kind;
if (buf_ends_with_str(src_file, ".c")) {
src/main.cpp
@@ -10,7 +10,6 @@
#include "codegen.hpp"
#include "compiler.hpp"
#include "config.h"
-#include "install_files.h"
#include "error.hpp"
#include "os.hpp"
#include "target.hpp"
CMakeLists.txt
@@ -6639,10 +6639,17 @@ configure_file (
"${CMAKE_SOURCE_DIR}/src/config.h.in"
"${CMAKE_BINARY_DIR}/config.h"
)
-configure_file (
- "${CMAKE_SOURCE_DIR}/src/install_files.h.in"
- "${CMAKE_BINARY_DIR}/install_files.h"
-)
+set(INSTALL_FILES_H "${CMAKE_BINARY_DIR}/install_files.h")
+file(REMOVE "${INSTALL_FILES_H}")
+file(APPEND "${INSTALL_FILES_H}" "#ifndef ZIG_INSTALL_FILES_H\n")
+file(APPEND "${INSTALL_FILES_H}" "#define ZIG_INSTALL_FILES_H\n")
+file(APPEND "${INSTALL_FILES_H}" "static const char *ZIG_MUSL_SRC_FILES[] = {\n")
+foreach(filename ${ZIG_MUSL_SRC_FILES})
+ file(APPEND "${INSTALL_FILES_H}" "\"${filename}\",\n")
+endforeach(filename)
+file(APPEND "${INSTALL_FILES_H}" "};\n")
+file(APPEND "${INSTALL_FILES_H}" "#endif\n")
+
include_directories(
${CMAKE_SOURCE_DIR}