wv2: fix build with cmake4 (#455520)

This commit is contained in:
Austin Horstman
2025-10-25 14:38:25 +00:00
committed by GitHub
2 changed files with 34 additions and 2 deletions
@@ -0,0 +1,22 @@
--- a/cmake/MacroCreateLibtoolFile.cmake
+++ b/cmake/MacroCreateLibtoolFile.cmake
@@ -9,7 +9,7 @@
ENDMACRO (GET_TARGET_PROPERTY_WITH_DEFAULT)
MACRO(CREATE_LIBTOOL_FILE _target _install_DIR)
- GET_TARGET_PROPERTY(_target_location ${_target} LOCATION)
+
GET_TARGET_PROPERTY_WITH_DEFAULT(_target_static_lib ${_target} STATIC_LIB "")
GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dependency_libs ${_target} LT_DEPENDENCY_LIBS "")
GET_TARGET_PROPERTY_WITH_DEFAULT(_target_current ${_target} LT_VERSION_CURRENT 0)
@@ -19,8 +19,8 @@
GET_TARGET_PROPERTY_WITH_DEFAULT(_target_shouldnotlink ${_target} LT_SHOULDNOTLINK yes)
GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlopen ${_target} LT_DLOPEN "")
GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlpreopen ${_target} LT_DLPREOPEN "")
- GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE)
- GET_FILENAME_COMPONENT(_soname ${_target_location} NAME)
+ SET(_laname "lib${_target}")
+ SET(_soname "${_laname}${CMAKE_SHARED_LIBRARY_SUFFIX}")
SET(_laname ${PROJECT_BINARY_DIR}/${_laname}.la)
FILE(WRITE ${_laname} "# ${_laname} - a libtool library file\n")
FILE(WRITE ${_laname} "# Generated by CMake ${CMAKE_VERSION} (like GNU libtool)\n")
+12 -2
View File
@@ -7,6 +7,7 @@
libgsf,
glib,
libxml2,
libiconvReal,
}:
stdenv.mkDerivation rec {
@@ -17,7 +18,10 @@ stdenv.mkDerivation rec {
sha256 = "1p1qxr8z5bsiq8pvlina3c8c1vjcb5d96bs3zz4jj3nb20wnsawz";
};
patches = [ ./fix-include.patch ];
patches = [
./fix-include.patch
./fix-libtool-location.patch
];
# Newer versions of clang default to C++17, which removes some deprecated APIs such as bind1st.
# Setting the language version to C++14 makes them available again.
@@ -36,10 +40,16 @@ stdenv.mkDerivation rec {
libgsf
glib
libxml2
];
]
++ lib.optional stdenv.hostPlatform.isDarwin libiconvReal;
env.NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace-fail "cmake_minimum_required(VERSION 2.6)" "cmake_minimum_required(VERSION 3.10)"
'';
meta = {
description = "Excellent MS Word filter lib, used in most Office suites";
mainProgram = "wv2-config";