From 3a4644cfd1abaeb822b41b46f421676c12194f09 Mon Sep 17 00:00:00 2001 From: Wojciech Mazur Date: Sun, 12 Oct 2025 13:14:35 +0200 Subject: [PATCH 1/2] Sync with 0.5.9 snapshots - add copt and cppopt flags --- build.sbt | 2 +- .../cli/options/NativeConfigOptions.scala | 37 ++++++++++++++++++- .../cli/utils/ConfigConverter.scala | 2 + 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/build.sbt b/build.sbt index 69a3329..bf67cc1 100644 --- a/build.sbt +++ b/build.sbt @@ -3,7 +3,7 @@ import scala.scalanative.nir.Proxy.nativeBinaryVersion val ScalaNativeVersion = envOrNone("CI_NATIVE_VERSION") .filterNot(_.isEmpty) - .getOrElse("0.5.8") + .getOrElse("0.5.9-20251011-f1febb9-SNAPSHOT") val crossScalaVersions212 = (14 to 20).map("2.12." + _) val crossScalaVersions213 = (8 to 17).map("2.13." + _) diff --git a/cli/src/main/scala/scala/scalanative/cli/options/NativeConfigOptions.scala b/cli/src/main/scala/scala/scalanative/cli/options/NativeConfigOptions.scala index 0adf3d7..e3480d8 100644 --- a/cli/src/main/scala/scala/scalanative/cli/options/NativeConfigOptions.scala +++ b/cli/src/main/scala/scala/scalanative/cli/options/NativeConfigOptions.scala @@ -25,6 +25,8 @@ case class NativeConfigOptions( ltp: List[String] = List.empty, linkingOption: List[String] = List.empty, compileOption: List[String] = List.empty, + cCompileOptions: List[String] = List.empty, + cppCompileOptions: List[String] = List.empty, targetTriple: Option[String] = None, clang: Option[String] = None, clangPP: Option[String] = None, @@ -227,12 +229,43 @@ object NativeConfigOptions { .valueName("") .optional() .unbounded() - .action((x, c) => + .action((value, c) => c.copy(nativeConfig = - c.nativeConfig.copy(compileOption = c.nativeConfig.compileOption :+ x) + c.nativeConfig + .copy(cCompileOptions = c.nativeConfig.cCompileOptions :+ value) ) ) .text("Compilation options passed to LLVM. Multiple can be defined.") + parser + .opt[String]("c-compile-option") + .valueName("