Comments (14)
There was a discussion about a similar issue for raspberry pi on the yocto mailinglist (which has not been concluded as far as I know).
Fetching the kernel via git is slow and used a lot of space but makes it possible to target specific commits and makes it possible to easy change the git url to a forked copy or other repository.
Fetching it via package is faster, uses less space in the build system but makes it only possible to use released versions.
For my development I like the advantages of the git fetch, but maybe for the general public the package version is better?
from meta-sunxi.
I agree that for development the git version is better, but maybe it makes sense to switch to tars for the general use case.
I don't have a strong opinion against or in favour of it really.
from meta-sunxi.
There was a discussion about a similar issue for raspberry pi on the yocto mailinglist (which has not been concluded as far as I know).
Interesting! Are you referring to this thread: https://lists.yoctoproject.org/pipermail/yocto/2015-July/025403.html ?
In general, I am assuming that someone who would benefit from the git approach has the knowledge to quickly change the recipe to use git - while on the other hand the "general public" might not realize they could change to a package version to speed things up.
For that reason I am leaning towards the package version.
OTOH, if there is a need to target specific kernel commits, git would be the best approach (over package + patches) - but that scenario seems unlikely?
Couldnt we have the best of both worlds by using an approach as explained at http://www.yoctoproject.org/docs/1.8/bitbake-user-manual/bitbake-user-manual.html#bb-bitbake-preferences?
It is common for a recipe to provide two versions -- a stable, numbered (and preferred) version, and a version that is automatically checked out from a source code repository that is considered more "bleeding edge" but can be selected only explicitly.
For example, in the OpenEmbedded codebase, there is a standard, versioned recipe file for BusyBox, busybox_1.22.1.bb, but there is also a Git-based version, busybox_git.bb, which explicitly contains the line
DEFAULT_PREFERENCE = "-1"
to ensure that the numbered, stable version is always preferred unless the developer selects otherwise.
from meta-sunxi.
Yes that´s what i meant. In this case the advantage is that we have a stable repository for the package.
Doing both worlds is a good idea.The more common approach I have seen is to set a
PREFERRED_VERSION_linux ?= "4.1%"
in sunxi.inc
Change the recipes for 4.1 to use tar.xz and do a new one for bleeding edge 4.2. It would also be possible with DEFAULT_PREFERENCE but I have seen the PREFERRED_VERSION in most layers.
I can do a patch/pull request later this day or do you want to do one? (if everybody is fine with this idea?)
from meta-sunxi.
If you are able to do the patch later today, please go ahead.
I have no preference for DEFAULT_PREFERENCE vs PREFERRED_VERSION - let's do
what is most commonly done.
Thanks!
On Thu, Jul 23, 2015 at 8:25 AM, Noxenious [email protected] wrote:
Yes that´s what i meant. In this case the advantage is that we have a
stable repository for the package.Doing both worlds is a good idea.The more common approach I have seen is
to set aPREFERRED_VERSION_linux ?= "4.1%"
in sunxi.inc
Change the recipes for 4.1 to use tar.xz and do a new one for bleeding
edge 4.2. It would also be possible with DEFAULT_PREFERENCE but I have seen
the PREFERRED_VERSION in most layers.I can do a patch/pull request later this day or do you want to do one? (if
everybody is fine with this idea?)—
Reply to this email directly or view it on GitHub
#99 (comment)
.
from meta-sunxi.
I think it's better to set the DEFAULT_PREFERENCE in the kernel recipe, if i'm not wrong if you set it in a machine .conf include and then modify it (for example to switch from 4.1 to 4.2) all the layers will be parsed again.
See also @naguirre commit f4ebd29
from meta-sunxi.
thinking more about it, using PREFERRED_VERSION looks cleaner, just i don't like to have it in a machine .conf file...
from meta-sunxi.
Suggesting PREFERRED_VERSION was just following what I have seen in other layers. I have no preference for either.
FSL, TI: none
Raspberypi: http://git.yoctoproject.org/cgit/cgit.cgi/meta-raspberrypi/tree/conf/machine/include/rpi-default-versions.inc
Intel: http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel/tree/conf/machine/intel-core2-32.conf
Just tell me your preference and I will do the patch accordingly.
from meta-sunxi.
let's hear from @naguirre too, i don't like it in machine conf but i see that many do so i'm ok for both ways...
from meta-sunxi.
I don't have any issues with git fetching, but i have a very good bandwidth :-)
I like what KristofRobot proposed :
- linux-sunxi_3.4.bb : keep this one as is, it was using git for a while and i don't think there is another way to get the latest version of source code
- linux-4.1.bb : use tar.gz here.
- linux_git.bb (git protocol) : Use DEFAULT_PREFERENCE = "-1" to choose the 4.1 as the best version.
I don't like PREFERRED_VERSION too much. I think that it should be overridden in you local meta or conf if you want to change for another version or package.
from meta-sunxi.
Ok, I have the patches ready, but have not tested them yet. Will do so today and make a push request.
from meta-sunxi.
Thanks for your work !
2015-07-29 9:27 GMT+02:00 Noxenious [email protected]:
Ok, I have the patches ready, but have not tested them yet. Will do so
today and make a push request.—
Reply to this email directly or view it on GitHub
#99 (comment)
.
Nicolas Aguirre
Mail: [email protected]
Web: http://www.calaos.fr
Blog: http://dev.enlightenment.fr/~captainigloo/
from meta-sunxi.
Ok tested it and everything works. New Pull request.
from meta-sunxi.
merged
from meta-sunxi.
Related Issues (20)
- ATF Build failed for OrangePi PC2 HOT 4
- Build fails for master branch and OPi Zero 2 HOT 9
- Bad qtwebengine performance with lima HOT 7
- wic for sunxi64 HOT 9
- USB not working on BananaPi M2 Zero HOT 4
- Question: DT Overlays HOT 3
- Patch errors when baking HOT 1
- Should this generate an SD card image? HOT 18
- Ethernet not working on Orange Pi One Plus (H6) HOT 5
- Support for OrangePI zero 3 HOT 49
- Upcoming mainline kernels support HOT 9
- meta-sunxi depends on meta-sunxi error HOT 6
- Can't boot Orange PI Zero 2W HOT 1
- i2c kernel panic on A20-OLinuXino-LIME during poweroff HOT 6
- orange-pi-zero2 build no longer works HOT 5
- [OrangePi PC2] Wrong place for dtb in boot partition HOT 3
- please create scarthgap branch. thx HOT 4
- nanopi-r1 machine fails to build in u-boot for kirkstone (missing dts) HOT 7
- Legacy sunxi Kernel/U-Boot HOT 4
- olinuxino-a20lime2-emmc: pya20 SRC_URI entry mapping.h: file could not be found HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meta-sunxi.