Make sure RUSTFLAGS are passed to rustc (bz#2167194)
This commit is contained in:
parent
05338c44df
commit
dab96dcff2
57
clamav-rustflags.patch
Normal file
57
clamav-rustflags.patch
Normal file
@ -0,0 +1,57 @@
|
||||
diff --git a/cmake/FindRust.cmake b/cmake/FindRust.cmake
|
||||
index c9997486c..2b04adeb9 100644
|
||||
--- a/cmake/FindRust.cmake
|
||||
+++ b/cmake/FindRust.cmake
|
||||
@@ -236,7 +236,7 @@ function(add_rust_executable)
|
||||
# Build the executable.
|
||||
add_custom_command(
|
||||
OUTPUT "${OUTPUT}"
|
||||
- COMMAND ${CMAKE_COMMAND} -E env "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" ${cargo_EXECUTABLE} ARGS ${MY_CARGO_ARGS}
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" ${cargo_EXECUTABLE} ${MY_CARGO_ARGS}
|
||||
WORKING_DIRECTORY "${ARGS_SOURCE_DIRECTORY}"
|
||||
DEPENDS ${EXE_SOURCES}
|
||||
COMMENT "Building ${ARGS_TARGET} in ${ARGS_BINARY_DIRECTORY} with:\n\t ${cargo_EXECUTABLE} ${MY_CARGO_ARGS_STRING}")
|
||||
@@ -287,17 +287,17 @@ function(add_rust_library)
|
||||
if("${CMAKE_OSX_ARCHITECTURES}" MATCHES "^(arm64;x86_64|x86_64;arm64)$")
|
||||
add_custom_command(
|
||||
OUTPUT "${OUTPUT}"
|
||||
- COMMAND ${CMAKE_COMMAND} -E env "CARGO_CMD=build" "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" "MAINTAINER_MODE=${MAINTAINER_MODE}" "RUSTFLAGS=\"${RUSTFLAGS}\"" ${cargo_EXECUTABLE} ARGS ${MY_CARGO_ARGS} --target=x86_64-apple-darwin
|
||||
- COMMAND ${CMAKE_COMMAND} -E env "CARGO_CMD=build" "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" "MAINTAINER_MODE=${MAINTAINER_MODE}" "RUSTFLAGS=\"${RUSTFLAGS}\"" ${cargo_EXECUTABLE} ARGS ${MY_CARGO_ARGS} --target=aarch64-apple-darwin
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "CARGO_CMD=build" "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" "MAINTAINER_MODE=${MAINTAINER_MODE}" "RUSTFLAGS=${RUSTFLAGS}" ${cargo_EXECUTABLE} ${MY_CARGO_ARGS} --target=x86_64-apple-darwin
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "CARGO_CMD=build" "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" "MAINTAINER_MODE=${MAINTAINER_MODE}" "RUSTFLAGS=${RUSTFLAGS}" ${cargo_EXECUTABLE} ${MY_CARGO_ARGS} --target=aarch64-apple-darwin
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory "${ARGS_BINARY_DIRECTORY}/${RUST_COMPILER_TARGET}/${CARGO_BUILD_TYPE}"
|
||||
- COMMAND lipo ARGS -create ${ARGS_BINARY_DIRECTORY}/x86_64-apple-darwin/${CARGO_BUILD_TYPE}/lib${ARGS_TARGET}.a ${ARGS_BINARY_DIRECTORY}/aarch64-apple-darwin/${CARGO_BUILD_TYPE}/lib${ARGS_TARGET}.a -output "${OUTPUT}"
|
||||
+ COMMAND lipo -create ${ARGS_BINARY_DIRECTORY}/x86_64-apple-darwin/${CARGO_BUILD_TYPE}/lib${ARGS_TARGET}.a ${ARGS_BINARY_DIRECTORY}/aarch64-apple-darwin/${CARGO_BUILD_TYPE}/lib${ARGS_TARGET}.a -output "${OUTPUT}"
|
||||
WORKING_DIRECTORY "${ARGS_SOURCE_DIRECTORY}"
|
||||
DEPENDS ${LIB_SOURCES}
|
||||
COMMENT "Building ${ARGS_TARGET} in ${ARGS_BINARY_DIRECTORY} with: ${cargo_EXECUTABLE} ${MY_CARGO_ARGS_STRING}")
|
||||
else()
|
||||
add_custom_command(
|
||||
OUTPUT "${OUTPUT}"
|
||||
- COMMAND ${CMAKE_COMMAND} -E env "CARGO_CMD=build" "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" "MAINTAINER_MODE=${MAINTAINER_MODE}" "RUSTFLAGS=\"${RUSTFLAGS}\"" ${cargo_EXECUTABLE} ARGS ${MY_CARGO_ARGS}
|
||||
+ COMMAND ${CMAKE_COMMAND} -E env "CARGO_CMD=build" "CARGO_TARGET_DIR=${ARGS_BINARY_DIRECTORY}" "MAINTAINER_MODE=${MAINTAINER_MODE}" "RUSTFLAGS=${RUSTFLAGS}" ${cargo_EXECUTABLE} ${MY_CARGO_ARGS}
|
||||
WORKING_DIRECTORY "${ARGS_SOURCE_DIRECTORY}"
|
||||
DEPENDS ${LIB_SOURCES}
|
||||
COMMENT "Building ${ARGS_TARGET} in ${ARGS_BINARY_DIRECTORY} with: ${cargo_EXECUTABLE} ${MY_CARGO_ARGS_STRING}")
|
||||
@@ -443,8 +443,6 @@ if(NOT "${RUST_COMPILER_TARGET}" MATCHES "^universal-apple-darwin$")
|
||||
list(APPEND CARGO_ARGS "--target" ${RUST_COMPILER_TARGET})
|
||||
endif()
|
||||
|
||||
-set(RUSTFLAGS "")
|
||||
-
|
||||
if(NOT CMAKE_BUILD_TYPE)
|
||||
set(CARGO_BUILD_TYPE "debug")
|
||||
elseif(${CMAKE_BUILD_TYPE} STREQUAL "Release" OR ${CMAKE_BUILD_TYPE} STREQUAL "MinSizeRel")
|
||||
@@ -453,10 +451,11 @@ elseif(${CMAKE_BUILD_TYPE} STREQUAL "Release" OR ${CMAKE_BUILD_TYPE} STREQUAL "M
|
||||
elseif(${CMAKE_BUILD_TYPE} STREQUAL "RelWithDebInfo")
|
||||
set(CARGO_BUILD_TYPE "release")
|
||||
list(APPEND CARGO_ARGS "--release")
|
||||
- set(RUSTFLAGS "-g")
|
||||
+ string(APPEND RUSTFLAGS " -g")
|
||||
else()
|
||||
set(CARGO_BUILD_TYPE "debug")
|
||||
endif()
|
||||
+string(STRIP "${RUSTFLAGS}" RUSTFLAGS)
|
||||
|
||||
find_package_handle_standard_args(Rust
|
||||
REQUIRED_VARS cargo_EXECUTABLE
|
10
clamav.spec
10
clamav.spec
@ -25,7 +25,7 @@
|
||||
Summary: End-user tools for the Clam Antivirus scanner
|
||||
Name: clamav
|
||||
Version: 1.0.0
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
License: %{?with_unrar:proprietary}%{!?with_unrar:GPLv2}
|
||||
URL: https://www.clamav.net/
|
||||
%if %{with unrar}
|
||||
@ -64,6 +64,9 @@ Source330: clamav-milter.systemd
|
||||
#for scanner-systemd/server-systemd
|
||||
Source530: clamd@.service
|
||||
|
||||
# Accept RUSTFLAGS
|
||||
# https://github.com/Cisco-Talos/clamav/pull/835
|
||||
Patch0: clamav-rustflags.patch
|
||||
# Change default config locations for Fedora
|
||||
Patch1: clamav-default_confs.patch
|
||||
# Fix pkg-config flags for static linking, multilib
|
||||
@ -252,6 +255,7 @@ rm -r .cargo
|
||||
%cargo_prep
|
||||
cd ..
|
||||
|
||||
%patch0 -p1 -b .rustflags
|
||||
%patch1 -p1 -b .default_confs
|
||||
%patch2 -p1 -b .private
|
||||
%patch3 -p1 -b .rpath
|
||||
@ -277,6 +281,7 @@ export LDFLAGS=$(echo %{?__global_ldflags} | sed '/-Wl,--as-needed/!s/$/ -Wl,--a
|
||||
export have_cv_ipv6=yes
|
||||
|
||||
%cmake \
|
||||
-DRUSTFLAGS="%build_rustflags" \
|
||||
-DAPP_CONFIG_DIRECTORY=%{_sysconfdir} \
|
||||
-DCMAKE_INSTALL_DOCDIR=%{_pkgdocdir} \
|
||||
-DCLAMAV_USER=%{updateuser} -DCLAMAV_GROUP=%{updateuser} \
|
||||
@ -549,6 +554,9 @@ exit 0
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Feb 13 2023 Orion Poplawski <orion@nwra.com> - 1.0.0-3
|
||||
- Make sure RUSTFLAGS are passed to rustc (bz#2167194)
|
||||
|
||||
* Mon Jan 23 2023 Orion Poplawski <orion@nwra.com> - 1.0.0-2
|
||||
- Fix multilib install
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user