mozilla :: #build

7 Sep 2017
02:00larsbergdmajor: gps: fyi, on servo we have this repo:
02:00larsbergBasically, it builds servo with the latest rust nightly and nags us on IRC if something broke
02:00larsberg*super* useful
02:02larsbergted: We've been trying to get servo into rust CI for as long as I've been here, anything that big is kinda challenging for the already-fragile CI setup (though hopefully after we move to TC things will be easier)
05:04gpsglandium: i suspect you'll be intrigued by
05:05gpscomplete with .buildinfo artifact \o/
05:05glandiumgps: why intrigued?
05:06gpsi figured you would enjoy seeing .deb packages being produced (and later consumed) in taskgraph
05:09gpsnext step is hooking things up to docker image building so .deb outputs can be installed in the docker image - like how toolchain tasks work
05:11glandiumgps: you could have used contrib/builddeb
05:11gpsglandium: i wanted to hack robustcheckout plus a .rc file addition in there
05:12gpsi'm sure there's a "hook point" in debian packaging tools i could have used
05:12gpsi'm not a debian packaging expert
05:13glandiumgps: you could just have created mozilla.rc in contrib/debian, still copied robustcheckout in hgext3rd and invoke builddeb instead of creating changelog manually and then running debuild
05:13gpsahh, true
05:14gpswhat about the custom version number?
05:14gpsoh, and builddeb requires to run from a source checkout
05:16gpsi also need to see if i can hook up sebuild
05:16gpsbut doing chroot() from docker isn't allowed by default
12:20tedit's always fun when microsoft's own tools don't handle filenames with spaces in them properly
12:29noxted: Ouch.
12:37tedthe dumbest part is that it *does* handle it correctly for the most part, in that i can see it launching cl.exe with the right path
12:37tedbut somewhere else it fails parsing that
12:38tedmidl.exe runs midlc.exe which runs cl.exe
12:38tedsomewhere along the line something mangles the commandline
12:41larsbergthat thing where you're starting to exercise code and tool paths that predate support for spaces in paths
12:41larsberginb4 you also hit a silent MAXPATH truncation
12:43tedi suspect this is where i give up and just make this execution go through a batch script
12:48noxlarsberg: Ugh MAXPATH,
12:49noxlarsberg: I still remember when Cargo changed to include full crate hashes in paths, and suddenly rust-mozjs wouldn't compile anymore.
15:43tedthat's nice, though, isn't it: cmd.exe /q /c \"%CD%/$(DEPTH)/build/win32/vcrun.bat "$(MIDL)" $(MIDL_FLAGS) -I $(srcdir_rel) -Oicf $(srcdir_rel)/IGeckoCustom.idl\"
15:43tedmakefile + shell + cmd escaping+variables ALL IN ONE LINE
15:44noxObviously it should be RIIR'd and that would fix everything!!1!
16:07larsbergmoar quotes
18:27tedevery once in a while i forget that we still have terrible bits of makefile lurking:
18:36mshalat least we have a bug for it :)
18:36firebotBug 1256013 NEW, Add support for MIDL in
18:36tedwait, there's an even older bug i just assigned to myself
18:36firebotBug 881446 NEW, Move MIDL_GENERATED_FILES to
18:37tedmshal: i think this should be expressible in terms of GENERATED_FILES nowadays, since you added support for multiple outputs
18:37mshaloh, maybe
18:37tedit's a little wonky because midl writes them directly to disk, and GENERATED_FILES wants you to go through a FileAvoidWrite
18:37tedalso there's enough of this that we probably do want a MIDL_SOURCES var that just lists the idl files
18:37mshalcertainly would be nice not to add another variable for it, since there's only a few uses of it
18:38tedi think it's *just* ugly enough to warrant a variable
18:38tedyou could do MIDL_SOURCES += ['Foo.idl'] and we'd generate the SOURCES += ['Foo_c.c'] etc
18:38tedmidl outputs like 4 files per invocation or something
18:38tedwait, 6
18:38froydnjmidl-output to a temporary directory, and then write to FileAvoidWrite from the temporary directory?
18:39tedfroydnj: my thought was just to literally make the first output a timestamp file
18:39tedwhich is what those makefiles effectively do right now anyway
18:39ted$(MIDL_GENERATED_FILES): midl_done
18:39ted<actually invoke midl>
18:39froydnjted: also a possibility!
18:39tedtouch $@
18:39mshalmakes sense
18:39tedi think this should be fairly straightforward given the pieces we have now
18:41tedthere is a *little* weirdness in there, the makefiles split them up into {INTERFACES,ENUMS,LIBRARIES}
18:42tedi guess only the first set actually gets used as SOURCES?
19:35dminorchmanchester: btw, you were right about black squirrels being rare. According to the wikipedia article maybe only 1 in 10000 grey squirrels is melanistic, they&#39;re just locally common in Ottawa.
19:36chmanchesterdminor: aha, good to know. I remembered seeing them growing up in the northeast, but only once in a long while
19:37chmanchesterdminor: I&#39;m poking around the gn build right now... did you have a particular way to get past complaints about a missing sysroot?
19:38dminorchmanchester: yes, I had made a few modifications to skip those checks. maybe I missed pushing that to review, I&#39;ll check.
19:39chmanchesterok, I just started commenting out the bits that include those checks, but there seem to be quite a few!
19:41dminorchmanchester: first few parts of this patch: should do it, unless I made other changes in files that were never added to hg and only exist locally for me.
19:49chmanchesterdminor: hmm, I have that patch applied, but I still get
19:53chmanchesteroh well, it&#39;s probably just some difference in my config
19:53dminorchmanchester: it&#39;s possible I didn&#39;t do a clobber and so some of the checks were skipped when I was putting that together. I can try again in a bit and let you know.
19:54chmanchesterdminor: I&#39;m probably just on a different os/arch from you, no big deal
8 Sep 2017
No messages
Last message: 12 days and 19 hours ago