forked from pool/cmake
Compare commits
6 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 6365f9c56c | |||
| b7716479a3 | |||
| e1bcb89846 | |||
| e08f141d20 | |||
| 83e5ba5bde | |||
| 4fdaa5714f |
347
FindLua.cmake
Normal file
347
FindLua.cmake
Normal file
@@ -0,0 +1,347 @@
|
|||||||
|
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||||
|
# file LICENSE.rst or https://cmake.org/licensing for details.
|
||||||
|
|
||||||
|
#[=======================================================================[.rst:
|
||||||
|
FindLua
|
||||||
|
-------
|
||||||
|
|
||||||
|
Finds the Lua library:
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
find_package(Lua [<version>] [...])
|
||||||
|
|
||||||
|
Lua is a embeddable scripting language.
|
||||||
|
|
||||||
|
.. versionadded:: 3.18
|
||||||
|
Support for Lua 5.4.
|
||||||
|
|
||||||
|
.. versionadded:: 4.3
|
||||||
|
Support for Lua 5.5.
|
||||||
|
|
||||||
|
When working with Lua, its library headers are intended to be included in
|
||||||
|
project source code as:
|
||||||
|
|
||||||
|
.. code-block:: c
|
||||||
|
|
||||||
|
#include <lua.h>
|
||||||
|
|
||||||
|
and not:
|
||||||
|
|
||||||
|
.. code-block:: c
|
||||||
|
|
||||||
|
#include <lua/lua.h>
|
||||||
|
|
||||||
|
This is because, the location of Lua headers may differ across platforms and may
|
||||||
|
exist in locations other than ``lua/``.
|
||||||
|
|
||||||
|
Result Variables
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
This module defines the following variables:
|
||||||
|
|
||||||
|
``Lua_FOUND``
|
||||||
|
.. versionadded:: 3.3
|
||||||
|
|
||||||
|
Boolean indicating whether (the requested version of) Lua was found.
|
||||||
|
|
||||||
|
``Lua_VERSION``
|
||||||
|
.. versionadded:: 4.2
|
||||||
|
|
||||||
|
The version of Lua found.
|
||||||
|
|
||||||
|
``Lua_VERSION_MAJOR``
|
||||||
|
.. versionadded:: 4.2
|
||||||
|
|
||||||
|
The major version of Lua found.
|
||||||
|
|
||||||
|
``Lua_VERSION_MINOR``
|
||||||
|
.. versionadded:: 4.2
|
||||||
|
|
||||||
|
The minor version of Lua found.
|
||||||
|
|
||||||
|
``Lua_VERSION_PATCH``
|
||||||
|
.. versionadded:: 4.2
|
||||||
|
|
||||||
|
The patch version of Lua found.
|
||||||
|
|
||||||
|
``LUA_LIBRARIES``
|
||||||
|
Libraries needed to link against to use Lua. This list includes both ``lua``
|
||||||
|
and ``lualib`` libraries.
|
||||||
|
|
||||||
|
Cache Variables
|
||||||
|
^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
The following cache variables may also be set:
|
||||||
|
|
||||||
|
``LUA_INCLUDE_DIR``
|
||||||
|
The directory containing the Lua header files, such as ``lua.h``,
|
||||||
|
``lualib.h``, and ``lauxlib.h``, needed to use Lua.
|
||||||
|
|
||||||
|
Deprecated Variables
|
||||||
|
^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
The following variables are provided for backward compatibility:
|
||||||
|
|
||||||
|
``LUA_FOUND``
|
||||||
|
.. deprecated:: 4.2
|
||||||
|
Use ``Lua_FOUND``, which has the same value.
|
||||||
|
|
||||||
|
Boolean indicating whether (the requested version of) Lua was found.
|
||||||
|
|
||||||
|
``LUA_VERSION_STRING``
|
||||||
|
.. deprecated:: 4.2
|
||||||
|
Superseded by the ``Lua_VERSION``.
|
||||||
|
|
||||||
|
The version of Lua found.
|
||||||
|
|
||||||
|
``LUA_VERSION_MAJOR``
|
||||||
|
.. deprecated:: 4.2
|
||||||
|
Superseded by the ``Lua_VERSION_MAJOR``.
|
||||||
|
|
||||||
|
The major version of Lua found.
|
||||||
|
|
||||||
|
``LUA_VERSION_MINOR``
|
||||||
|
.. deprecated:: 4.2
|
||||||
|
Superseded by the ``Lua_VERSION_MINOR``.
|
||||||
|
|
||||||
|
The minor version of Lua found.
|
||||||
|
|
||||||
|
``LUA_VERSION_PATCH``
|
||||||
|
.. deprecated:: 4.2
|
||||||
|
Superseded by the ``Lua_VERSION_PATCH``.
|
||||||
|
|
||||||
|
The patch version of Lua found.
|
||||||
|
|
||||||
|
Examples
|
||||||
|
^^^^^^^^
|
||||||
|
|
||||||
|
Finding the Lua library and creating an interface :ref:`imported target
|
||||||
|
<Imported Targets>` that encapsulates its usage requirements for linking to a
|
||||||
|
project target:
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
find_package(Lua)
|
||||||
|
|
||||||
|
if(Lua_FOUND AND NOT TARGET Lua::Lua)
|
||||||
|
add_library(Lua::Lua INTERFACE IMPORTED)
|
||||||
|
set_target_properties(
|
||||||
|
Lua::Lua
|
||||||
|
PROPERTIES
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES "${LUA_INCLUDE_DIR}"
|
||||||
|
INTERFACE_LINK_LIBRARIES "${LUA_LIBRARIES}"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
target_link_libraries(project_target PRIVATE Lua::Lua)
|
||||||
|
#]=======================================================================]
|
||||||
|
|
||||||
|
cmake_policy(PUSH) # Policies apply to functions at definition-time
|
||||||
|
cmake_policy(SET CMP0140 NEW)
|
||||||
|
cmake_policy(SET CMP0159 NEW) # file(STRINGS) with REGEX updates CMAKE_MATCH_<n>
|
||||||
|
|
||||||
|
unset(_lua_include_subdirs)
|
||||||
|
unset(_lua_library_names)
|
||||||
|
unset(_lua_append_versions)
|
||||||
|
|
||||||
|
# this is a function only to have all the variables inside go away automatically
|
||||||
|
function(_lua_get_versions)
|
||||||
|
set(LUA_VERSIONS5 5.5 5.4 5.3 5.2 5.1 5.0)
|
||||||
|
|
||||||
|
if (Lua_FIND_VERSION_EXACT)
|
||||||
|
if (Lua_FIND_VERSION_COUNT GREATER 1)
|
||||||
|
set(_lua_append_versions ${Lua_FIND_VERSION_MAJOR}.${Lua_FIND_VERSION_MINOR})
|
||||||
|
endif ()
|
||||||
|
elseif (Lua_FIND_VERSION)
|
||||||
|
# once there is a different major version supported this should become a loop
|
||||||
|
if (NOT Lua_FIND_VERSION_MAJOR GREATER 5)
|
||||||
|
if (Lua_FIND_VERSION_COUNT EQUAL 1)
|
||||||
|
set(_lua_append_versions ${LUA_VERSIONS5})
|
||||||
|
else ()
|
||||||
|
foreach (subver IN LISTS LUA_VERSIONS5)
|
||||||
|
if (NOT subver VERSION_LESS ${Lua_FIND_VERSION})
|
||||||
|
list(APPEND _lua_append_versions ${subver})
|
||||||
|
endif ()
|
||||||
|
endforeach ()
|
||||||
|
# New version -> Search for it (heuristic only! Defines in include might have changed)
|
||||||
|
if (NOT _lua_append_versions)
|
||||||
|
set(_lua_append_versions ${Lua_FIND_VERSION_MAJOR}.${Lua_FIND_VERSION_MINOR})
|
||||||
|
endif()
|
||||||
|
endif ()
|
||||||
|
endif ()
|
||||||
|
else ()
|
||||||
|
# once there is a different major version supported this should become a loop
|
||||||
|
set(_lua_append_versions ${LUA_VERSIONS5})
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
if (LUA_Debug)
|
||||||
|
message(STATUS "Considering following Lua versions: ${_lua_append_versions}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(_lua_append_versions "${_lua_append_versions}" PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(_lua_set_version_vars)
|
||||||
|
set(_lua_include_subdirs_raw "lua")
|
||||||
|
|
||||||
|
foreach (ver IN LISTS _lua_append_versions)
|
||||||
|
string(REGEX MATCH "^([0-9]+)\\.([0-9]+)$" _ver "${ver}")
|
||||||
|
list(APPEND _lua_include_subdirs_raw
|
||||||
|
lua${CMAKE_MATCH_1}${CMAKE_MATCH_2}
|
||||||
|
lua${CMAKE_MATCH_1}.${CMAKE_MATCH_2}
|
||||||
|
lua-${CMAKE_MATCH_1}.${CMAKE_MATCH_2}
|
||||||
|
)
|
||||||
|
endforeach ()
|
||||||
|
|
||||||
|
# Prepend "include/" to each path directly after the path
|
||||||
|
set(_lua_include_subdirs "include")
|
||||||
|
foreach (dir IN LISTS _lua_include_subdirs_raw)
|
||||||
|
list(APPEND _lua_include_subdirs "${dir}" "include/${dir}")
|
||||||
|
endforeach ()
|
||||||
|
|
||||||
|
set(_lua_include_subdirs "${_lua_include_subdirs}" PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(_lua_get_header_version)
|
||||||
|
unset(Lua_VERSION PARENT_SCOPE)
|
||||||
|
set(_hdr_file "${LUA_INCLUDE_DIR}/lua.h")
|
||||||
|
|
||||||
|
if (NOT EXISTS "${_hdr_file}")
|
||||||
|
return()
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
# At least 5.[012] have different ways to express the version
|
||||||
|
# so all of them need to be tested. Lua 5.2 defines LUA_VERSION
|
||||||
|
# and LUA_RELEASE as joined by the C preprocessor, so avoid those.
|
||||||
|
file(STRINGS "${_hdr_file}" lua_version_strings
|
||||||
|
REGEX "^#define[ \t]+LUA_(RELEASE[ \t]+\"Lua [0-9]|VERSION([ \t]+\"Lua [0-9]|_[MR])).*")
|
||||||
|
|
||||||
|
string(REGEX REPLACE ".*;#define[ \t]+LUA_VERSION_MAJOR(_N)?[ \t]+\"?([0-9])\"?[ \t]*;.*" "\\2" Lua_VERSION_MAJOR ";${lua_version_strings};")
|
||||||
|
|
||||||
|
if (Lua_VERSION_MAJOR MATCHES "^[0-9]+$")
|
||||||
|
string(REGEX REPLACE ".*;#define[ \t]+LUA_VERSION_MINOR(_N)?[ \t]+\"?([0-9])\"?[ \t]*;.*" "\\2" Lua_VERSION_MINOR ";${lua_version_strings};")
|
||||||
|
string(REGEX REPLACE ".*;#define[ \t]+LUA_VERSION_RELEASE(_N)?[ \t]+\"?([0-9])\"?[ \t]*;.*" "\\2" Lua_VERSION_PATCH ";${lua_version_strings};")
|
||||||
|
set(Lua_VERSION "${Lua_VERSION_MAJOR}.${Lua_VERSION_MINOR}.${Lua_VERSION_PATCH}")
|
||||||
|
else ()
|
||||||
|
string(REGEX REPLACE ".*;#define[ \t]+LUA_RELEASE[ \t]+\"Lua ([0-9.]+)\"[ \t]*;.*" "\\1" Lua_VERSION ";${lua_version_strings};")
|
||||||
|
if (NOT Lua_VERSION MATCHES "^[0-9.]+$")
|
||||||
|
string(REGEX REPLACE ".*;#define[ \t]+LUA_VERSION[ \t]+\"Lua ([0-9.]+)\"[ \t]*;.*" "\\1" Lua_VERSION ";${lua_version_strings};")
|
||||||
|
endif ()
|
||||||
|
string(REGEX REPLACE "^([0-9]+)\\.[0-9.]*$" "\\1" Lua_VERSION_MAJOR "${Lua_VERSION}")
|
||||||
|
string(REGEX REPLACE "^[0-9]+\\.([0-9]+)[0-9.]*$" "\\1" Lua_VERSION_MINOR "${Lua_VERSION}")
|
||||||
|
string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]).*" "\\1" Lua_VERSION_PATCH "${Lua_VERSION}")
|
||||||
|
endif ()
|
||||||
|
foreach (ver IN LISTS _lua_append_versions)
|
||||||
|
if (ver STREQUAL "${Lua_VERSION_MAJOR}.${Lua_VERSION_MINOR}")
|
||||||
|
set(LUA_VERSION_STRING "${Lua_VERSION}")
|
||||||
|
set(LUA_VERSION_MAJOR "${Lua_VERSION_MAJOR}")
|
||||||
|
set(LUA_VERSION_MINOR "${Lua_VERSION_MINOR}")
|
||||||
|
set(LUA_VERSION_PATCH "${Lua_VERSION_PATCH}")
|
||||||
|
|
||||||
|
return(
|
||||||
|
PROPAGATE
|
||||||
|
Lua_VERSION
|
||||||
|
Lua_VERSION_MAJOR
|
||||||
|
Lua_VERSION_MINOR
|
||||||
|
Lua_VERSION_PATCH
|
||||||
|
LUA_VERSION_STRING
|
||||||
|
LUA_VERSION_MAJOR
|
||||||
|
LUA_VERSION_MINOR
|
||||||
|
LUA_VERSION_PATCH
|
||||||
|
)
|
||||||
|
endif ()
|
||||||
|
endforeach ()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(_lua_find_header)
|
||||||
|
_lua_set_version_vars()
|
||||||
|
|
||||||
|
# Initialize as local variable
|
||||||
|
set(CMAKE_IGNORE_PATH ${CMAKE_IGNORE_PATH})
|
||||||
|
while (TRUE)
|
||||||
|
# Find the next header to test. Check each possible subdir in order
|
||||||
|
# This prefers e.g. higher versions as they are earlier in the list
|
||||||
|
# It is also consistent with previous versions of FindLua
|
||||||
|
foreach (subdir IN LISTS _lua_include_subdirs)
|
||||||
|
find_path(LUA_INCLUDE_DIR lua.h
|
||||||
|
HINTS ENV LUA_DIR
|
||||||
|
PATH_SUFFIXES ${subdir}
|
||||||
|
)
|
||||||
|
if (LUA_INCLUDE_DIR)
|
||||||
|
break()
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
# Did not found header -> Fail
|
||||||
|
if (NOT LUA_INCLUDE_DIR)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
_lua_get_header_version()
|
||||||
|
# Found accepted version -> Ok
|
||||||
|
if (Lua_VERSION)
|
||||||
|
if (LUA_Debug)
|
||||||
|
message(STATUS "Found suitable version ${Lua_VERSION} in ${LUA_INCLUDE_DIR}/lua.h")
|
||||||
|
endif()
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
# Found wrong version -> Ignore this path and retry
|
||||||
|
if (LUA_Debug)
|
||||||
|
message(STATUS "Ignoring unsuitable version in ${LUA_INCLUDE_DIR}")
|
||||||
|
endif()
|
||||||
|
list(APPEND CMAKE_IGNORE_PATH "${LUA_INCLUDE_DIR}")
|
||||||
|
unset(LUA_INCLUDE_DIR CACHE)
|
||||||
|
unset(LUA_INCLUDE_DIR)
|
||||||
|
unset(LUA_INCLUDE_DIR PARENT_SCOPE)
|
||||||
|
endwhile ()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
_lua_get_versions()
|
||||||
|
_lua_find_header()
|
||||||
|
_lua_get_header_version()
|
||||||
|
unset(_lua_append_versions)
|
||||||
|
|
||||||
|
if (Lua_VERSION)
|
||||||
|
set(_lua_library_names
|
||||||
|
lua${Lua_VERSION_MAJOR}${Lua_VERSION_MINOR}
|
||||||
|
lua${Lua_VERSION_MAJOR}.${Lua_VERSION_MINOR}
|
||||||
|
lua-${Lua_VERSION_MAJOR}.${Lua_VERSION_MINOR}
|
||||||
|
lua.${Lua_VERSION_MAJOR}.${Lua_VERSION_MINOR}
|
||||||
|
)
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
find_library(LUA_LIBRARY
|
||||||
|
NAMES ${_lua_library_names} lua
|
||||||
|
NAMES_PER_DIR
|
||||||
|
HINTS
|
||||||
|
ENV LUA_DIR
|
||||||
|
PATH_SUFFIXES lib
|
||||||
|
)
|
||||||
|
unset(_lua_library_names)
|
||||||
|
|
||||||
|
if (LUA_LIBRARY)
|
||||||
|
# include the math library for Unix
|
||||||
|
if (UNIX AND NOT APPLE AND NOT BEOS)
|
||||||
|
find_library(LUA_MATH_LIBRARY m)
|
||||||
|
mark_as_advanced(LUA_MATH_LIBRARY)
|
||||||
|
set(LUA_LIBRARIES "${LUA_LIBRARY};${LUA_MATH_LIBRARY}")
|
||||||
|
|
||||||
|
# include dl library for statically-linked Lua library
|
||||||
|
get_filename_component(LUA_LIB_EXT ${LUA_LIBRARY} EXT)
|
||||||
|
if(LUA_LIB_EXT STREQUAL CMAKE_STATIC_LIBRARY_SUFFIX)
|
||||||
|
list(APPEND LUA_LIBRARIES ${CMAKE_DL_LIBS})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# For Windows and Mac, don't need to explicitly include the math library
|
||||||
|
else ()
|
||||||
|
set(LUA_LIBRARIES "${LUA_LIBRARY}")
|
||||||
|
endif ()
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
find_package_handle_standard_args(Lua
|
||||||
|
REQUIRED_VARS LUA_LIBRARIES LUA_INCLUDE_DIR
|
||||||
|
VERSION_VAR Lua_VERSION)
|
||||||
|
|
||||||
|
mark_as_advanced(LUA_INCLUDE_DIR LUA_LIBRARY)
|
||||||
|
|
||||||
|
cmake_policy(POP)
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
366e6782df30d8121b6a352e697d976d561f94bf072ff5eea28b94fd3448d7c2 cmake-4.1.3-files-v1.json
|
|
||||||
805faedb9ca51a957249a307e73b4141a1a34b83baa000272b49ddf2c2ae6bd0 cmake-4.1.3-linux-aarch64.sh
|
|
||||||
06bb6c4d5d4a31b95ad419a4c8efb88364fa72077ba7a29c909e7b658760f6b3 cmake-4.1.3-linux-aarch64.tar.gz
|
|
||||||
0d06fb9e1c5bea523fd88f239327d354e40c00486d1585a68c5e0f1ca0cef7c7 cmake-4.1.3-linux-x86_64.sh
|
|
||||||
507e9c721d3a0084df30661c4731980daa18f077fdcc71f7d342a21b07b07920 cmake-4.1.3-linux-x86_64.tar.gz
|
|
||||||
c8a8bf120c438a8ace960d6caf22481f9432d23fb5176bef9fb9ab4dfeb5abe8 cmake-4.1.3-macos-universal.dmg
|
|
||||||
c49928ef376f563214902d0a9b5de619febc7d3cef9a42b8ce8e208911d3e50b cmake-4.1.3-macos-universal.tar.gz
|
|
||||||
9aaea199c105eac8d2c521807a16193630e903705e758878ac38f87ae6787a57 cmake-4.1.3-macos10.10-universal.dmg
|
|
||||||
e6ab486400d51133bc577b055e9e276b121c1bbc6eb84a43c816eaeb628671bd cmake-4.1.3-macos10.10-universal.tar.gz
|
|
||||||
d60dd58498eb1d27e501817069f9059c63784074bfa9937ea8745ad4fac7b125 cmake-4.1.3-sunos-sparc64.sh
|
|
||||||
848befcd186746485a86c25f6d4ab47117d8394dbaf539b92abe25c58d67d850 cmake-4.1.3-sunos-sparc64.tar.gz
|
|
||||||
95a7a52d424c35444faf0438aff387d155bd1a88ad1a0c7d79cbe7a9c48822f8 cmake-4.1.3-sunos-x86_64.sh
|
|
||||||
00c3af5f91f61e23de2619b250c531966df03d0a6803717c63a2bc31679056ea cmake-4.1.3-sunos-x86_64.tar.gz
|
|
||||||
64ec35043c00de01020854cc48c3628af0fbfaaa5ae26bd63b29b1fd547ba43a cmake-4.1.3-windows-arm64.msi
|
|
||||||
4b3ec4917d0d04bf9a83d171f3be552c9214e75597893b40bd10309033265ec5 cmake-4.1.3-windows-arm64.zip
|
|
||||||
ec1601a86dcb3ddecec4c548a70c316a80a11e4d04d4b7271a76904a0280a763 cmake-4.1.3-windows-i386.msi
|
|
||||||
86165b662284d5c5c43478eff0470d1e9a2ea49602bad5f210e87ade68ba76cf cmake-4.1.3-windows-i386.zip
|
|
||||||
5222342b6575e5016e4e6732a53f764e3e59e2d9caf5881283646bb6a366ddf1 cmake-4.1.3-windows-x86_64.msi
|
|
||||||
010d496453fdc5d11f88dbbcc0a5e54c5db7d9e04e008f516087d9d163301d89 cmake-4.1.3-windows-x86_64.zip
|
|
||||||
765879a53d178bf1e1509768de4c9a672dabaa20047a9f3809571558e783be88 cmake-4.1.3.tar.gz
|
|
||||||
540d8d8ea74c13bf83b367373e071e73d11471c293a68a41084ae6bb02cb61a8 cmake-4.1.3.zip
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCgAdFiEExsJlMku+vcNQtRPQLSzvEDSSFoQFAmkckk8ACgkQLSzvEDSS
|
|
||||||
FoS1ZQ//Q9YrfNZUiYeZDvXDi35+mTkhvY1YcimAoJ8XirocnQ+AHwsylcI+1agE
|
|
||||||
4ikI9hK8nHEwdcfIPUWGVhsjaVgkq5xwYUGhDG8gkqXaiNnj4mrlmhNMGw1i8glL
|
|
||||||
xNm+LqMFkKncOiNPK4bug65d1A6NBQN/DclmvIyks/AOJkdS8KxxYxdezeni6S+5
|
|
||||||
GTkQTZSKnFdE+Phcg8YUVgjTB+eMu4wSWSR9oXk1AOJ5XY2IClJfwMtds245FsOZ
|
|
||||||
UDIxxJ7G9Bghrz41BqmaSdYKSdpXINPDat/98n9MaPB+lrJ0oPfSqmDv0Zy6A/Un
|
|
||||||
kzD/EJhQvLuABzXjGsWRs1dKWJCOkUsII+u19MIGkx9nFR6dKb+KExyclC9tlWna
|
|
||||||
JRYnB2ZIR3BP+gYFdvdXw9KAlbZMAwWfB91Uxgw1siXQ1jWw2hYUE2FWOFRo7Vcm
|
|
||||||
rpg2esGKZIi/BJyNw6s3T9x670gUp0wJnOLsESGvFopGvtdZZ9O/MRrmZvEQ2mHV
|
|
||||||
Awfd9YXasA/94NYxHdFIKaUWmqktq4mseiFdrpnKXo6oAO6jmk/dVBVvfkshEMaD
|
|
||||||
vWFXthUkG1CRx1UXH8IrO1NUZ//zEew2YC2fwW8kWg1cJIu+M+hxBGM+639LVVnf
|
|
||||||
m54yBoww8b3d7eaE8o7xwipHEYJwBt5r45tibCLzceoYngQJZ1E=
|
|
||||||
=jdIu
|
|
||||||
-----END PGP SIGNATURE-----
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:765879a53d178bf1e1509768de4c9a672dabaa20047a9f3809571558e783be88
|
|
||||||
size 12049989
|
|
||||||
21
cmake-4.2.3-SHA-256.txt
Normal file
21
cmake-4.2.3-SHA-256.txt
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
e6ce51721f6409682aacb16f575d6e24510c19270dea77976a5354413f57380f cmake-4.2.3-files-v1.json
|
||||||
|
8e65cb924c41e3f6c5c98d1900aeeab3cfe3494f18ed8e5e63b91022df710401 cmake-4.2.3-linux-aarch64.sh
|
||||||
|
e529c75f18f27ba27c52b329efe7b1f98dc32ccc0c6d193c7ab343f888962672 cmake-4.2.3-linux-aarch64.tar.gz
|
||||||
|
b760514fde7fc510fcd16e51a81a4d2687b1f051b263d40b6806789d3d9fd62c cmake-4.2.3-linux-x86_64.sh
|
||||||
|
5bb505d5e0cca0480a330f7f27ccf52c2b8b5214c5bba97df08899f5ef650c23 cmake-4.2.3-linux-x86_64.tar.gz
|
||||||
|
d3ac47185cbad9e264d7afac18eb964139f90a641f8442189e64d1da388f120d cmake-4.2.3-macos-universal.dmg
|
||||||
|
c2302d3e9c48daabee5ea7c4db4b2b93b989bcc89dae8b760880e00120641b5b cmake-4.2.3-macos-universal.tar.gz
|
||||||
|
da2f41884400922fd396d774530a90e9f2ba8fbb404d8a1c629a02b767c78265 cmake-4.2.3-macos10.10-universal.dmg
|
||||||
|
910b965a6fc72928412dd369c957643ff17a0990cc2435a2573b04c1352d9ff3 cmake-4.2.3-macos10.10-universal.tar.gz
|
||||||
|
4a8f2d2d7e5013c2e23755ee98c4280decac7fe2c822f55a366cd895a5bf5a7d cmake-4.2.3-sunos-sparc64.sh
|
||||||
|
a6d6655ab46be0d96c2a130424d177f9d5c7517c652725ab9cf5bb67120e8741 cmake-4.2.3-sunos-sparc64.tar.gz
|
||||||
|
b244ab22d42e576247b289c0761ed83d117eda837d389cf41926a7e06938b2b1 cmake-4.2.3-sunos-x86_64.sh
|
||||||
|
256bde21a5b935cfde5a9e91929b1b9e2d332db8e8ca74d2cce160724a395cbc cmake-4.2.3-sunos-x86_64.tar.gz
|
||||||
|
4fdfd91a0093e76c829b1952b0d7c67779fef6876ada60204c8ba2cd3b8562e9 cmake-4.2.3-windows-arm64.msi
|
||||||
|
751b206b1cf65151b72c525d26267c1d9beebf8fafc365ae00286571d9fd3ed9 cmake-4.2.3-windows-arm64.zip
|
||||||
|
127346fbcba783401de160c93f2bb443ba0402bc5f3a683ccae63de34726256b cmake-4.2.3-windows-i386.msi
|
||||||
|
ad46d82c99a818a2cdd694fe82bec99f0cb557d864dc5fff5d54d347c7cdd98f cmake-4.2.3-windows-i386.zip
|
||||||
|
aa84ae115fc962c6691ec972548c7f7435bd9e7696c9d0487c8bd3a285277ed6 cmake-4.2.3-windows-x86_64.msi
|
||||||
|
eb4ebf5155dbb05436d675706b2a08189430df58904257ae5e91bcba4c86933c cmake-4.2.3-windows-x86_64.zip
|
||||||
|
7efaccde8c5a6b2968bad6ce0fe60e19b6e10701a12fce948c2bf79bac8a11e9 cmake-4.2.3.tar.gz
|
||||||
|
444715a33dc8bcb03221fcb4e849b948fc4392005c5abc52e2c7abbcb158374b cmake-4.2.3.zip
|
||||||
16
cmake-4.2.3-SHA-256.txt.asc
Normal file
16
cmake-4.2.3-SHA-256.txt.asc
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCgAdFiEExsJlMku+vcNQtRPQLSzvEDSSFoQFAml46IUACgkQLSzvEDSS
|
||||||
|
FoTnTg//RgYn69K2kP1PxRjjLqKrhvoWvtjzHySnNVBlttsYKjxijTX7aUgQ4Etx
|
||||||
|
vVFej1co6i2m5FA3fyaxakle27t3Nc9vYMAoa8+AQR+ZwlxQNuJy7ia6NtatdmCH
|
||||||
|
KlrAOoVpLFCITSt2zP7h+6znE3r1lPR5zP/x4VSGBU82NgZwxuxypxgVMGjGx/wP
|
||||||
|
Rm7+yKBl1DlGTGyuTmYl/3Je0R1ai2c2aijjqbtd4batlJAeTWxcyttETcTyLNkE
|
||||||
|
ER1rmz4cw1b1TTToVHnJlxqeMnHjsjoamzu+Bb+aUBJjDZfGvZl8+3z1J+UG/RuQ
|
||||||
|
wUKSOhMeRmgTsCNUSxYawBBZi/DBqjJJDiS/NbhQP7QIUCkVHixQtYx9EwSf/0JT
|
||||||
|
aGHZS77NkjbUwY9iDOqWyq7n4OeE2fMvPJZgzlLpPoVedwFYTclU7Aftoe8SlP74
|
||||||
|
SvFnEWkI4c+zdNCFqiclm7N/3b6wKbKCEE8OBuGiSde8hwqyHzlMkFsn+GdjznR0
|
||||||
|
Q4mqJ3yiZMUNHKnjidW+d2DH0HnhURCvMdprr1Yb1LQZ6oqP4RUd12QxKsXfnRSa
|
||||||
|
acCBKYRzfAtPYwTB4qGSLM1bzFtYjGbGD2E2HFNwTY+V8k3xec6FdyTl4NB83PPg
|
||||||
|
Z0nqKCZtHnD5fFvaVm5Qi/bxXZhmez3CA9mBCc/g/HQLR5OsP5E=
|
||||||
|
=vhHG
|
||||||
|
-----END PGP SIGNATURE-----
|
||||||
3
cmake-4.2.3.tar.gz
Normal file
3
cmake-4.2.3.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:7efaccde8c5a6b2968bad6ce0fe60e19b6e10701a12fce948c2bf79bac8a11e9
|
||||||
|
size 12345147
|
||||||
@@ -1,3 +1,67 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 4 01:50:26 UTC 2026 - Simon Lees <sflees@suse.de>
|
||||||
|
|
||||||
|
- Exclude Tutorial Test on i586 due to SSE issues
|
||||||
|
* https://gitlab.kitware.com/cmake/cmake/-/issues/27569
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 29 20:23:36 UTC 2026 - Christoph G <foss@grueninger.de>
|
||||||
|
|
||||||
|
- update to 4.2.3
|
||||||
|
* Tests: Remove invalid CUDA code from tests
|
||||||
|
- Exclude test RunCMake.string on 32-bit systems as it fails
|
||||||
|
with a year 2038 issue
|
||||||
|
- Remove ignored ctest parameter --force-new-ctest-process. It
|
||||||
|
has no longer any effect.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jan 28 18:34:55 UTC 2026 - Matej Cepl <mcepl@cepl.eu>
|
||||||
|
|
||||||
|
- Add the modern version of Modules/FindLua.cmake from
|
||||||
|
https://gitlab.kitware.com/cmake/cmake/-/blob/261b7b933c66/Modules/FindLua.cmake,
|
||||||
|
which works with Lua 5.5
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 22 21:19:44 UTC 2026 - Christoph G <foss@grueninger.de>
|
||||||
|
|
||||||
|
- update to 4.2.2
|
||||||
|
* Linux: Do not force 64-bit `time_t` on 32-bit archs with system
|
||||||
|
libarchive
|
||||||
|
* fileapi: Handle unused imported libraries with missing
|
||||||
|
IMPORTED_IMPLIB
|
||||||
|
* GenEx: Partially restore pre-CMP0199 behavior of $<CONFIG>
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 10 04:44:31 UTC 2025 - Christoph G <foss@grueninger.de>
|
||||||
|
|
||||||
|
- update to 4.2.1
|
||||||
|
* Source: Improve detection of Linux architectures requiring
|
||||||
|
explicit libatomic
|
||||||
|
* ExternalProject: Fix environment modification ops named
|
||||||
|
with underscores
|
||||||
|
* fileAPI: Silently ignore non-target order dependencies
|
||||||
|
* export: Fix exporting targets with multiple file sets
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 3 12:17:03 UTC 2025 - Christoph G <foss@grueninger.de>
|
||||||
|
|
||||||
|
- update to 4.2.0
|
||||||
|
* The "FASTBuild" generator was added.
|
||||||
|
* CMake now supports Cross Compiling for Emscripten with simple
|
||||||
|
toolchain files.
|
||||||
|
* The "set(CACHE{<variable>})" and "unset(CACHE{<variable>})"
|
||||||
|
commands were added to explicitly set and unset cache entries.
|
||||||
|
* The "INSTALL_OBJECT_NAME" source file property was added to control
|
||||||
|
names of installed object files for specific compiled sources.
|
||||||
|
* Nearly all find modules now provide a "<PackageName>_VERSION" result
|
||||||
|
variable matching the casing of its module name. Existing variants
|
||||||
|
such as "<PackageName>_VERSION_STRING" and uppercased
|
||||||
|
"<PACKAGENAME>_VERSION" are deprecated.
|
||||||
|
* The "ExternalProject" module's "ExternalProject_Add()" and
|
||||||
|
"ExternalProject_Add_Step()" commands now provide options to set
|
||||||
|
environment variables on the configure, build, install, and test
|
||||||
|
steps.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Dec 2 19:39:27 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
Tue Dec 2 19:39:27 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||||
|
|
||||||
|
|||||||
19
cmake.spec
19
cmake.spec
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package cmake
|
# spec file for package cmake
|
||||||
#
|
#
|
||||||
# Copyright (c) 2025 SUSE LLC and contributors
|
# Copyright (c) 2026 SUSE LLC and contributors
|
||||||
# Copyright (c) 2025 Andreas Stieger <Andreas.Stieger@gmx.de>
|
# Copyright (c) 2025 Andreas Stieger <Andreas.Stieger@gmx.de>
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
@@ -51,7 +51,7 @@
|
|||||||
%define pyver 3
|
%define pyver 3
|
||||||
%endif
|
%endif
|
||||||
Name: cmake%{?psuffix}
|
Name: cmake%{?psuffix}
|
||||||
Version: 4.1.3
|
Version: 4.2.3
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Cross-platform make system
|
Summary: Cross-platform make system
|
||||||
License: BSD-3-Clause
|
License: BSD-3-Clause
|
||||||
@@ -64,6 +64,9 @@ Source4: cmake.prov
|
|||||||
Source5: https://github.com/Kitware/CMake/releases/download/v%{version}/cmake-%{version}-SHA-256.txt
|
Source5: https://github.com/Kitware/CMake/releases/download/v%{version}/cmake-%{version}-SHA-256.txt
|
||||||
Source6: https://github.com/Kitware/CMake/releases/download/v%{version}/cmake-%{version}-SHA-256.txt.asc
|
Source6: https://github.com/Kitware/CMake/releases/download/v%{version}/cmake-%{version}-SHA-256.txt.asc
|
||||||
Source7: cmake.keyring
|
Source7: cmake.keyring
|
||||||
|
# Work with Lua 5.5
|
||||||
|
# https://gitlab.kitware.com/cmake/cmake/-/blob/261b7b933c66/Modules/FindLua.cmake
|
||||||
|
Source50: FindLua.cmake
|
||||||
Source99: README.SUSE
|
Source99: README.SUSE
|
||||||
Patch0: cmake-fix-ruby-test.patch
|
Patch0: cmake-fix-ruby-test.patch
|
||||||
# Search for python interpreters from newest to oldest rather then picking up /usr/bin/python as first choice
|
# Search for python interpreters from newest to oldest rather then picking up /usr/bin/python as first choice
|
||||||
@@ -149,6 +152,9 @@ CMake documentation for offline reading - qhelp version.
|
|||||||
echo "`grep cmake-%{version}.tar.gz %{SOURCE5} | grep -Eo '^[0-9a-f]+'` %{SOURCE0}" | sha256sum -c
|
echo "`grep cmake-%{version}.tar.gz %{SOURCE5} | grep -Eo '^[0-9a-f]+'` %{SOURCE0}" | sha256sum -c
|
||||||
%autosetup -p1 -n cmake-%{version}
|
%autosetup -p1 -n cmake-%{version}
|
||||||
|
|
||||||
|
# Use modern FindLua.cmake capable of working with Lua 5.5
|
||||||
|
cp %{SOURCE50} ./Modules/FindLua.cmake
|
||||||
|
|
||||||
%build
|
%build
|
||||||
cp -p %{SOURCE99} .
|
cp -p %{SOURCE99} .
|
||||||
%if %{with qhelp}
|
%if %{with qhelp}
|
||||||
@@ -245,8 +251,15 @@ sed -i -e "1s@#!.*python.*@#!$(realpath %{_bindir}/python3)@" %{buildroot}%{_rpm
|
|||||||
# SimpleInstall: seems to fail due to RPATH strictness
|
# SimpleInstall: seems to fail due to RPATH strictness
|
||||||
# if any other app installs then this test is bogus
|
# if any other app installs then this test is bogus
|
||||||
# suse specific brp-25-symlink cramps the symlinks, hence the CPackComponentsForAll-RPM-(default|OnePackPerGroup|IgnoreGroup|AllInOne) fail
|
# suse specific brp-25-symlink cramps the symlinks, hence the CPackComponentsForAll-RPM-(default|OnePackPerGroup|IgnoreGroup|AllInOne) fail
|
||||||
./bin/ctest --force-new-ctest-process --output-on-failure %{?_smp_mflags} \
|
%ifnarch %arm %ix86
|
||||||
|
./bin/ctest --output-on-failure %{?_smp_mflags} \
|
||||||
-E "(TestUpload|SimpleInstall|SimpleInstall-Stage2|CPackComponentsForAll-RPM-(default|OnePackPerGroup|IgnoreGroup|AllInOne)|CPack_RPM)"
|
-E "(TestUpload|SimpleInstall|SimpleInstall-Stage2|CPackComponentsForAll-RPM-(default|OnePackPerGroup|IgnoreGroup|AllInOne)|CPack_RPM)"
|
||||||
|
%else
|
||||||
|
# dont' run failing test on 32-bit architectures due to year 2038 issue
|
||||||
|
# dont' run Tutorial due to SSE issues https://gitlab.kitware.com/cmake/cmake/-/issues/27569
|
||||||
|
./bin/ctest --output-on-failure %{?_smp_mflags} \
|
||||||
|
-E "(TestUpload|SimpleInstall|SimpleInstall-Stage2|CPackComponentsForAll-RPM-(default|OnePackPerGroup|IgnoreGroup|AllInOne)|CPack_RPM|RunCMake.string|Tutorial)"
|
||||||
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with qhelp}
|
%if %{with qhelp}
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
Index: cmake-3.27.7/Modules/FindPythonInterp.cmake
|
---
|
||||||
|
Modules/FindPythonInterp.cmake | 5 +++--
|
||||||
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: cmake-4.1.3/Modules/FindPythonInterp.cmake
|
||||||
===================================================================
|
===================================================================
|
||||||
--- cmake-3.27.7.orig/Modules/FindPythonInterp.cmake
|
--- cmake-4.1.3.orig/Modules/FindPythonInterp.cmake 2025-11-18 15:55:48.000000000 +0100
|
||||||
+++ cmake-3.27.7/Modules/FindPythonInterp.cmake
|
+++ cmake-4.1.3/Modules/FindPythonInterp.cmake 2026-01-28 16:44:12.726637412 +0100
|
||||||
@@ -105,8 +105,9 @@ if(DEFINED PYTHONLIBS_VERSION_STRING)
|
@@ -138,8 +138,9 @@
|
||||||
list(GET _PYTHONLIBS_VERSION 1 _PYTHONLIBS_VERSION_MINOR)
|
list(GET _PYTHONLIBS_VERSION 1 _PYTHONLIBS_VERSION_MINOR)
|
||||||
list(APPEND _Python_VERSIONS ${_PYTHONLIBS_VERSION_MAJOR}.${_PYTHONLIBS_VERSION_MINOR})
|
list(APPEND _Python_VERSIONS ${_PYTHONLIBS_VERSION_MAJOR}.${_PYTHONLIBS_VERSION_MINOR})
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
Reference in New Issue
Block a user