mozilla :: #build

15 May 2017
16:31nalexanderFallen: moz.configure and project flags is likely what you want.
16:33Fallennalexander: ah moz.configure looks like what I am looking for, thanks!
16:40nalexanderFallen: equivalent of, so it's not _new_ per se -- but it's easy to use. See, for example
16:41FallenI actually managed to stick things into our and it loaded, but the python variant of that looks much more future proof
16:47nalexanderFallen: definitely use moz.configure. Much, much simpler over time. The build peers will almost certainly r- an patch that could be achieved in moz.configure.
16:48Fallenour = Thunderbird (in this case :)
16:48Fallenbut yes, I will use moz.configure
16:52nalexanderFallen: oh... then it gets much more interesting. Do what you need in that case.
18:53ted03:49:58 INFO - error: no hosts capable of signing formats: dmgv2
18:53tedexciting try failure
19:03mshaldoes that always happen?
19:05tednot that i've ever seen
19:05tedseems to have made my build fail?
19:05catleelet aki know?
19:59catleeted: is that based on an old revision maybe?
20:00tedcatlee: a little bit, but not super old
20:00tedMay 8th
20:00catleeoh, yeah, that wasn't pushed until the 9th
20:18nalexanderchmanchester: glandium: can I depend on an flag in a moz.configure @depends?
20:19chmanchesternalexander: no, we only go the other way, from moz.configure to via add_old_configure_assignment
20:20nalexanderchmanchester: OK, that's what I remembered.
20:21nalexanderchmanchester: how early are those "add_old_configure_assignment" bits processed? If I moved a flag from to m/a/moz.configure, will it be in place to read the flag in android.m4?
20:27chmanchesternalexander: they're injected through aclocal.m4, which I believe runs prior to anything in the main (old) configure script
20:27nalexanderchmanchester: thanks.
20:28tedyeah, should be fine
20:28tedall of configure is run as a monolithic shell script with those vars et
20:42chmanchesternalexander: just remembered something related to that, beware of bug 1276043 in that vicinity
20:43firebot FIXED, Don't put things other than macro definitions in android.m4
20:43nalexanderchmanchester: ta.
20:44nalexanderchmanchester: I'll flag it for your review; this shouldn't be too hard.
21:22nalexanderchmanchester: how do I override a project_flag in my mozconfig?
21:23nalexanderIt doesn't seem to set up `--enable-foo` or whatever.
21:24chmanchesternalexander: right, that's a feature carried over from the implementation, you can only set a project flag with imply_option
21:24nalexanderchmanchester: so what's the correct/best/blessed way to actually do this stuff now? It seems like we're half way through like 3 different moz.configure approaches.
21:24nalexanderchmanchester: should I even use a project_flag for my mobile/android specific option?
21:25chmanchesterthis came up recently in bug 1363357
21:25firebot NEW, Add a moz.configure template like `simple_bool_option` similar to `project_flag`
21:25nalexanderchmanchester: should I duplicate the cult?
21:30chmanchesternalexander: I don't know what you're trying to do
21:30nalexanderchmanchester: let me a file a ticket for this, since it's more complicated than a pre: to the actual work.
21:36firebotBug 1365060 NEW, Move MOZ_NATIVES_DEVICES and MOZ_INSTALL_TRACKING to moz.configure
21:39nalexanderchmanchester: can you suggest how to let developers set the relevant flags on top of hte patch I r?ed you on? If it's too much effort I'll just cult more and let somebody else solve this problem.
21:44nalexanderchmanchester: thanks for the reference. But now I don't understand what's actually recommended. This situation must be common: a flag, with a non-trivial default, that can be set in mozconfig. (It's the --enable-marionette case.)
21:44nalexanderIs the thing to do (right now) to cult all the marionette stuff?
21:55gpsand bug 1361912 flushed out a case where we were still running python 2.6 in CI
21:55firebot REOPENED, Clean up mozharness configs for build scripts
21:55* gps screams
21:55gpspython 2.6 doesn't support TLS 1.1 and 1.2
21:56chmanchesternalexander: I don't see how those flags could be flipped in mozconfigs when they were in, is that something we're adding?
21:56nalexanderchmanchester: at one time, worked.
21:56nalexanderexport MOZ_INSTALL_TRACKING=1
21:56nalexanderexport MOZ_NATIVE_DEVICES=1
21:56nalexanderexport RELEASE_OR_BETA=1
21:56nalexanderac_add_options --with-adjust-sdk-keyfile="$topsrcdir/mobile/android/base/adjust-sdk-sandbox.token"
21:58chmanchesternalexander: MOZ_ANDROID_ACTIVITY_STREAM is a good example of a simple option that can be flipped
21:58nalexanderAye. I'd really like to tease these things apart, tbh, and make the web of dependencies more clear, but for now I just need to go-no go on pushing this stuff into moz.configure.
22:00nalexanderchmanchester: how do I flip it in a mozconfig?
22:01chmanchesterwhich it looks like we want for MOZ_NATIVE_DEVICES, and if we want to maintain the current behavior MOZ_INSTALL_TRACKING should be a project_flag that's implied by MOZ_NATIVE_DEVICES and RELEASE_OR_BETA
22:01chmanchesternalexander: with the environment variable
22:02nalexanderchmanchester: OK, thanks. We actually don't want the implication, we want to be able to control install tracking (with a deafult), but I can follow the same option pattern for my new things. THnaks.
22:19nalexanderchmanchester: thanks for your help with It's in your queue!
22:19firebotBug 1365060 NEW, Move MOZ_NATIVES_DEVICES and MOZ_INSTALL_TRACKING to moz.configure
22:24chmanchesterno problem. Will take a look before I leave
22:31nalexanderchmanchester: much appreciated.
22:33rhelmerhm, so mach ignores `MOZ_CRASHREPORTER=1` in the env and seems to disable it itself (which is not a bad default) - is there a way to override this?
22:33rhelmerI am just running the firefox binary directly but `mach run` is more convenient ...
22:34glandiumrhelmer: --enable-crash-reporter
22:35rhelmerglandium: I have that in the mozconfig, that's for build-time right?
22:35rhelmerit needs to also be enabled at runtime, that's what seems to be happening here
22:35glandiumrhelmer: that's an option to mach run
22:35rhelmeroh hah
22:35rhelmerok cool thanks
22:35rhelmerconsistent :)
22:39rhelmerglandium: huh... so I just tested locally and `./mach run --enable-crash-reporter` doesn't seem to work :( same exact steps running firefox out of the objdir do (I am sure the build-time stuff is right etc)
22:39rhelmerI just don't get the crash reporter (I am synthesizing a crash in the extensions process)
22:40rhelmerwell, let me correct that - I don't get the crash reporter for the main process, and I don't get a minidump for the extensions (content) process
22:40* rhelmer double checks everything
22:40rhelmerI see mach passing `--enable-crashreporter` to the firefox binary... strange
22:41glandiumrhelmer: crash-reporter, with a dash
22:41rhelmeroh geez ok thanks
22:41glandiumyes, the inconsistency with the configure flag is... hum
22:41rhelmeryeah that'd be nice to fix eh
22:42glandiumrhelmer: blame mconley and gps :) (bug 1321312)
22:42firebot FIXED, Add command-line argument to re-enable crash reporter when using ./mach run
22:43rhelmerhrm, could we do something like make it --enable-crashreporter and have mach do its "did you mean ...? running it for you..." thing? idk enough about mach to know if that works for flags as well as subcommands
22:44rhelmercause changing it now will break people's workflow in annoying ways I am sure
22:44gps1. open 2. search for "[task 2017-05-13T10:40:10.865309Z]"
22:44gps3. cry as you realize mozharness is invoking mozharness
22:46gpswhat's better is that "python" in this environment is python 2.6
22:47glandiumgps: I guess that thing is not using sys.executable
22:47rhelmerit's mozharness all the way down
22:47gpsi'm switching things to use sys.executable
22:47glandiumit's using self.query_exe('python')
22:47gpsi killed query_exe('python2.7')
22:48gpsi didn't think to look for query_exe('python')
22:58nalexanderchmanchester: are you still online? I think I'm seeing an ordering problem between my options, but I can't undestand what is causing it.
22:59chmanchesternalexander: yep
23:00nalexanderchmanchester: it's built on top of my earlier patch. If you look, I have another flag (MOZ_ANDROID_MMA) on top of the previous one (MOZ_INSTALL_TRACKING).
23:00nalexander|mach configure| succeeds but the build fails with configure-related errors:
23:00nalexander 0:01.41 mozbuild.configure.options.InvalidOptionError: default must be a bool, a string or a tuple of strings None MOZ_ANDROID_MMA PositiveOptionValue()
23:00nalexander(I added the logging.)
23:01nalexanderSo what's happening is that my 'MOZ_INSTALL_TRACKING' dependency is getting "resolved" to a POV.
23:01nalexanderBut my stanza is a clone of the INSTALL_TRACKING one that depends on NATIVE_DEVICES exactly the same, which doesn't appear to have that problem. Is there some weirdness with options and project_flags being resolved at different times?
23:05chmanchesternalexander: android_mma_default is returning the option value instance instead of a boolean
23:05chmanchesterthat's weird
23:06* nalexander wraps in bool()
23:07nalexanderchmanchester: I think it's expected Python behaviour, it's just weird since we're using all sorts of Python magic to express these as booleans, etc. Wrapping in bool works.
23:07nalexanderchmanchester: thnaks!
23:08chmanchesterright, makes sense
23:11rforbesso I just tried a build m-c where my mozconfig was just export CC="/user/bin/clang-3.9" export CXX="/usr/bin/clang++-3.9"
23:11rforbesthat should work shouldn't it?
23:12nalexanderrforbes: all on one line? I doubt it. But with a line break, probably.
23:13rforbesno, it has multiple lines
23:13rforbesit is set up correctly, I just didn't want to flood irc, heh
23:14glandiumrforbes: you can skip CXX
23:15glandiumbut yes, it should work. But if you're asking, it's because it doesn't?
23:15rforbesyeah, it is failing on me. this is linux btw. It looks like i am getting a ton of warnings which is causing the build to fail.
23:15glandiumwhich then becomes, what error are you seeing?
23:15rforbesit is a little unclear
23:15rforbes19:34.96 /usr/bin/notify-send --app-name=Mozilla Build System Mozilla Build System Build failed
23:16glandiumrforbes: mach show-log
23:16glandiumand search for the failure
23:17rforbesthat is slick, never seen that before, heh.
23:17glandiumrforbes: that's not the cause of the failure
23:17glandiumsearch for "failed" or "error"
23:22rforbesglandium: when I do a ./mach show-log | grep "error" it is huge
23:23rforbesi will pastebin it now.
23:23rforbesheh, it's too long for paste bin
23:24rforbesthe last portion.
23:25glandiumrforbes: did you start from a clobber when you made your mozconfig use clang 3.9?
23:25rforbesi did clobber first
23:27glandiumrforbes: can you paste the output of objdump -t /home/rforbes/src/firefox/obj-x86_64-pc-linux-gnu/xpcom/io/Unified_cpp_xpcom_io0.o ?
23:28rforbesglandium: not at this point. I did a pull and update re did my clobber and am rebuilding.
23:28rforbesIf i continue to fail I will do that.
16 May 2017
No messages
Last message: 13 days and 14 hours ago