Fairphone 2 build


#81

just to understand. Why first with -j3 ?
Is it possible to build over the first -j3 build faster by not clobbing, because the ccache has it partly stored?


(Lissyx) #82

Just to make it fail quickly. I guess we can avoid clobbering. Once it fails with -j1 and you collect the full failure log, maybe it would be worthwhile to make use of nuclear weapon strace:

strace -ff -s2048 -o b2g_make.log ./build.sh

This is going to create a ton of logs but might give us a hint, because I have no idea at all right now.

When sharing those, please compress before:

tar jcf b2g_make_strace.tar.bz2 b2g_make.log*

Then share b2g_make_strace.tar.bz2


#83

ok i have all that together… where wold you like to download it from?

well, i have no other choice. sorry.
https://www.dropbox.com/s/nxwr49e1xnn5do4/b2g_make_strace.tar.bz2?dl=0 165Mb!!!
https://www.dropbox.com/s/9ek6ee5kx6k0av1/160810_2-build.log.zip?dl=0 10kb


(Lissyx) #84

This one is with your locale setting problem, not the make one :confused:


#85

thaught i repaired that…
Ok.
Let me do that now with the second VM i set up last night again, to see if that one works.
I installed that VM2 English so i don’t need to change any language this time…
A first build this morning broake with the same “write error”.

I just set up a VM3 with fixed Harddive-size when i realized that something i always do might be bad.
When i set up a Terminal window i go to preferences and switch the scrollback to unlimited.
What do you think might that cause the “write error”?


(Lissyx) #86

No idea at all why you have this error. All CI builds are fine, so it’s either a misconfiguration on your system, or using wrong codebase somehow? But |./repo sync| should checkout proper things. And current m-c builds fine.


#87

Sorry guys, I had a wrong username in the path settings… :confounded:
now i was able to successful build for FP2 again.

The quesion is how to get a update of the repo so the build will in future succed without to manualy get different files. What was needed to do is this:

in fairphone.xml:
<remove-project name="platform_frameworks_native"/> <project name="platform/frameworks/native" path="frameworks/native" remote="caf"/> ./repo sync --force-sync frameworks/native

And the addition:
cd frameworks/native && git checkout -b caf_atomic_cpp caf/LA.BF.1.1.1_rb1.18 && curl -L https://github.com/mozilla-b2g/platform_frameworks_native/pull/1.patch | git am && cd ~/B2G ./repo sync

I know how to go with the first two lines, but how can i integrate the rest to the fairphone.xml?


(Lissyx) #88

Awesome!

Well you have to do what we told you for this: fork the repo, apply the patch (which is what checkout and git am are about).

We already have a frameworks/native work on mozilla-b2g on github, so I guess the best thing to do would be that:

  • you file a bug so that we can create a new branch on this fork, which would have caf/LA.BF.1.1.1_rb1.18 as a parent
  • against this branch, you send a PR on Github that applies the patch
  • for fairphone.xml you would just have to change a bit your changes: use “b2g” as the remote name, and add |revision=XXX| with XXX being the branch we created above
  • send a PR against b2g-manifest repo for the fairphone.xml changes

And then this would properly fix it.


(Sai Karthik Karra) #89

nice! please update the topic above. I will share the news :slight_smile:


#90

please whait until we have the blobfree b2g-installer running! To much unproper information will harm the viralness… Once it is done then please…


#91

For the history…
https://bugzilla.mozilla.org/show_bug.cgi?id=1294725


(Lapineige) #92

Sorry I didn’t follow this topic since a while (~50 replies ^^)

Does that mean that you have a working build ready ? Yeah ! :slight_smile:


#93

Hi Lapineige
Yes i have a functional blobFULL- build. And i tested it. It works.
But there are a few things i had to change in the manifest and those aren’t yet in the main branch.
I have problems understanding the words of the programers that helped me sort out how to make my environement work. @lissyx told me here https://bugzilla.mozilla.org/show_bug.cgi?id=1294725 to make a PR with everything but i don’t know what that means (whats: - squash your PR branch into one commit).
And how can i test it if its not in the repo yet?

Second topic is the blobfree build what also succeded, but to flash it needs some more investigation.
I managed to fix the b2g-installer proprietary-files.txt to make the b2g-installer download the blobs from the device but it does not work on boot up it freezes. So it seams that to download the bloobs from the device i need the new version of proprietary-file.txt that has no system/ prefix and to make b2g-installer build correctly i need the old verstion of proprietary-files.txt with the prefix system/.
So now that will take a few hours to figure out how i can fix that, and i don’t have time in the moment to do that… If someone wold like to take that pleas don’t hesitate. This is the bugnr: https://bugzilla.mozilla.org/show_bug.cgi?id=1285793


#94

I just got informed from @TitanNano that there is a bug in B2G OS that might has missleading my interpretation above.
Lets wait until https://bugzilla.mozilla.org/show_bug.cgi?id=1295011 is fixed.


(Lapineige) #95

Dev/git user jargon ^^
You can test your patch locally :wink: You just apply it to your files, build, test if it’s working, and if so you go to the next step.

After that, include all the changes in only 1 file (the commit), that you submit for a Pull Request (PR) which means that you request to “pull” your changes inside of the repository.


(Lapineige) #96

Ok, I’m glad to see those good progress (please keep us updated and ask questions when needed :wink: ).
Keep going, you’re on the right way !:slight_smile:

Your work will be really valuable, the Fairphone 2 will be a great flagship for B2G OS :slight_smile:

PS: BTW I’m updating the Compatible Devices pages with this information.
When the blob free version will be ready, please mention on this page that it is available on B2G Installer :wink:


(Lissyx) #97

That bug would not surface on non debug builds :-).

Regarding the extra system/, it probably cones from the logic in
gonk-misc/Android.mk that deals with finding blobs.

<
https://ci3.googleusercontent.com/proxy/h7Xz3l427Tk9VOnrLW9FODMnxae7zvYkV2pSg9pI06sveJ8LzZ20bVJ0Zsjv_p_UhDLyvOPk2ntQXla3-60HEgK8fF2ll7yOLpWsCZ2AhZyuXFTe9Q7SNBJQJuJXCcUvwTkyho8hlXa28Fo=s0-d-e1-ft#https://discourse.mozilla-community.org/letter_avatar_proxy/v2/letter/l/bc79bd/45.png>
lapineige
August 24

Ok, I’m glad to see those good progress (please keep us updated and ask
questions when needed <
https://ci3.googleusercontent.com/proxy/ecMJFai_b-WFlQwc5Lk481_cD8N9PcYgFy-Bme6jDIq_h0EUNFsCKh65LbGkbmjf3LBc-gtmr589bQOg8LrkrnJNIls8201wlDtcaRCVAMYljxZolQWOBzilTaEQx4AAew=s0-d-e1-ft#https://discourse.mozilla-community.org/images/emoji/emoji_one/wink.png?v=2>
).
Keep going, you’re on the right way !<
https://ci4.googleusercontent.com/proxy/WXb7N19ymmSjQefzE6_DMhC7WlvMLvTzF_d-xpixnAW2xonFpj0ouJSL5EEFo3qKpy393sIX7TX4NIGY5ZvxpotgugqQUVeKIwjRFdw2Q2lD8LmfQvs1fCzhXHIWDSTtOurmKFdniNA_=s0-d-e1-ft#https://discourse.mozilla-community.org/images/emoji/emoji_one/slight_smile.png?v=2

Your work will be really valuable, the Fairphone 2 will be a great
flagship for B2G OS <
https://ci4.googleusercontent.com/proxy/WXb7N19ymmSjQefzE6_DMhC7WlvMLvTzF_d-xpixnAW2xonFpj0ouJSL5EEFo3qKpy393sIX7TX4NIGY5ZvxpotgugqQUVeKIwjRFdw2Q2lD8LmfQvs1fCzhXHIWDSTtOurmKFdniNA_=s0-d-e1-ft#https://discourse.mozilla-community.org/images/emoji/emoji_one/slight_smile.png?v=2

PS: BTW I’m updating the Compatible Devices pages with this information.
When the blob free version will be ready, please mention on this page
that it is available on B2G Installer <
https://ci3.googleusercontent.com/proxy/ecMJFai_b-WFlQwc5Lk481_cD8N9PcYgFy-Bme6jDIq_h0EUNFsCKh65LbGkbmjf3LBc-gtmr589bQOg8LrkrnJNIls8201wlDtcaRCVAMYljxZolQWOBzilTaEQx4AAew=s0-d-e1-ft#https://discourse.mozilla-community.org/images/emoji/emoji_one/wink.png?v=2


Visit Topic or reply to this email to respond.


In Reply To

<
https://ci5.googleusercontent.com/proxy/kY0yCMmDzLJk1E96ido5ikNAHe5zh52D3YphR1X2xsrOEU-akWaRVcb05gCxw4tWSLqENnwem5Tm-NtFWoV2NCt4Wc-JGW_Dh5C7jzgcntlxIgUGOQWTDe7tfUEQonn_B38KBuLWG02k6YjYTd1RxOikuyZQHm2_UG72p17U=s0-d-e1-ft#https://discourse.mozilla-community.org/user_avatar/discourse.mozilla-community.org/novski/45/4829_1.png>
Novski
August 24
I just got informed from @TitanNano that there is a bug in B2G OS that
might has missleading my interpretation above. Lets wait until
https://bugzilla.mozilla.org/show_bug.cgi?id=1295011 is fixed.


#98

Is that file called during build or b2g-installer flash?


(Lissyx) #99

Build. Novski, I don’t want to sound disrespectful or blaming you, but it would really help that you learn basics of Android build system like Makefile and stuff around :slight_smile:

Any Android.mk file present in the tree (whatever level) will be sources by AOSP build system and evaluated. So gonk-misc/Android.mk is one of them (and quite an important one since it is the one defining the |gecko| module).

Inside you can find the blobfree target. From there, with the game of dependencies, all sub targets needed for blobfree are visible. One of them is to handle the detection of which blobs are being used. Please refer to the comments in the file, the git commit description, and the bug introducing blobfree at build system level for more documentation.


(Lissyx) #100

@Novski One thing you should pay attention too is that if you are pulling newer blobs, then there might have been upstream sources changes that are also needed. So you should check and rebase any forked repo, especially the device tree ones, agaisnt upstream to ensure to have something that matches.