Skip to contentSkip to conversation

libeigen: allow empty packages

PATCH Superseded Vyacheslav Yurkov 2 participants 4 messages Oct 2, 2018

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 libeigen: allow empty packages

When libeigen is used as a dependency (e.g. in ceres library), the build is broken because empty packages are not constructed be default

---
 meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb | 1 +
 1 file changed, 1 insertion(+)
meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb +1 -0
index 31a42a9d6..a59320655 100644
@@ -18,3 +18,4 @@ FILES_${PN}-dev = "${includedir} ${datadir}/eigen3/cmake ${datadir}/cmake/Module
 # ${PN} is empty so we need to tweak -dev and -dbg package dependencies
 RDEPENDS_${PN}-dev = ""
 RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+ALLOW_EMPTY_${PN} = "1"
Signature · 1 line
2.19.0
#1 lore raw

Hi Vyacheslav

Quoted 4 lines · Vyacheslav Yurkov

When libeigen is used as a dependency (e.g. in ceres library), the build is broken because empty packages are not constructed be default

can you explain a bit more on whats going on? it is a runtime failure or build time failure.

Quoted 22 lines
---
 meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb | 1 +
 1 file changed, 1 insertion(+)
meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb +1 -1
index 31a42a9d6..a59320655 100644
@@ -18,3 +18,4 @@ FILES_${PN}-dev = "${includedir} ${datadir}/eigen3/cmake ${datadir}/cmake/Module
 # ${PN} is empty so we need to tweak -dev and -dbg package dependencies
 RDEPENDS_${PN}-dev = ""
 RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+ALLOW_EMPTY_${PN} = "1"
--

2.19.0

--
_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

#2 lore raw

Hi Khem,
It's a build time failure. libeigen is header-only library.
All headers go into dev package, therefore the main package is empty. Dependency on the dev package doesn't work, AFAIK, so you have to allow empty package for build to succeed. Otherwise I get an error that empty packages are not allowed. I reproduced it when I built ceres-solver recipe (although I don't use the latest poky). Perhaps I'm missing something and it has been solved in the latest poky?

Vyacheslav

Quoted 28 lines · Khem Raj

Hi Vyacheslav

Quoted 3 lines · Vyacheslav Yurkov

When libeigen is used as a dependency (e.g. in ceres library), the build is broken because empty packages are not constructed be default

can you explain a bit more on whats going on? it is a runtime failure or build time failure.

Quoted 19 lines
---
  meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb | 1 +
  1 file changed, 1 insertion(+)
meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb +1 -1
index 31a42a9d6..a59320655 100644
@@ -18,3 +18,4 @@ FILES_${PN}-dev = "${includedir} ${datadir}/eigen3/cmake ${datadir}/cmake/Module
  # ${PN} is empty so we need to tweak -dev and -dbg package dependencies
  RDEPENDS_${PN}-dev = ""
  RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+ALLOW_EMPTY_${PN} = "1"
--

2.19.0

--
_______________________________________________

#3 lore raw
Quoted 10 lines · Vyacheslav Yurkov

Hi Khem,
It's a build time failure. libeigen is header-only library. All headers go into dev package, therefore the main package is empty. Dependency on the dev package doesn't work, AFAIK, so you have to allow empty package for build to succeed. Otherwise I get an error that empty packages are not allowed. I reproduced it when I built ceres-solver recipe (although I don't use the latest poky). Perhaps I'm missing something and it has been solved in the latest poky?

that helps. So lets add this to commit message and send v2, we could then move ahead with this patch.

Quoted 32 lines

Vyacheslav

Quoted 28 lines · Khem Raj

Hi Vyacheslav

Quoted 3 lines · Vyacheslav Yurkov

When libeigen is used as a dependency (e.g. in ceres library), the build is broken because empty packages are not constructed be default

can you explain a bit more on whats going on? it is a runtime failure or build time failure.

Quoted 19 lines
---
  meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb | 1 +
  1 file changed, 1 insertion(+)
meta-oe/recipes-support/libeigen/libeigen_3.3.4.bb +1 -1
index 31a42a9d6..a59320655 100644
@@ -18,3 +18,4 @@ FILES_${PN}-dev = "${includedir} ${datadir}/eigen3/cmake ${datadir}/cmake/Module
  # ${PN} is empty so we need to tweak -dev and -dbg package dependencies
  RDEPENDS_${PN}-dev = ""
  RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+ALLOW_EMPTY_${PN} = "1"
--

2.19.0

--
_______________________________________________