Version: 1.27.3-1
Source: crystal-facet-uml
Severity: normal
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

It appears the introduction of gcov support in version 1.27.3-1 broke
reproducible builds for crystal-facet-uml:

  
https://tests.reproducible-builds.org/debian/rb-pkg/bullseye/amd64/diffoscope-results/crystal-facet-uml.html

I'm not entirely clear on what gcov does; is it some sort of profile
guided optimization?

Disabling the gcov support added in 1.27.3 upstream does appear to make
the package reproducible again, but I'm not sure how important gcov is
vs. reproducibility.

So, the attached patch removes the gcov support, but I'm not entirely
sure what the package would be loosing by doing so. Just wanted to
document the issue so people more familiar with this software can make a
call.


Thanks for maintaining crystal-facet-uml!


live well,
  vagrant
From f776b7023c8b0a390191784427d6dc83e23b90a8 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagr...@reproducible-builds.org>
Date: Tue, 2 Mar 2021 04:18:34 +0000
Subject: [PATCH] Disable gcov for reproducible builds

---
 CMakeLists.txt | 19 -------------------
 1 file changed, 19 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8015870..e4664ac 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -121,22 +121,3 @@ INSTALL(FILES "${CMAKE_CURRENT_SOURCE_DIR}/installation_linux/crystal-facet-uml.
 INSTALL(FILES "${CMAKE_CURRENT_SOURCE_DIR}/installation_linux/crystal-facet-uml.metainfo.xml" DESTINATION "/usr/share/metainfo/")
 INSTALL(FILES "${CMAKE_CURRENT_SOURCE_DIR}/gui/source/resources/crystal_facet_uml_80x80.png" DESTINATION "/usr/share/pixmaps/" RENAME "crystal-facet-uml.png")
 INSTALL(FILES "${CMAKE_CURRENT_SOURCE_DIR}/user_doc/crystal-facet-uml.1.gz" DESTINATION "/usr/share/man/man1/")
-
-# ==== ==== ==== ==== ==== ==== ==== ==== gcov Target Settings ==== ==== ==== ==== ==== ==== ==== ====
-
-if(CMAKE_COMPILER_IS_GNUCC)
-    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage" )
-    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fprofile-arcs" )
-    ADD_EXECUTABLE(gcov_crystal-facet-uml ${utestSource} ${commonSource} ${COMPILE_IN_SOURCE_FILE})
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC test_fw/include)
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC data/unittest)
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC ctrl/unittest)
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC gui/unittest)
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC io/unittest)
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC pencil/unittest)
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC universal/unittest)
-    TARGET_INCLUDE_DIRECTORIES(gcov_crystal-facet-uml PUBLIC utf8stringbuf/unittest)
-    TARGET_LINK_LIBRARIES(gcov_crystal-facet-uml ${GTK3_LIBRARIES} ${GLIB2_LIBRARIES} ${PANGOCAIRO_LIBRARIES} ${SQLITE3_LIBRARIES} m)
-    SET_TARGET_PROPERTIES(gcov_crystal-facet-uml PROPERTIES LINKER_LANGUAGE C)
-    SET_TARGET_PROPERTIES(gcov_crystal-facet-uml PROPERTIES EXCLUDE_FROM_ALL TRUE)
-endif(CMAKE_COMPILER_IS_GNUCC)
-- 
2.20.1

Attachment: signature.asc
Description: PGP signature

Reply via email to