From 4d7fb3e8d6b24340fe9f4217e2c2c04e9a0f3a76 Mon Sep 17 00:00:00 2001 From: Zachary Pierson Date: Tue, 21 Nov 2017 16:16:53 -0600 Subject: [PATCH] Changed `string_has_extension` to `string_ends_with`. Fixed macOS target triple. --- src/ir_print.cpp | 2 +- src/main.cpp | 8 ++++---- src/parser.cpp | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/ir_print.cpp b/src/ir_print.cpp index 48ca2e1cb..0c84b3567 100644 --- a/src/ir_print.cpp +++ b/src/ir_print.cpp @@ -1860,7 +1860,7 @@ void print_llvm_ir(irGen *ir) { i32 word_bits = cast(i32)(8*build_context.word_size); if (build_context.ODIN_OS == "osx" || build_context.ODIN_OS == "macos") { GB_ASSERT(word_bits == 64); - ir_write_string(f, "target triple = x86_64-apple-macosx10.8\n\n"); + ir_write_string(f, "target triple = \"x86_64-apple-macosx10.8\"\n\n"); } else if (build_context.ODIN_OS == "windows") { // ir_fprintf(f, "target triple = \"x86%s-pc-windows\"\n\n", word_bits == 64 ? "_64" : ""); } diff --git a/src/main.cpp b/src/main.cpp index cc58a7144..7d9470a0f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -859,10 +859,10 @@ int main(int arg_count, char **arg_ptr) { if (lib.len > 2 && lib[0] == '-' && lib[1] == 'f') { // framework thingie lib_str = gb_string_append_fmt(lib_str, " -framework %.*s ", (int)(lib.len) - 2, lib.text + 2); - } else if (string_has_extension(lib, str_lit("a"))) { + } else if (string_ends_with(lib, str_lit(".a"))) { // static libs, absolute full path relative to the file in which the lib was imported from lib_str = gb_string_append_fmt(lib_str, " %.*s ", LIT(lib)); - } else if (string_has_extension(lib, str_lit("dylib"))) { + } else if (string_ends_with(lib, str_lit(".dylib"))) { // dynamic lib, relative path to executable lib_str = gb_string_append_fmt(lib_str, " -l:%s/%.*s ", cwd, LIT(lib)); } else { @@ -875,10 +875,10 @@ int main(int arg_count, char **arg_ptr) { // available at runtime wherever the executable is run, so we make require those to be // local to the executable (unless the system collection is used, in which case we search // the system library paths for the library file). - if (string_has_extension(lib, str_lit("a"))) { + if (string_ends_with(lib, str_lit(".a"))) { // static libs, absolute full path relative to the file in which the lib was imported from lib_str = gb_string_append_fmt(lib_str, " -l:%.*s ", LIT(lib)); - } else if (string_has_extension(lib, str_lit("so"))) { + } else if (string_ends_with(lib, str_lit(".so"))) { // dynamic lib, relative path to executable // NOTE(vassvik): it is the user's responsibility to make sure the shared library files are visible // at runtimeto the executable diff --git a/src/parser.cpp b/src/parser.cpp index d39267869..fc0dd13a0 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -4905,7 +4905,7 @@ bool determine_path_from_string(Parser *p, AstNode *node, String base_dir, Strin // working directory of the exe to the library search paths. // Static libraries can be linked directly with the full pathname // - if (node->kind == AstNode_ForeignImportDecl && string_has_extension(file_str, str_lit("so"))) { + if (node->kind == AstNode_ForeignImportDecl && string_ends_with(file_str, str_lit(".so"))) { *path = file_str; return true; }