* [oe-core][PATCH 1/1] libdnf: allow reproducible binary builds
@ 2020-07-22 20:31 Joe Slater
2020-07-22 22:01 ` Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: Joe Slater @ 2020-07-22 20:31 UTC (permalink / raw)
To: openembedded-core; +Cc: joe.slater, randy.macleod
Use a static TESTDATADIR if tests are disabled. Allow
override of TESTDATADIR if tests are enabled since the
default will be wrong for target builds.
Signed-off-by: Joe Slater <joe.slater@windriver.com>
---
.../libdnf/libdnf/enable_test_data_dir_set.patch | 26 ++++++++++++++++++++++
meta/recipes-devtools/libdnf/libdnf_0.48.0.bb | 1 +
2 files changed, 27 insertions(+)
create mode 100644 meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
diff --git a/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch b/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
new file mode 100644
index 0000000..e3784cc
--- /dev/null
+++ b/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
@@ -0,0 +1,26 @@
+libdnf: allow reproducible binary builds
+
+Use a dummy directory for test data if not built WITH_TESTS. Allow for overriding
+TESTDATADIR, since the default is guaranteed to be wrong for target builds.
+
+Upstream-Status: Pending
+
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -133,7 +133,12 @@ add_definitions(-DG_LOG_DOMAIN=\\"libdnf
+ add_definitions(-D_FILE_OFFSET_BITS=64)
+
+ # tests
+-add_definitions(-DTESTDATADIR=\\"${CMAKE_SOURCE_DIR}/data/tests\\")
++if(NOT WITH_TESTS)
++ set(TEST_DATA_DIR "/notests")
++elseif(NOT DEFINED TEST_DATA_DIR)
++ set(TEST_DATA_DIR "${CMAKE_SOURCE_DIR}/data/tests")
++endif()
++add_definitions(-DTESTDATADIR=\\"${TEST_DATA_DIR}\\")
+
+ # librhsm
+ if(ENABLE_RHSM_SUPPORT)
diff --git a/meta/recipes-devtools/libdnf/libdnf_0.48.0.bb b/meta/recipes-devtools/libdnf/libdnf_0.48.0.bb
index 947b2f2..37991e6 100644
--- a/meta/recipes-devtools/libdnf/libdnf_0.48.0.bb
+++ b/meta/recipes-devtools/libdnf/libdnf_0.48.0.bb
@@ -8,6 +8,7 @@ SRC_URI = "git://github.com/rpm-software-management/libdnf;branch=dnf-4-master \
file://0001-Get-parameters-for-both-libsolv-and-libsolvext-libdn.patch \
file://0001-Add-WITH_TESTS-option.patch \
file://0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch \
+ file://enable_test_data_dir_set.patch \
"
SRCREV = "46a28d0cf09277fffc11392e5e362a2eda0d53a8"
--
2.7.4
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [oe-core][PATCH 1/1] libdnf: allow reproducible binary builds
2020-07-22 20:31 [oe-core][PATCH 1/1] libdnf: allow reproducible binary builds Joe Slater
@ 2020-07-22 22:01 ` Richard Purdie
2020-07-23 14:10 ` Joe Slater
0 siblings, 1 reply; 3+ messages in thread
From: Richard Purdie @ 2020-07-22 22:01 UTC (permalink / raw)
To: Joe Slater, openembedded-core; +Cc: randy.macleod
On Wed, 2020-07-22 at 13:31 -0700, Joe Slater wrote:
> Use a static TESTDATADIR if tests are disabled. Allow
> override of TESTDATADIR if tests are enabled since the
> default will be wrong for target builds.
>
> Signed-off-by: Joe Slater <joe.slater@windriver.com>
> ---
> .../libdnf/libdnf/enable_test_data_dir_set.patch | 26 ++++++++++++++++++++++
> meta/recipes-devtools/libdnf/libdnf_0.48.0.bb | 1 +
> 2 files changed, 27 insertions(+)
> create mode 100644 meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
>
> diff --git a/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch b/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
> new file mode 100644
> index 0000000..e3784cc
> --- /dev/null
> +++ b/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
> @@ -0,0 +1,26 @@
> +libdnf: allow reproducible binary builds
> +
> +Use a dummy directory for test data if not built WITH_TESTS. Allow for overriding
> +TESTDATADIR, since the default is guaranteed to be wrong for target builds.
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Joe Slater <joe.slater@windriver.com>
> +
> +
> +--- a/CMakeLists.txt
> ++++ b/CMakeLists.txt
> +@@ -133,7 +133,12 @@ add_definitions(-DG_LOG_DOMAIN=\\"libdnf
> + add_definitions(-D_FILE_OFFSET_BITS=64)
> +
> + # tests
> +-add_definitions(-DTESTDATADIR=\\"${CMAKE_SOURCE_DIR}/data/tests\\")
> ++if(NOT WITH_TESTS)
> ++ set(TEST_DATA_DIR "/notests")
> ++elseif(NOT DEFINED TEST_DATA_DIR)
> ++ set(TEST_DATA_DIR "${CMAKE_SOURCE_DIR}/data/tests")
> ++endif()
> ++add_definitions(-DTESTDATADIR=\\"${TEST_DATA_DIR}\\")
Do we need to set a value in the build or do we never enable the tests?
Cheers,
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [oe-core][PATCH 1/1] libdnf: allow reproducible binary builds
2020-07-22 22:01 ` Richard Purdie
@ 2020-07-23 14:10 ` Joe Slater
0 siblings, 0 replies; 3+ messages in thread
From: Joe Slater @ 2020-07-23 14:10 UTC (permalink / raw)
To: Richard Purdie, openembedded-core@lists.openembedded.org; +Cc: MacLeod, Randy
We never enable the tests, however the "directory" is processed, perhaps by code that is never executed, but the code is built into the library. Since it is already dealing with a directory that will not exist on the target, I felt it safer just to feed it a "safe" name and let upstream deal with not building the code in the first place.
Joe
-----Original Message-----
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Sent: Wednesday, July 22, 2020 3:01 PM
To: Slater, Joseph <joe.slater@windriver.com>; openembedded-core@lists.openembedded.org
Cc: MacLeod, Randy <Randy.MacLeod@windriver.com>
Subject: Re: [oe-core][PATCH 1/1] libdnf: allow reproducible binary builds
On Wed, 2020-07-22 at 13:31 -0700, Joe Slater wrote:
> Use a static TESTDATADIR if tests are disabled. Allow override of
> TESTDATADIR if tests are enabled since the default will be wrong for
> target builds.
>
> Signed-off-by: Joe Slater <joe.slater@windriver.com>
> ---
> .../libdnf/libdnf/enable_test_data_dir_set.patch | 26 ++++++++++++++++++++++
> meta/recipes-devtools/libdnf/libdnf_0.48.0.bb | 1 +
> 2 files changed, 27 insertions(+)
> create mode 100644
> meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
>
> diff --git
> a/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
> b/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
> new file mode 100644
> index 0000000..e3784cc
> --- /dev/null
> +++ b/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.pat
> +++ ch
> @@ -0,0 +1,26 @@
> +libdnf: allow reproducible binary builds
> +
> +Use a dummy directory for test data if not built WITH_TESTS. Allow
> +for overriding TESTDATADIR, since the default is guaranteed to be wrong for target builds.
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Joe Slater <joe.slater@windriver.com>
> +
> +
> +--- a/CMakeLists.txt
> ++++ b/CMakeLists.txt
> +@@ -133,7 +133,12 @@ add_definitions(-DG_LOG_DOMAIN=\\"libdnf
> + add_definitions(-D_FILE_OFFSET_BITS=64)
> +
> + # tests
> +-add_definitions(-DTESTDATADIR=\\"${CMAKE_SOURCE_DIR}/data/tests\\")
> ++if(NOT WITH_TESTS)
> ++ set(TEST_DATA_DIR "/notests")
> ++elseif(NOT DEFINED TEST_DATA_DIR)
> ++ set(TEST_DATA_DIR "${CMAKE_SOURCE_DIR}/data/tests")
> ++endif()
> ++add_definitions(-DTESTDATADIR=\\"${TEST_DATA_DIR}\\")
Do we need to set a value in the build or do we never enable the tests?
Cheers,
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-07-23 14:10 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-07-22 20:31 [oe-core][PATCH 1/1] libdnf: allow reproducible binary builds Joe Slater
2020-07-22 22:01 ` Richard Purdie
2020-07-23 14:10 ` Joe Slater
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).