commit:     5b990e8595540ad18341a9f6bacfe29fd6a6279e
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 28 19:41:53 2025 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Aug 28 19:48:15 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b990e85

sys-fs/dislocker: Silence QA warning properly, replace sed with patches

- Don't use EGIT_COMMIT, it's a git-r3.eclass variable
- disable execution of git binary if found

See also: https://github.com/gentoo/gentoo/pull/39999

Closes: https://bugs.gentoo.org/957277
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 sys-fs/dislocker/dislocker-0.7.3_p20250513.ebuild  | 27 ++++------
 .../files/dislocker-0.7.3_p20250513-cmake.patch    | 62 ++++++++++++++++++++++
 .../files/dislocker-0.7.3_p20250513-cmake4.patch   | 13 +++++
 .../files/dislocker-0.7.3_p20250513-no-git.patch   | 14 +++++
 4 files changed, 98 insertions(+), 18 deletions(-)

diff --git a/sys-fs/dislocker/dislocker-0.7.3_p20250513.ebuild 
b/sys-fs/dislocker/dislocker-0.7.3_p20250513.ebuild
index 0843313b27bf..578efcbfbbfb 100644
--- a/sys-fs/dislocker/dislocker-0.7.3_p20250513.ebuild
+++ b/sys-fs/dislocker/dislocker-0.7.3_p20250513.ebuild
@@ -3,20 +3,18 @@
 
 EAPI=8
 
+COMMIT="4572dc727940cc42249c9f967cee9c505f16b121"
 CMAKE_REMOVE_MODULES_LIST=( ${CMAKE_REMOVE_MODULES_LIST} FindRuby )
 inherit cmake
 
-EGIT_COMMIT="4572dc727940cc42249c9f967cee9c505f16b121"
-
 DESCRIPTION="Dislocker is used to read BitLocker encrypted partitions"
 HOMEPAGE="https://github.com/Aorimn/dislocker";
-SRC_URI="https://github.com/Aorimn/dislocker/archive/${EGIT_COMMIT}.tar.gz -> 
${P}.tar.gz"
-S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+SRC_URI="https://github.com/Aorimn/dislocker/archive/${COMMIT}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
 
 LICENSE="GPL-2+"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-
 IUSE="ruby"
 
 DEPEND="
@@ -27,7 +25,12 @@ DEPEND="
 RDEPEND="${DEPEND}"
 
 PATCHES=(
-       "${FILESDIR}/dislocker-0.7.3_p20250513_mbedtls-3.patch"
+       # downstream patches
+       "${FILESDIR}/${PN}-0.7.3_p20250513-no-git.patch"
+       "${FILESDIR}/${PN}-0.7.3_p20250513-cmake.patch"
+       "${FILESDIR}/${PN}-0.7.3_p20250513-cmake4.patch" # bug 957277
+       # Pending upstream:
+       "${FILESDIR}/${PN}-0.7.3_p20250513_mbedtls-3.patch"
 )
 
 src_prepare() {
@@ -35,18 +38,6 @@ src_prepare() {
        mv include/dislocker/ssl_bindings.h{.in,} || die
 
        cmake_src_prepare
-
-       # Update cmake_minimum_required
-       sed -i -e 's:VERSION 2.6:VERSION 3.10:g' CMakeLists.txt || die
-
-       # We either need to change Werror to Wno-error or remove the multiple 
declarations of FORTIFY_SOURCE
-       #sed 's:Werror:Wno-error:g' -i src/CMakeLists.txt || die
-       sed 's:-D_FORTIFY_SOURCE=2::g' -i src/CMakeLists.txt || die
-
-       # Do not process compressed versions of the manuals
-       #sed 's:\.\./man:'../../${P}/man':g' -i "${S}/src/CMakeLists.txt" || die
-       sed -r 's:( create_symlink \$\{BIN_FUSE\}\.1)\.gz (.+\.1)\.gz\\:\1 
\2\\:' -i src/CMakeLists.txt || die
-       sed -r 's:^(.+\.1\.gz):#\1:' -i src/CMakeLists.txt || die
 }
 
 src_configure() {

diff --git a/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-cmake.patch 
b/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-cmake.patch
new file mode 100644
index 000000000000..80e22687d323
--- /dev/null
+++ b/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-cmake.patch
@@ -0,0 +1,62 @@
+* We either need to change Werror to Wno-error or remove the multiple 
declarations of FORTIFY_SOURCE
+* Do not process compressed versions of the manuals
+
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -69,7 +69,7 @@
+       set (WARN_FLAGS "-Wall -Wextra" CACHE STRING "" FORCE)
+ endif()
+ if(NOT DEFINED HARDEN_FLAGS)
+-      set (HARDEN_FLAGS "-fstack-protector -fstrict-aliasing 
-D_FORTIFY_SOURCE=2 -O1" CACHE STRING "" FORCE)
++      set (HARDEN_FLAGS "-fstack-protector -fstrict-aliasing  -O1" CACHE 
STRING "" FORCE)
+ endif()
+ 
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
+@@ -227,13 +227,13 @@
+       set_target_properties (${BIN_FUSE} PROPERTIES LINK_FLAGS "-pie -fPIE")
+       add_custom_command (TARGET ${BIN_FUSE} POST_BUILD
+               COMMAND mkdir -p ${CMAKE_BINARY_DIR}/man/
+-              COMMAND gzip -c ${DIS_MAN}/${BIN_FUSE}.1 > 
${CMAKE_BINARY_DIR}/man/${BIN_FUSE}.1.gz
++#             COMMAND gzip -c ${DIS_MAN}/${BIN_FUSE}.1 > 
${CMAKE_BINARY_DIR}/man/${BIN_FUSE}.1.gz
+       )
+-      set (CLEAN_FILES ${CLEAN_FILES} 
${CMAKE_BINARY_DIR}/man/${BIN_FUSE}.1.gz)
++#     set (CLEAN_FILES ${CLEAN_FILES} 
${CMAKE_BINARY_DIR}/man/${BIN_FUSE}.1.gz)
+       install (TARGETS ${BIN_FUSE} RUNTIME DESTINATION "${bindir}")
+-      install (FILES ${CMAKE_BINARY_DIR}/man/${BIN_FUSE}.1.gz DESTINATION 
"${mandir}/man1")
++#     install (FILES ${CMAKE_BINARY_DIR}/man/${BIN_FUSE}.1.gz DESTINATION 
"${mandir}/man1")
+       install (CODE "execute_process (COMMAND ${CMAKE_COMMAND} -E 
create_symlink ${BIN_FUSE} \"\$ENV{DESTDIR}${bindir}/${PROJECT_NAME}\")")
+-      install (CODE "execute_process (COMMAND ${CMAKE_COMMAND} -E 
create_symlink ${BIN_FUSE}.1.gz 
\"\$ENV{DESTDIR}${mandir}/man1/${PROJECT_NAME}.1.gz\")")
++      install (CODE "execute_process (COMMAND ${CMAKE_COMMAND} -E 
create_symlink ${BIN_FUSE}.1 
\"\$ENV{DESTDIR}${mandir}/man1/${PROJECT_NAME}.1\")")
+ endif()
+ 
+ set (BIN_FILE ${PROJECT_NAME}-file)
+@@ -242,11 +242,11 @@
+ set_target_properties (${BIN_FILE} PROPERTIES LINK_FLAGS "-pie -fPIE")
+ add_custom_command (TARGET ${BIN_FILE} POST_BUILD
+       COMMAND mkdir -p ${CMAKE_BINARY_DIR}/man/
+-      COMMAND gzip -c ${DIS_MAN}/${BIN_FILE}.1 > 
${CMAKE_BINARY_DIR}/man/${BIN_FILE}.1.gz
++#     COMMAND gzip -c ${DIS_MAN}/${BIN_FILE}.1 > 
${CMAKE_BINARY_DIR}/man/${BIN_FILE}.1.gz
+ )
+-set (CLEAN_FILES ${CLEAN_FILES} ${CMAKE_BINARY_DIR}/man/${BIN_FILE}.1.gz)
++#set (CLEAN_FILES ${CLEAN_FILES} ${CMAKE_BINARY_DIR}/man/${BIN_FILE}.1.gz)
+ install (TARGETS ${BIN_FILE} RUNTIME DESTINATION "${bindir}")
+-install (FILES ${CMAKE_BINARY_DIR}/man/${BIN_FILE}.1.gz DESTINATION 
"${mandir}/man1")
++#install (FILES ${CMAKE_BINARY_DIR}/man/${BIN_FILE}.1.gz DESTINATION 
"${mandir}/man1")
+ 
+ set (BIN_METADATA ${PROJECT_NAME}-metadata)
+ add_executable (${BIN_METADATA} ${BIN_METADATA}.c)
+@@ -271,11 +271,11 @@
+       set (CLEAN_FILES ${CLEAN_FILES} ${CMAKE_CURRENT_BINARY_DIR}/${BIN_FIND})
+       add_custom_command (TARGET ${BIN_FIND} POST_BUILD
+               COMMAND mkdir -p ${CMAKE_BINARY_DIR}/man/
+-              COMMAND gzip -c ${DIS_MAN}/${BIN_FIND}.1 > 
${CMAKE_BINARY_DIR}/man/${BIN_FIND}.1.gz
++#             COMMAND gzip -c ${DIS_MAN}/${BIN_FIND}.1 > 
${CMAKE_BINARY_DIR}/man/${BIN_FIND}.1.gz
+       )
+-      set (CLEAN_FILES ${CLEAN_FILES} 
${CMAKE_BINARY_DIR}/man/${BIN_FIND}.1.gz)
++#     set (CLEAN_FILES ${CLEAN_FILES} 
${CMAKE_BINARY_DIR}/man/${BIN_FIND}.1.gz)
+       install (PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${BIN_FIND} DESTINATION 
"${bindir}")
+-      install (FILES ${CMAKE_BINARY_DIR}/man/${BIN_FIND}.1.gz DESTINATION 
"${mandir}/man1")
++#     install (FILES ${CMAKE_BINARY_DIR}/man/${BIN_FIND}.1.gz DESTINATION 
"${mandir}/man1")
+ else()
+       set (BIN_FIND true)
+ endif()

diff --git a/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-cmake4.patch 
b/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-cmake4.patch
new file mode 100644
index 000000000000..b36727b159bd
--- /dev/null
+++ b/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-cmake4.patch
@@ -0,0 +1,13 @@
+See also: https://github.com/Aorimn/dislocker/issues/343
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -17,7 +17,7 @@
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,
+ # USA.
+ 
+-cmake_minimum_required (VERSION 2.6)
++cmake_minimum_required (VERSION 3.10)
+ project (dislocker C)
+ 
+ set (AUTHOR "Romain Coltel")

diff --git a/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-no-git.patch 
b/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-no-git.patch
new file mode 100644
index 000000000000..064d30fe6471
--- /dev/null
+++ b/sys-fs/dislocker/files/dislocker-0.7.3_p20250513-no-git.patch
@@ -0,0 +1,14 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -22,9 +22,9 @@
+ 
+ set (AUTHOR "Romain Coltel")
+ 
+-find_program (GIT_EXE NAMES git PATHS /usr/bin /usr/local/bin)
++# find_program (GIT_EXE NAMES git PATHS /usr/bin /usr/local/bin)
+ 
+-if(GIT_EXE)
++if(0)
+       execute_process (
+               COMMAND ${GIT_EXE} rev-parse --abbrev-ref HEAD
+               WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}

Reply via email to