Clone wiki

SCons / BugParty / IrcLog2009-11-17

Conversation with #scons
(07:51:36 PM) The topic for #scons is: scons. What make should be. and then some
(08:12:21 PM) bdbaddog [] entered the room.
(08:13:21 PM) bdbaddog: Good evening!
(08:14:26 PM) garyo: Hi Bill, how's things?
(08:14:55 PM) bdbaddog: SHouldn't complain..but of course being a NYer fully capable of.. :)
(08:15:11 PM) garyo: :-)
(08:16:54 PM) bdbaddog: have u had much chance to test David's changes?
(08:17:08 PM) ***leafnunes notices that waf passes absolute paths to sources so that compiler error messages will have consistent paths to sources.
(08:17:11 PM) garyo: Did some on my home XP w/ a couple of different versions, and all worked well.
(08:17:20 PM) leafnunes: is there some way to tell scons to use src abspaths?
(08:17:53 PM) garyo: bdbaddog: tried today at work, but I have the Intel compiler installed there & Scons picks that up preferentially. Need to disable that to get proper tests.
(08:17:58 PM) sohail [n=Sohail@unaffiliated/sohail] entered the room.
(08:18:03 PM) bdbaddog: leafnunes: there was a question about this on users mailing list a big ago, might check the archives
(08:18:24 PM) garyo: leafnunes: I don't know an easy way, but you can just use ${SOURCES.abspath} in the compiler lines...
(08:18:30 PM) leafnunes: bdbaddog: thanks, sir.
(08:18:31 PM) garyo: Hi Sohail
(08:18:46 PM) sohail left the room (quit: Read error: 104 (Connection reset by peer)).
(08:18:53 PM) leafnunes: garyo: yeah, i'd rather not have to write Object lines for everything
(08:19:18 PM) garyo: leafnunes: you don't have to, just modify $CC_CMD.
(08:19:29 PM) leafnunes: ah.
(08:19:37 PM) garyo: start w/ this:
(08:19:40 PM) bdbaddog: env['CCOM'].replace('$SOURCES','${SOURCES.abspath}')
(08:19:40 PM) garyo: print env.Dump()
(08:19:53 PM) garyo: ... right, what he said. :-)
(08:19:54 PM) bdbaddog: or walk the env keys and do the above.
(08:19:55 PM) leafnunes: heh
(08:20:17 PM) bdbaddog: I think there's a flag to gcc to report errors/warnings with full abs paths as well. not sure about that.
(08:20:30 PM) leafnunes: bdbaddog: that's what i looked for initially
(08:20:40 PM) leafnunes: thanks you two
(08:20:45 PM) garyo: no prob
(08:20:47 PM) bdbaddog: No problmo!
(08:21:15 PM) garyo: bdbaddog: what I really need is to get my XP64 VM fired up and try the tests there.
(08:21:28 PM) garyo: That'll have a more ... interesting config.
(08:21:32 PM) bdbaddog: garyo: I'm wondering if for windows, couldn't we live with having the user run scons in a shell which is initialized for the correct VS or VC ?
(08:21:41 PM) garyo: eww!
(08:21:52 PM) bdbaddog: I ran the tests with VS2008exp on win 7 x64
(08:21:57 PM) garyo: Seriously, what we have now is not *all* that different from that.
(08:22:04 PM) garyo: It just runs the right bat script.
(08:22:05 PM) bdbaddog: virtualbox must be a pig though cause it took a LONG time.
(08:22:33 PM) garyo: I think my xp64 has 2005, not sure if it has both archs installed.
(08:26:32 PM) Jason_at_intel [n=chatzill@] entered the room.
(08:26:41 PM) Jason_at_intel: Hello
(08:27:01 PM) garyo: Hi Jason.
(08:27:01 PM) bdbaddog: hi
(08:28:51 PM) Jason_at_intel: so i have a silly question with git
(08:29:01 PM) Jason_at_intel: how do i check out?
(08:29:08 PM) garyo: do you have git installed?
(08:29:20 PM) loonycyborg: git pull url or so
(08:29:33 PM) garyo: git clone url I think (for the first time)?
(08:29:34 PM) loonycyborg: Actually git clone
(08:29:52 PM) loonycyborg: git pull is svn up equivalent.
(08:30:47 PM) bdbaddog:
(08:31:02 PM) bdbaddog: crash course on git for svn users
(08:31:28 PM) garyo: I've been using a lot of git at work recently, migrating off svn slowly; using git-svn as a bridge.
(08:31:35 PM) bdbaddog: o.k. 5:30 we ready to go?
(08:31:54 PM) garyo: I think so.
(08:31:57 PM) Jason_at_intel: sure
(08:32:15 PM) garyo: (Steven said he'd be here, David C too, but let's start, they can read the transcript -- I'll post it.)
(08:32:35 PM) bdbaddog: As I see it we really just want to nail the msvc stuff and then we can push 1.3 out (of course 1 checkpoint first)
(08:32:43 PM) stevenknight [n=stevenkn@] entered the room.
(08:32:52 PM) stevenknight: greetings all
(08:32:58 PM) bdbaddog: Greetings!
(08:33:00 PM) garyo: So, there's 30some bugs tagged "1.3", but only a dozen triaged ones. And several of those are vs_revamp.
(08:33:18 PM) stevenknight: those are probably the ones i gave back
(08:33:20 PM) garyo: So I agree w/ Bill that we should push the ckpt ASAP and move to 1.3 soon thereafter.
(08:33:43 PM) garyo: steven: yes, some are. I looked at a couple and 1.3 will close them.
(08:33:53 PM) stevenknight: cool
(08:34:03 PM) garyo: I actually think with David's vs stuff we are close.
(08:34:21 PM) garyo: We'll have to push a bunch of doc things til 2.x though, but that doesn't bother me a lot. Anyone?
(08:34:35 PM) stevenknight: ++ on doc => 2.x
(08:34:44 PM) stevenknight: definitely not a reason to hold up things any longer
(08:35:06 PM) GregNoel: (I'm reading along, but I'm only able to stay for a few minutes. If there's anything for me, now is the time.)
(08:35:48 PM) garyo: Greg, if you can take a look at the couple of issues you have for 1.3 & decide if you want to address them or not, soon would be good.
(08:36:32 PM) garyo: So the test reports have been trickling in. Has anyone seen anything that raises any flags?
(08:37:18 PM) garyo: (David vanM doesn't count, his compiler install seems to be a bit off.)
(08:37:23 PM) GregNoel: Yep, looked at some of them this afternoon. Need to know how soon freeze will be, ones that will take too long will be pushed to 2.1.
(08:37:47 PM) bdbaddog: hopefully only a few days to a week?
(08:37:50 PM) garyo: Greg: no problem.
(08:38:02 PM) GregNoel: I'll have to push them all, I think.
(08:38:28 PM) garyo: Bill: I think the ckpoint should be any time now, a day or more should get all the rest of the testing we're likely to get.
(08:38:46 PM) bdbaddog: the new VC/VS stuff's not in SVN is it?
(08:38:56 PM) garyo: Ah, good point.
(08:39:06 PM) Jason_at_intel: I have it crash out of the box
(08:39:11 PM) bdbaddog: Does David have commit rights?
(08:39:13 PM) garyo: Just saw your email.
(08:39:32 PM) garyo: bdbaddog: I'll ask. If not, I can commit for him.
(08:39:53 PM) loonycyborg left the room (quit: "Zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz").
(08:39:57 PM) bdbaddog: I think it's likely error handling needs to be improved.
(08:40:07 PM) garyo: Jason: pls try with SCONS_MSCOMMON_DEBUG=- (that's an OS environment var, not a SCons variable)
(08:40:28 PM) Jason_at_intel: Sure
(08:40:38 PM) Jason_at_intel: I trying to get the lastest git copy
(08:40:43 PM) Jason_at_intel: clone is working :-)
(08:40:54 PM) garyo: Hmm, one more thing Jason: I see that suspicious line if msvc_exists('cl') -- there's a bug report on that.
(08:41:02 PM) Jason_at_intel: I have a new test case.. it will test all combo
(08:41:07 PM) Jason_at_intel: i will send in e-mail
(08:41:46 PM) Jason_at_intel: ok I will look for that case line
(08:41:47 PM) garyo: It's 2481. This is on our bug triage list.
(08:42:16 PM) garyo: Does anyone know if the Tool exists() method is actually tested?
(08:42:54 PM) garyo: I don't think msvc_exists('cl') can possibly be right. Steven?
(08:43:14 PM) stevenknight: in which module?
(08:43:20 PM) garyo:
(08:43:24 PM) ***stevenknight gets to a working directory
(08:43:27 PM) garyo:
(08:44:10 PM) garyo: Bill: do you have the time to put out a ckpoint soon? I can help if needed.
(08:44:42 PM) stevenknight: looks to me like that's left over from some of my earlier work
(08:45:03 PM) stevenknight: don't see any reason it shouldn't be changed
(08:45:05 PM) garyo: Steven: can you take that issue then & do whatever is appropriate?
(08:45:10 PM) stevenknight: or removed altogether
(08:45:26 PM) bdbaddog: yes have time.
(08:45:33 PM) stevenknight: i'll look, but i'm not up to speed with the latest changes you've all been making
(08:45:47 PM) GregNoel: (Got to go. I'm recording and I'll read the rest later.)
(08:45:54 PM) stevenknight: a day or two okay?
(08:45:55 PM) garyo: Nobody has touched the exists() stuff. Question 1 is: does it matter what it returns?
(08:46:18 PM) Jason_at_intel: it should be true or false
(08:46:25 PM) bdbaddog: I think it's bogus. it should be msvc_exists('version your looking for')
(08:46:28 PM) bdbaddog: not ('cl')
(08:46:30 PM) garyo: Steven: yes, I think so -- but if it's crashing for Jason, perhaps Jason you could just make it return true for now.
(08:46:43 PM) stevenknight: returning true is all right
(08:46:50 PM) Jason_at_intel: sure
(08:46:55 PM) garyo: bdbaddog: agreed, but finding that version is either slow or circular at worst.
(08:46:58 PM) Jason_at_intel: I think this should like this
(08:47:05 PM) stevenknight: exists() only comes into play when we' re looking in the default lists to try to see what's installed
(08:47:12 PM) stevenknight: never really a robust mechanism
(08:47:21 PM) garyo: right, toolchain will replace all this.
(08:47:25 PM) stevenknight: seems like the new msvc stuff has its own improved ways of looking for that
(08:47:28 PM) Jason_at_intel: def exists(env):
(08:47:30 PM) Jason_at_intel: return msvc.Exists(env)#msvc_exists(env,'cl')
(08:47:47 PM) Jason_at_intel: based on what i have in Parts
(08:48:02 PM) garyo: Jason: does that just mean *some* msvc version exists?
(08:48:07 PM) garyo: If so, +1.
(08:48:26 PM) Jason_at_intel: it mean that the version that the env is setup for exists
(08:48:40 PM) garyo: Anyway, the other issues pre-release are error handling and doc of MSVC/MSVS_VERSION and ARCH stuff. I'll take a crack at those.
(08:48:42 PM) Jason_at_intel: so if MSVC_VERSION is not set it would be that some version exists
(08:48:50 PM) stevenknight: aha
(08:48:52 PM) Jason_at_intel: if MSVC_VERSION == 6.0
(08:49:01 PM) Jason_at_intel: then it would mean 6.0 exists
(08:49:01 PM) stevenknight: Jason_at_intel: just remove the argument
(08:49:23 PM) garyo: You mean msvc_exists()
(08:49:25 PM) garyo: ?
(08:49:26 PM) Jason_at_intel: give me a sec
(08:49:31 PM) stevenknight: yeah
(08:49:36 PM) garyo: cool
(08:49:38 PM) stevenknight: or msvc_exists(None) if you want to be explicit
(08:49:52 PM) stevenknight: the default behavior of the underlying function is to return true if *any* VC is installed
(08:49:59 PM) stevenknight: which seems to be basically what we want here
(08:50:15 PM) stevenknight: because then generate() will get called and the variables will get initialized
(08:50:52 PM) garyo: Agreed. OK, so let's follow Jason's crash up on the list -- with the msvc_exists() solution taken as "in". I'll work w/ David C to get his stuff into svn.
(08:51:13 PM) Jason_at_intel: so what does this mean in mslink?
(08:51:15 PM) garyo: Then I'll float some doc changes (hopefully pre-ckpoint)
(08:51:17 PM) Jason_at_intel: def exists(env):
(08:51:19 PM) Jason_at_intel: return msvc_exists()
(08:51:33 PM) stevenknight: Jason_at_intel: that's what we were just talking about
(08:51:39 PM) garyo: Jason: that looks like the right code to put into
(08:51:43 PM) madewokherd left the room (quit: No route to host).
(08:51:43 PM) stevenknight: it will return true if any VC is installed
(08:52:05 PM) bdbaddog: yes. sounds right.
(08:52:14 PM) Jason_at_intel: so we have etc
(08:52:18 PM) garyo: ok. Does anyone else have any burning issues that need to get into 1.3, or things that may hold it up?
(08:52:23 PM) Jason_at_intel: they all have this msvc_exist() test
(08:52:27 PM) bdbaddog: should we add a test on the msvc.exists()?
(08:52:37 PM) garyo: Jason: that's what we're talking about.
(08:52:49 PM) bdbaddog: no other burning issues.
(08:52:54 PM) bdbaddog: that I know of.
(08:53:00 PM) Jason_at_intel: No other issues i know of yet
(08:53:00 PM) bdbaddog: besides getting 1.3 out..
(08:53:01 PM) garyo: ;-)
(08:53:01 PM) bdbaddog: ;)
(08:53:18 PM) stevenknight: on trunk?
(08:53:23 PM) garyo: Yes.
(08:53:43 PM) bdbaddog: so let's push the msvc_fixes branch to trunk and complete rest of work there?
(08:53:43 PM) stevenknight: i only see the one call in
(08:54:12 PM) bdbaddog: ditto.
(08:54:23 PM) garyo: OK, so Bill to merge to trunk (isn't that already done? Guess not?), then Gary to work w/ David C to get svn code in, Steven to integrate msvc_exists patch, Gary to do some doc, Bill to push checkpoint out.
(08:54:24 PM) bdbaddog: the rest call msvs_exists()
(08:54:50 PM) bdbaddog: hmm should the call msvs_exists() or msvc_exists() for mslib, and mslink?
(08:54:53 PM) Jason_at_intel: so masm does a env.Detect('ml')
(08:55:07 PM) Jason_at_intel: this is broken when cygwin is on the path
(08:55:28 PM) Jason_at_intel: well more than that.. it depend the ML is setup correctly, and fails when you are doing 64-bit
(08:55:42 PM) Jason_at_intel: 64-bit needs to be ml64
(08:55:50 PM) garyo: Jason: I think masm may have to wait til after 1.3 unless you propose a quick patch.
(08:55:58 PM) Jason_at_intel: :-)
(08:56:03 PM) Jason_at_intel: give me a moment
(08:56:24 PM) garyo: ok, but not here -- put it in tigris & send a note to dev.
(08:56:29 PM) Jason_at_intel: FYI masm is shipped with cl
(08:56:46 PM) Jason_at_intel: so this could be break more stuff
(08:57:05 PM) garyo: I think only manual uses of masm, which are a small %age of total msvc users.
(08:57:21 PM) garyo: Anyway, if you propose a good patch we'll try to squeeze it in.
(08:57:31 PM) Jason_at_intel: sure
(08:57:47 PM) Jason_at_intel: ok so my problem is not the msvc_exist test
(08:57:56 PM) Jason_at_intel: I will continue online...
(08:57:57 PM) garyo: I just don't want to make this take any longer than necessary, mostly because we none of us have enough time.
(08:58:10 PM) Jason_at_intel: I agree
(08:58:10 PM) garyo: Nothing personal :-)
(08:58:31 PM) Jason_at_intel: we do want it to work.. and so far i see it not working
(08:58:46 PM) garyo: Right, that is high priority!
(08:59:01 PM) Jason_at_intel: sorry for the delay on my end... personal stuff came up so i could not test
(08:59:04 PM) garyo: We won't ship the ckpoint until your tests work too.
(08:59:22 PM) garyo: You have more machines & versions than any of us, I think.
(08:59:40 PM) Jason_at_intel: every one :-)
(09:00:00 PM) garyo: I'll try to be responsive on the mailing list to issues, and David's good too -- and of course Bill.
(09:00:02 PM) Jason_at_intel: I will send patches on the dev group
(09:00:21 PM) Jason_at_intel: sure.. any other issues?
(09:00:24 PM) garyo: Steven: tx for the patch! coding while on IRC ftw!
(09:00:48 PM) stevenknight: np, just actually got the commit in
(09:01:10 PM) garyo: I think we have a plan. How long should we cook the ckpoint for before the release? Aim for release after Thanksgiving some time?
(09:01:11 PM) stevenknight: ever since i upgraded to Karmic my subversion checkins can't remember who i am
(09:01:18 PM) stevenknight: have to specify --username all the freakin time
(09:01:27 PM) garyo: .svn dir missing?
(09:01:51 PM) stevenknight: whoah
(09:01:54 PM) stevenknight: garyo++++++++
(09:02:01 PM) Jason_at_intel: oh do you guys want patch for subprocess in Scons... I thought David was doing this?
(09:02:02 PM) stevenknight: i know it used to be there... :-/
(09:02:43 PM) garyo: Did we decide something about that last time? I forget.
(09:03:22 PM) Jason_at_intel: I thought it was if we could get it great.. else wait
(09:04:05 PM) garyo: something like that. I can ask David about that too (but I won't bug him.)
(09:04:56 PM) garyo: So, opinions on how long to cook the checkpoint?
(09:05:06 PM) bdbaddog: 2 wks?
(09:05:38 PM) garyo: That seems good to me. 1 is prob to short.
(09:06:16 PM) garyo: If the checkpoint goes out this wkend, 1.3 would be ~ 12/5 then. I can definitely help w/ that process.
(09:06:46 PM) bdbaddog: sounds good to me.
(09:06:59 PM) bdbaddog: lemme know when it's ready to be checkpointed.
(09:07:38 PM) garyo: OK, sounds great; I think I'm the one to coordinate up to that point.
(09:07:52 PM) garyo: So I'll keep you all in the loop.
(09:08:02 PM) Jason_at_intel: cool
(09:08:22 PM) garyo: Jason, let me know how your testing goes.
(09:08:28 PM) Jason_at_intel: I will
(09:08:37 PM) Jason_at_intel: I will give an update on dev
(09:08:42 PM) garyo: That's best.
(09:08:46 PM) Jason_at_intel: and figure out git better :-)
(09:09:05 PM) garyo: takes some getting used to.
(09:09:17 PM) bdbaddog: garyo: you gonna push current state from git into svn?
(09:09:39 PM) garyo: bdbaddog: I'll work w/ David C to make that happen.
(09:09:47 PM) garyo: asap.
(09:10:11 PM) Jason_at_intel: that will be great.. it will be easy to make diff from svn for me
(09:10:23 PM) bdbaddog: k. any other action items for tonight?
(09:10:32 PM) garyo: actually git has better patch/diff tools than svn. :-)
(09:10:40 PM) garyo: bdbaddog: I'm done.
(09:10:43 PM) Jason_at_intel: I believe it... just need to learn
(09:10:51 PM) stevenknight: Jason_at_intel: is the performance test case you sent to the ML worth capturing in its current state?
(09:11:10 PM) stevenknight: I'm getting close to having our buildbot be able to do timing runs on each checkin
(09:11:24 PM) garyo: That would be sweet.
(09:11:35 PM) Jason_at_intel: I think that test show that what i said is not true.. there is something else going on i need track down
(09:11:56 PM) stevenknight: even if it didn't show what you thought it did, is it still a worthwhile performance test?
(09:12:00 PM) bdbaddog: steven. I'll try and get u a BB client just for this.
(09:12:07 PM) Jason_at_intel: in fact the time for subst being turned off is longer by .1 second 100% of the time
(09:12:23 PM) stevenknight: okay
(09:12:30 PM) stevenknight: bdbaddog: cool, thanks
(09:12:46 PM) Jason_at_intel: so ya it is a good speed test i think
(09:12:49 PM) stevenknight: not a huge rush, i'm still at least a day or two away
(09:13:04 PM) stevenknight: okay
(09:13:13 PM) stevenknight: I'll probably go ahead and add it then
(09:13:33 PM) Jason_at_intel: if we can process 6000 file in under a 1 second some day that will be great... currently it is 2-3 second
(09:14:41 PM) bdbaddog: o.k. I'm off. have a great night all!
(09:14:49 PM) stevenknight: thanks guys. 'night
(09:15:05 PM) stevenknight left the room (quit: "Leaving").
(09:15:14 PM) Jason_at_intel: later!
(09:15:38 PM) garyo: ok, bye!