From 0dff15df552a9b15ab0c9711993757b86f5ea797 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <besser82@fedoraproject.org>
Date: Sun, 30 Apr 2017 12:28:29 +0200
Subject: [PATCH] Fix detection of Scala
---
cmake/FindScala.cmake | 36 ++++++++++++++++++++----------------
1 file changed, 20 insertions(+), 16 deletions(-)
diff --git a/cmake/FindScala.cmake b/cmake/FindScala.cmake
index 46c683e..4c852b3 100644
--- a/cmake/FindScala.cmake
+++ b/cmake/FindScala.cmake
@@ -6,6 +6,8 @@ set(_SCALA_PATHS
/sw
/usr
/usr/share/java
+ /usr/share/scala
+ /usr/share/scala/lib
)
find_package(Java COMPONENTS Runtime)
@@ -25,29 +27,31 @@ find_program(Scala_SCALAC_EXECUTABLE
PATHS ${_SCALA_PATHS}
)
-find_jar(Scala_JAR_EXECUTABLE "scala-library")
+find_jar(Scala_JAR_EXECUTABLE
+ NAMES "scala-library"
+ PATHS ${_SCALA_PATHS}
+ )
-if(Scala_SCALA_EXECUTABLE)
- execute_process(COMMAND ${Scala_SCALA_EXECUTABLE} -version
- RESULT_VARIABLE SCALA_SEARCH_SUCCESS
- OUTPUT_VARIABLE SCALA_VERSION
- ERROR_VARIABLE SCALA_VERSION
- OUTPUT_STRIP_TRAILING_WHITESPACE
- ERROR_STRIP_TRAILING_WHITESPACE)
- if( SCALA_SEARCH_SUCCESS )
- message( FATAL_ERROR "Error executing scala -version" )
- else()
- string(TOLOWER ${SCALA_VERSION} SCALA_VERSION)
- string( REGEX REPLACE ".*([0-9]+\\.[0-9]+\\.[0-9_.]+.*)" "\\1" SCALA_VERSION "${SCALA_VERSION}" )
- string( REGEX REPLACE "([0-9]+\\.[0-9]+\\.[0-9_.]).*" "\\1" SCALA_VERSION ${SCALA_VERSION} )
- endif()
+if( "${Scala_SCALA_EXECUTABLE}" MATCHES "Scala_SCALA_EXECUTABLE-NOTFOUND" )
+ message( FATAL_ERROR "Error executing scala -version" )
+else()
+ execute_process(COMMAND ${Scala_SCALA_EXECUTABLE} -version
+ RESULT_VARIABLE SCALA_SEARCH_SUCCESS
+ OUTPUT_VARIABLE SCALA_VERSION
+ ERROR_VARIABLE SCALA_VERSION
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ ERROR_STRIP_TRAILING_WHITESPACE
+ )
+ string(TOLOWER ${SCALA_VERSION} SCALA_VERSION)
+ string( REGEX REPLACE ".*([0-9]+\\.[0-9]+\\.[0-9_.]+.*)" "\\1" SCALA_VERSION "${SCALA_VERSION}" )
+ string( REGEX REPLACE "([0-9]+\\.[0-9]+\\.[0-9_.]).*" "\\1" SCALA_VERSION ${SCALA_VERSION} )
endif()
include(FindPackageHandleStandardArgs)
if (CMAKE_VERSION LESS 2.8.3)
find_package_handle_standard_args(SCALA DEFAULT_MSG Scala_SCALA_EXECUTABLE)
else ()
- find_package_handle_standard_args(SCALA
+ find_package_handle_standard_args(SCALA
REQUIRED_VARS Scala_SCALA_EXECUTABLE Scala_SCALAC_EXECUTABLE Scala_JAR_EXECUTABLE
VERSION_VAR SCALA_VERSION)
endif ()