qps615-dlkm: fix devtool build directory and package version - #3163
paddy-chiu wants to merge 2 commits into
Conversation
|
Without EXTERNALSRC_BUILD, we will face "no makefile found" (log.do_compile.326282.txt) when running |
|
Can you please try the following? I think it does the same thing, if I understand correctly. --- a/recipes-kernel/qps615-module/qps615-dlkm_git.bb
+++ b/recipes-kernel/qps615-module/qps615-dlkm_git.bb
@@ -13,6 +13,17 @@ SRC_URI = "git://github.com/qualcomm-linux/TC9564_Host_Driver.git;protocol=https
PV = "6.0.3+git"
+def qps615_pkgv_suffix(d):
+ import bb.fetch
+
+ data = d.createCopy()
+ data.setVar("SRC_URI", d.getVar("SRC_URI"))
+ return bb.fetch.get_pkgv_string(data)
+
+PKGV .= "${@'' if not d.getVar('EXTERNALSRC') else qps615_pkgv_suffix(d)}"
+
+EXTERNALSRC_BUILD = "${EXTERNALSRC}/drivers/net/ethernet/toshiba/tc956x"
+
B = "${S}/drivers/net/ethernet/toshiba/tc956x"
# The original Makefile uses an "ifeq ($(pf), 1)" check to pick the default config.
Please wrap the text at ~70 characters in commit message. |
| # so devtool package versions match versions from the regular fetch/build path. | ||
| QPS615_PKGREV = "${@qps615_pkgv_suffix(d)}" | ||
| PKGV = "${@d.getVar('PV') + d.getVar('QPS615_PKGREV') if d.getVar('EXTERNALSRC') else d.getVar('PV')}" | ||
|
|
There was a problem hiding this comment.
Above changes should be separated on a different commit.
Also, is this really qps615-dlkm specific? I think this is just an oe-core issue.
There was a problem hiding this comment.
yeah, it llok like an oe-core issue of the oe-core/meta/classes/externalsrc.bbclass. I will implement this change on the bbclasse and will send it to the list. So have this in separete commit and we can revert when it was fixed.
There was a problem hiding this comment.
Hi Ricardo and Jose,
Thanks for review.
I split it to commit 2425bd0afb15ddae5504b8da12a00695db8b5f32.
We need to copy SRC_URI to EXTERNALSRC_ORIG_SRC_URI before qps615_pkgv_suffix called since SRC_URI will be overridden in externalsrc.bbclass for devtool build.
Actually, I have tested a potential fix in oe-core in similar way and it can fix this devtool PKGV issue (commit 459d4c1081d7ee0b589a5303ce14505af707ffce).
After fixing, PV and PKGV for qps615-dlkm are shown as below with devtool build:
PV: 6.0.3+git
PKGV: 6.0.3+git0+2cbd7b9ddf
Thanks,
Paddy
There was a problem hiding this comment.
We need to copy SRC_URI to EXTERNALSRC_ORIG_SRC_URI before qps615_pkgv_suffix called since SRC_URI will be overridden in externalsrc.bbclass for devtool build.
Got it
Actually, I have tested a potential fix in oe-core in similar way and it can fix this devtool PKGV issue (commit 459d4c1081d7ee0b589a5303ce14505af707ffce).
Please send it to the oe-core mailing list.
There was a problem hiding this comment.
Hi Jose,
Thanks for your suggestion.
I sent the oe-core mailing list for reviewing the oe-core PKGV change.
Best Regards,
Paddy
There was a problem hiding this comment.
For reference https://lists.openembedded.org/g/openembedded-core/message/246402.
Thanks
There was a problem hiding this comment.
Richard didn't really like this approach; could you reply to him so you can find a better solution?
7e18919 to
b47acfc
Compare
|
Please use about 72 chars per line on the commit message. |
When using devtool, externalsrc defaults B to a separate work directory, but the driver Makefile is located under drivers/net/ethernet/toshiba/tc956x. Set EXTERNALSRC_BUILD to use the correct directory. Signed-off-by: Paddy Chiu <pohuchiu@qti.qualcomm.com>
externalsrc also removes the Git URI from SRC_URI, causing PKGV to remain 6.0.3+git instead of the normal 6.0.3+git0+<SRCREV>. Align PKGV for devtool builds with regular builds to prevent buildhistory package-version QA failures. Signed-off-by: Paddy Chiu <paddy.chiu@oss.qualcomm.com>
Done. Thanks for comment. |
| # so devtool package versions match versions from the regular fetch/build path. | ||
| QPS615_PKGREV = "${@qps615_pkgv_suffix(d)}" | ||
| PKGV = "${@d.getVar('PV') + d.getVar('QPS615_PKGREV') if d.getVar('EXTERNALSRC') else d.getVar('PV')}" | ||
|
|
There was a problem hiding this comment.
Richard didn't really like this approach; could you reply to him so you can find a better solution?
Test Results 81 files 436 suites 5h 58m 2s ⏱️ For more details on these failures, see this check. Results for commit 2425bd0. |
When using devtool, externalsrc defaults B to a separate work directory, but the driver Makefile is located under drivers/net/ethernet/toshiba/tc956x. Set EXTERNALSRC_BUILD to use the correct directory.
externalsrc also removes the Git URI from SRC_URI, causing PKGV to remain 6.0.3+git instead of the normal 6.0.3+git0+. Align PKGV for devtool builds with regular builds to prevent buildhistory package-version QA failures.