Control: tags -1 patch

I've attached PoC patches which are
based on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1059706#33

Before:

  $ pkg-config --cflags epics-base
-I/build/reproducible-path/epics-base-7.0.8+dfsg1/include
-I/build/reproducible-path/epics-base-7.0.8+dfsg1/include/os/Linux
-I/build/reproducible-path/epics-base-7.0.8+dfsg1/include/compiler/gcc
-D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux
-ffile-prefix-map=/build/reproducible-path/epics-base-7.0.8+dfsg1=.
-D_FORTIFY_SOURCE=2
-ffile-prefix-map=/build/reproducible-path/epics-base-7.0.8+dfsg1=.
-fstack-protector-strong -fstack-clash-protection -fcf-protection
-D_FORTIFY_SOURCE=2 -mtune=generic -m64 

After:

  $ pkg-config --cflags epics-base
-I/usr/include/epics -I/usr/include/epics/os/Linux
-I/usr/include/epics/compiler/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE
-D_X86_64_ -DUNIX -Dlinux
-ffile-prefix-map=/debian/epics-base-7.0.8+dfsg1=. -D_FORTIFY_SOURCE=2
-ffile-prefix-map=/debian/epics-base-7.0.8+dfsg1=.
-fstack-protector-strong -fstack-clash-protection -fcf-protection
-D_FORTIFY_SOURCE=2 -mtune=generic -m64 

I hope it will help.

Regards,
>From 1de16ce758d013375e0bc6386e6cc23780fc85b2 Mon Sep 17 00:00:00 2001
From: Kentaro Hayashi <ken...@gmail.com>
Date: Sat, 4 May 2024 21:39:41 +0900
Subject: [PATCH 1/2] debian/rule: fix embedded path of installed path

Without this change, build root path will be
embedded into epics-base.pc.

See documentation/RELEASE_NOTES.md.

Signed-off-by: Kentaro Hayashi <ken...@gmail.com>
---
 debian/rules | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/debian/rules b/debian/rules
index 12acc51..3f2716d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -41,7 +41,7 @@ override_dh_auto_clean: debian/control
 	dh_auto_clean
 
 override_dh_auto_build:
-	$(MAKE) LINKER_USE_RPATH=NO
+	$(MAKE) LINKER_USE_RPATH=NO FINAL_LOCATION=/usr
 
 override_dh_auto_install:
 	$(MAKE) install
-- 
2.43.0

>From fedbc643094254d572d941ea25b69971463f9b95 Mon Sep 17 00:00:00 2001
From: Kentaro Hayashi <ken...@gmail.com>
Date: Sat, 4 May 2024 21:51:55 +0900
Subject: [PATCH 2/2] Add patch to fix installed epics header path

Signed-off-by: Kentaro Hayashi <ken...@gmail.com>
---
 debian/patches/fix-epics-header-path.patch | 61 ++++++++++++++++++++++
 debian/patches/series                      |  1 +
 2 files changed, 62 insertions(+)
 create mode 100644 debian/patches/fix-epics-header-path.patch

diff --git a/debian/patches/fix-epics-header-path.patch b/debian/patches/fix-epics-header-path.patch
new file mode 100644
index 0000000..c14100e
--- /dev/null
+++ b/debian/patches/fix-epics-header-path.patch
@@ -0,0 +1,61 @@
+From: Kentaro Hayashi <ken...@gmail.com>
+Date: Sat, 4 May 2024 21:45:07 +0900
+Subject: Fix installed path of epics headers
+
+Description: epics-dev installs upstream's header under
+/usr/include/epics/ explicitly, so it should be also changed.
+Without this change, pkg-config can't return correct header search path.
+Author: Kentaro Hayashi <ken...@xdump.org>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1059706
+Forwarded: no
+---
+ modules/database/src/tools/epics-base-arch.pc@ | 9 +++++----
+ modules/database/src/tools/epics-base.pc@      | 7 ++++---
+ 2 files changed, 9 insertions(+), 7 deletions(-)
+
+diff --git a/modules/database/src/tools/epics-base-arch.pc@ b/modules/database/src/tools/epics-base-arch.pc@
+index 7dde33d..e34b5ef 100644
+--- a/modules/database/src/tools/epics-base-arch.pc@
++++ b/modules/database/src/tools/epics-base-arch.pc@
+@@ -18,10 +18,11 @@ EPICS_BASE_IOC_LIBS=@EPICS_BASE_IOC_LIBS@
+ # Directories
+ 
+ includedir_osi=${prefix}/include
+-includedir_osd=${prefix}/include/os/@OS_CLASS@
+-includedir_comp=${prefix}/include/compiler/@CMPLR_CLASS@
++includedir_epicsd=${prefix}/include/epics
++includedir_osd=${prefix}/include/epics/os/@OS_CLASS@
++includedir_comp=${prefix}/include/epics/compiler/@CMPLR_CLASS@
+ 
+-includedirs=${includedir_osi} ${includedir_osd} ${includedir_comp}
++includedirs=${includedir_osi} ${includedir_epicsd} ${includedir_osd} ${includedir_comp}
+ 
+ dbddir=${prefix}/dbd
+ dbdir=${prefix}/db
+@@ -37,6 +38,6 @@ LD=@LD@
+ Name: epics-base-@ARCH@
+ Version: @EPICS_VERSION@.@EPICS_REVISION@.@EPICS_MODIFICATION@.@EPICS_PATCH_LEVEL@
+ Description: EPICS Base for @ARCH@
+-Cflags: -I${includedir_osi} -I${includedir_osd} -I${includedir_comp} @C_CFLAGS@
++Cflags: -I${includedir_osi} -I${includedir_epicsd} -I${includedir_osd} -I${includedir_comp} @C_CFLAGS@
+ Libs: -L${libdir} @LDFLAGS@
+ Libs.private: @LDLIBS@
+diff --git a/modules/database/src/tools/epics-base.pc@ b/modules/database/src/tools/epics-base.pc@
+index c154066..217748d 100644
+--- a/modules/database/src/tools/epics-base.pc@
++++ b/modules/database/src/tools/epics-base.pc@
+@@ -15,10 +15,11 @@ CMPLR_CLASS=@CMPLR_CLASS@
+ # Directories
+ 
+ includedir_osi=${prefix}/include
+-includedir_osd=${prefix}/include/os/@OS_CLASS@
+-includedir_comp=${prefix}/include/compiler/@CMPLR_CLASS@
++includedir_epicsd=${prefix}/include/epics
++includedir_osd=${prefix}/include/epics/os/@OS_CLASS@
++includedir_comp=${prefix}/include/epics/compiler/@CMPLR_CLASS@
+ 
+-includedirs=${includedir_osi} ${includedir_osd} ${includedir_comp}
++includedirs=${includedir_osi} ${includedir_epicsd} ${includedir_osd} ${includedir_comp}
+ 
+ dbddir=${prefix}/dbd
+ dbdir=${prefix}/db
diff --git a/debian/patches/series b/debian/patches/series
index 425394f..588b480 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
 verbose-install.patch
 0002-skip-expected-failing-test.patch
+fix-epics-header-path.patch
-- 
2.43.0

Reply via email to