[oe] checksums situation
Yuri Bushmelev
jay4mail at gmail.com
Sat Feb 14 14:51:50 UTC 2009
Hello!
[skipped]
> What do you think? Which way we should go? Do you have other ideas?
Well, I can suggest scheme that is very like one created in FreeBSD ports
(I just working with it about 8 years).
In recipe directory part and filename part of SRC_URI are stored separate.
E.g. we can continue storing directory part in SRC_URI but introduce new
variable to store filename part (e.g. DISTFILES - we can have more than
one source file per package).
Example:
# Source directories/mirrors:
SRC_URI = "${SOURCEFORGE_MIRROR}/zziplib/ http://somesite/~user/";
# Filename
DISTFILES = "zziplib-${PV}.tar.bz2 zziplib_extra-${PV}.tar.bz2"
Then we can use words in DISTFILES as keys to checking checksums.
But I don't see any good way to store checksums for multiple files in
recipe. We can't use this:
MD5SUM_zziplib-${PV}.tar.bz2="a6538f6c44ceeed0ed7e8e356f444168"
because of possible some special chars in file name.
We can possible use arrays:
MD5SUM["zziplib-${PV}.tar.bz2"]="a6538f6c44ceeed0ed7e8e356f444168"
but seems that no one uses arrays in recipes.
Other way is using some predefined functions via ${@bb.data....}
Or we can store all checksums in separate file per package directory
(like manifest in gentoo or distinfo in FreeBSD).
E.g. distinfo of russian xmms port from FreeBSD:
MD5 (xmms-1.2.11.tar.bz2) = f3e6dbaf0b3f571a532ab575656be506
SHA256 (xmms-1.2.11.tar.bz2) = 7ec15c56632b6c82e61ccddeaefd372359af2f005708a58cdf3951c574b20390
SIZE (xmms-1.2.11.tar.bz2) = 2581032
MD5 (RusXMMS2-csa41.tar.bz2) = 7d89f35c80849dae89b81cbb57026e57
SHA256 (RusXMMS2-csa41.tar.bz2) = e64df1956502e48c09ca60262efb7f1953a76d82a70c801e4797ca81e130e8d0
SIZE (RusXMMS2-csa41.tar.bz2) = 96642
Links:
1. FreeBSD Porter's Handbook: http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/index.html
--
Yuri Bushmelev
More information about the Openembedded-devel
mailing list