From ab457794b2f6c8e7029d96a228c8d7dcad4a71ce Mon Sep 17 00:00:00 2001 From: Kristoffer Carlsson Date: Tue, 16 Dec 2025 13:51:07 +0100 Subject: [PATCH] fix some OS checks for FreeBSD --- src/PackageCompiler.jl | 6 +++--- src/juliaconfig.jl | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/PackageCompiler.jl b/src/PackageCompiler.jl index 6fa7a565..5f93e24c 100644 --- a/src/PackageCompiler.jl +++ b/src/PackageCompiler.jl @@ -1309,7 +1309,7 @@ end function glob_pattern_lib(lib) Sys.iswindows() ? lib * "*.dll" : Sys.isapple() ? lib * "*.dylib" : - Sys.islinux() ? lib * "*.so*" : + (Sys.islinux() || Sys.isbsd()) ? lib * "*.so*" : error("unknown os") end @@ -1394,7 +1394,7 @@ function bundle_julia_libraries(dest_dir, stdlibs) # Required libraries println(" ├── Base:") - os = Sys.islinux() ? "linux" : Sys.isapple() ? "mac" : "windows" + os = Sys.isapple() ? "mac" : (Sys.islinux() || Sys.isbsd()) ? "linux" : "windows" for lib in required_libraries[os] if Sys.islinux() && lib == "libstdc++" matches = libstdcxx @@ -1429,7 +1429,7 @@ function bundle_julia_libraries(dest_dir, stdlibs) major, minor, patch = VERSION.major, VERSION.minor, VERSION.patch r = if Sys.isapple() Regex("^libjulia(\\.$major(\\.$minor(\\.$patch)?)?)?\\.dylib\$") - elseif Sys.islinux() + elseif Sys.islinux() || Sys.isbsd() Regex("^libjulia\\.so(\\.$major(\\.$minor(\\.$patch)?)?)?\$") elseif Sys.iswindows() Regex("^libjulia\\.dll\$") diff --git a/src/juliaconfig.jl b/src/juliaconfig.jl index 66eb1673..3ab8c0e4 100644 --- a/src/juliaconfig.jl +++ b/src/juliaconfig.jl @@ -34,16 +34,16 @@ function ldflags() if Sys.iswindows() fl = fl * " -Wl,--stack,8388608" fl = fl * " -Wl,--export-all-symbols" - elseif Sys.islinux() + elseif Sys.islinux() || (Sys.isbsd() && !Sys.isapple()) fl = fl * " -Wl,--export-dynamic" end return fl end function ldlibs() - libnames = isdebugbuild() ? "-ljulia-debug -ljulia-internal-debug" : + libnames = isdebugbuild() ? "-ljulia-debug -ljulia-internal-debug" : "-ljulia -ljulia-internal" - if Sys.islinux() + if Sys.islinux() || (Sys.isbsd() && !Sys.isapple()) return "-Wl,-rpath-link,$(shell_escape(julia_libdir())) -Wl,-rpath-link,$(shell_escape(julia_private_libdir())) $libnames" elseif Sys.iswindows() return "$libnames -lopenlibm"