00:04 -!- Igor2 [~igor2@catv-5062cea3.catv.broadband.hu] has joined #geda 01:20 -!- robfitz [~robfitz@213-202-128-61.bas502.dsl.esat.net] has quit [Ping timeout: 620 seconds] 01:20 -!- robfitz [~robfitz@213-202-169-14.bas503.dsl.esat.net] has joined #geda 01:31 < Igor2> hi 01:47 -!- nwk [~nwk@c-67-183-22-213.hsd1.wa.comcast.net] has joined #geda 01:54 < Igor2> hi 01:57 < nwk> hi 02:32 -!- bert [~bert@a82-93-149-85.adsl.xs4all.nl] has joined #geda 02:42 -!- peterbrett [~peter@ptbb2b.girton.cam.ac.uk] has joined #geda 02:57 -!- cory [~cory@c-67-171-33-182.hsd1.wa.comcast.net] has joined #geda 02:57 < cory> quit 02:57 -!- cory [~cory@c-67-171-33-182.hsd1.wa.comcast.net] has quit [Client Quit] 03:11 -!- corycross [~coryrc@c-67-171-33-182.hsd1.wa.comcast.net] has joined #geda 03:12 -!- corycross [~coryrc@c-67-171-33-182.hsd1.wa.comcast.net] has quit [Client Quit] 03:14 -!- corycrossq [~cory@c-67-171-33-182.hsd1.wa.comcast.net] has joined #geda 03:16 < peterbrett> *blink* 03:24 < Igor2> blink? 03:32 < peterbrett> cory's in-and-outness 03:32 < peterbrett> Ales: If you're listening, could you please kick seul.org to refresh the MX record for peter-b.co.uk? 03:33 < peterbrett> Ales: My mailserver died yesterday, and I've moved to a new provider 04:01 < corycrossq> Couldn't find the right irc client I used to use... 04:02 -!- corycrossq [~cory@c-67-171-33-182.hsd1.wa.comcast.net] has left #geda [] 04:02 -!- corycrossq [~cory@c-67-171-33-182.hsd1.wa.comcast.net] has joined #geda 04:27 -!- cnieves [~cnieves@223.pool85-57-71.dynamic.orange.es] has joined #geda 04:27 < cnieves> hi everybody 04:28 < peterbrett> hey cnieves 04:29 < cnieves> hi Peter 04:30 < cnieves> the code sprint seems to be running since a long time... ;) did I miss something? 04:30 < peterbrett> No, it'll start about 2 pm GMT, I think 04:31 < peterbrett> I'll be going to PeterC's place for lunch and to start the UK leg of the sprint :) 04:31 < cnieves> That's the official US start time ;) . 04:31 < cnieves> Nice! food and coding! :) 04:32 < peterbrett> My e-mail is still screwed; I think seul.org hasn't realized that the MX records for my domain have changed 04:33 < cnieves> isn't that a dns thing? maybe the dns it is using has not updated its tables... 04:33 < peterbrett> cnieves: That's right, yes 04:34 < cnieves> Hard thing to solve if you don't have access to the dns... Don't know if Ales can do something. 04:35 < peterbrett> Also, the fscking git system keeps screwing up 04:36 < cnieves> what is it doing? 04:37 < peterbrett> Skipping commits 04:37 < cnieves> :-o why? 04:37 < peterbrett> http://www.srcf.ucam.org/~ptbb2/gitweb.cgi?p=gaf.git;a=summary 04:38 < peterbrett> Missing a couple of commits from yesterday, and I have no idea why 04:40 < cnieves> yup, I saw them in the mail. You can talk to Ales when he comes 04:42 < cnieves> I'll take a look at your patch, and apply it, complying with Ales' comments (I will comment the code to fetch the wiki from the web) 04:42 < cnieves> there is no file in SF tracker 04:42 < cnieves> should I take it from the mail? 04:42 < Igor2> >peter> so, can you find a way that i can fetch the commit info without having a local repository? 04:45 < peterbrett> cnieves: Yes, from the mail 04:46 < peterbrett> Igor2: Some ways have occurred to me, but I'm just feeling pissed of with cvsps atm 04:47 < Igor2> ok 04:52 < peterbrett> Igor2: Screenscraping seemed to be the best option 04:58 < Igor2> i didn't get to compile the CVS version yet - that night when i tried my friend took my resources with his kernel patch problem :) 04:58 < Igor2> but as soon as i've etched these boards 04:58 < Igor2> i will set up that compile environment 04:59 < Igor2> then i will have binaries compiled for i586, probably in .deb format with an easy and semi-automatic update :) 05:05 < Igor2> bah, my etchant is a bit tired :) 05:12 < cnieves> Peterbrett: I notice your gschem-browse-wiki patch won't work under windows... 05:12 < cnieves> isn't there a way to make it working? 05:12 < cnieves> (revert back to the current behaviour?) 05:12 < peterbrett> cnieves: Why won't it work? 05:13 < peterbrett> cnieves: The current behaviour is exactly the same 05:13 < peterbrett> cnieves: Look at initiate-gschemdoc in i_callbacks.c 05:13 < cnieves> you have an #ifndef MINGW ... fork() #else "Documentation commands not supported under MinGW" 05:13 < peterbrett> cnieves: fork() is a point of very much contention in Linux<->Windows portability 05:13 < peterbrett> cnieves: Yes, I remember now 05:14 < peterbrett> cnieves: fork()-ing gschemdoc hasn't ever worked on Windows 05:15 < cnieves> is the current behaviour a fork too? 05:15 < peterbrett> cnieves: yep 05:15 < peterbrett> cnieves: The "fix" is to use CreateProcess() from the Windows API 05:15 < peterbrett> Because O*(&%(*&"££*$& Microsoft can't implement the POSIX specification 05:16 < peterbrett> We should probably do something with autoconf & missing 05:16 < cnieves> yup, they prefer their own api. Then I suppose there is no problem. 05:17 < cnieves> it's a big deal the windows users won't have access to help pages... :) 05:18 < peterbrett> cnieves: Yep. It does need fixing, but I don't want to plough through MSDN pages for fear of my brain dribbling out of my ears 05:29 -!- pcjc2 [~pcjc2@ACD423A9.ipt.aol.com] has joined #geda 05:29 < pcjc2> hi all 05:30 < cnieves> hi Peter 05:30 < cnieves> welcome! 05:32 < cnieves> pcjc2: do you plan to apply your patches in SF tracker? 05:33 < pcjc2> I hoped to see what people thought of the new-page cleanup first 05:36 < pcjc2> I'll apply the circle drawing one, and the minor tidyup one 05:37 < cnieves> ok. Ask for the other when all people come. I generally assume that if there are no comments, there is no objection to the patch. 05:38 < pcjc2> I don't think its too controversial 05:38 < peterbrett> Who feels like a big crack-down on #ifdef DEBUG sections? 05:39 < pcjc2> and it "works for me", It just doesn't hurt to get another few pairs of eyes to look at it when you essentially re-write a bit of code 05:39 < peterbrett> (along a similar vein to my destruction of GTK1.2 support last year) 05:39 < pcjc2> (In this case, the code which opens files from the command line) 05:40 < pcjc2> if it doesn't compile with #define DEBUG 1 somewhere, then cull them I say 05:40 < pcjc2> OTOH, there are some places where they (or statements like them) are helpful 05:40 < pcjc2> ) 05:40 < peterbrett> It would be a good idea to define a macro (e.g. DEBUGMSG() ) for print debug info 05:40 < pcjc2> bah can't match (), you see why I hate Scheme! 05:40 < pcjc2> sure, is there a GLib way 05:41 < peterbrett> pcjc2: If you're using emacs to edit scheme, there's a keystroke to close all open parentheses 05:41 < pcjc2> there is a Kernel way, if you look at its sources 05:41 < pcjc2> you could define such a DEBUGMSG() macro in similar vein to fprintf( stderr, ... )m 05:42 < pcjc2> s/m$/ with a variadic marco/ 05:42 < peterbrett> pcjc2: Yes, but variadic macros *are* slightly evil 05:42 < pcjc2> you probably should have a replacement if variadic macros don't work - a function taking varargs 05:43 < peterbrett> yes 05:43 < pcjc2> your DEBUGMSG wants to be a macro 05:43 < pcjc2> and if it is to have printf syntax, either you must use variadic macros 05:43 < pcjc2> or just define DEBUGMSG to expand somehow, without taking parameters 05:44 < pcjc2> like #define DEBUGMSG printf 05:44 < pcjc2> OR #define DEBUGMSG \\ 05:44 < pcjc2> no - thats broken anyway - ignore me 05:44 < peterbrett> pcjc2: My pleasure 05:45 < cnieves> help->component is not working for me, neither in the last gschem release. Could you please verify it? 05:45 < peterbrett> cnieves: Um.. a testcase would be useful 05:45 < pcjc2> I can't see how to do it without a variadic macro, or a macro which expands directly into a function call - must be one of the two 05:45 < cnieves> easy: open gschem, go to the menu help->component... in the last gschem release 05:47 < pcjc2> don't you have selected a component with a documentation reference? 05:47 < cnieves> oh! forget it! I didnt't! 05:48 < peterbrett> :) lol 05:48 < peterbrett> And there's me blowing away my build tree to compile a released version 05:49 < pcjc2> if its just over a component with no documentation link, IIRC, it googles for the device name 05:49 < pcjc2> (But I'm just remembering what I think I saw one late night here.... not trying it live) 05:50 < cnieves> no, it just does nothing 05:50 < peterbrett> cnieves: That may be a bug 05:50 < cnieves> yup. A message should be better 05:51 < cnieves> peterc: have you seen ivan's mail? 05:53 < peterbrett> Hmm 05:53 < peterbrett> I think I need to install CVS Emacs 05:57 < pcjc2> yes - just mailing back 05:57 < pcjc2> feeling stupid pointing him to my patch in the tracker when I'd forgotten to upload that one 05:57 < pcjc2> Also, briefly explaining the scheme defined menus 05:58 < pcjc2> rcstrings.c 05:58 < peterbrett> grep -Lr --include='*.[ch]' '#ifdef DEBUG' * | wc -l 05:58 < cnieves> why not invite him to IRC? 05:58 < peterbrett> only 343 files have #ifdef DEBUGs in 05:58 < pcjc2> I guess that is I18N, but I can't figure out how / where they are referenced 05:58 < pcjc2> good point, will send that email now 06:00 < peterbrett> ...oops, I needed the -l switch to grep, not -L 06:00 < peterbrett> 20 matches seems more reasonable 06:00 < peterbrett> most of them are in gattrib 06:01 < peterbrett> 81 files have occurrences of 'DEBUG' 06:01 < pcjc2> I'd not suggest removing them from gattrib without checking with Stuart 06:01 < peterbrett> pcjc2 06:01 < peterbrett> meh 06:01 < peterbrett> I agree 06:01 < peterbrett> I'm going to pack up here and head over to your place now 06:02 < pcjc2> ok 06:02 < cnieves> peterbrett: I applied your patch to the help menu 06:02 -!- peterbrett [~peter@ptbb2b.girton.cam.ac.uk] has quit [Quit: Leaving] 06:02 < cnieves> doh! just when he leaves! :( 06:27 < cnieves> pcjc2: do you know a strstr function that is case insensitive? 06:32 < pcjc2> strcasestr 06:32 < cnieves> thanks! 06:32 < pcjc2> grr... some horrid person took my laundry out of the dryer last night and put their own in - before mine was finished 06:32 < pcjc2> (Either that, or the dryer isn't working as well as it used to) 06:33 < cnieves> innocence assumption first, unless you have evidences ;) 06:41 < pcjc2> Peter B says strcasestr isn't portable to windows 06:42 < cnieves> :( 06:43 < pcjc2> He recalls a discussion with you, regarding that, and portability to Cygwin 06:43 < pcjc2> (Will be online soon, wireless permitting) 06:46 < cnieves> Can't remeber. I'm looking for a more portable way. 06:48 -!- peterbrett [~peter@ACD423A9.ipt.aol.com] has joined #geda 06:48 < peterbrett> 'lo 06:48 < cnieves> hi again 06:50 < pcjc2> Having googled for it, I'm not sure if it is a problem on windows 06:50 < pcjc2> the compare functions are 06:50 < cnieves> found a workaround: use g_ascii_strup in both strings, and continue using strstr afterwards. 06:55 < cnieves> pcjc2: what compare functions did you find? 06:57 < pcjc2> that is less postable 06:57 < pcjc2> windows does something different 06:57 < pcjc2> just google for windows strcasecmp portability 07:00 < cnieves> we are not talking about strcasecmp, but strcasestr 07:00 < peterbrett> Gah, the universe is doing everything to stop my mail from working at the moment :( 07:00 < pcjc2> windows claims to support strcasestr 07:02 < cnieves> strcasestr is not in mingw's string.h: 07:02 < cnieves> http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/mingw/include/string.h?rev=1.16&content-type=text/x-cvsweb-markup&cvsroot=src 07:03 < cnieves> but it is in cygwin: 07:03 < cnieves> http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/cygwin/include/strings.h?rev=1.2&content-type=text/x-cvsweb-markup&cvsroot=src 07:04 < cnieves> no, it's not in cygwin either. I mispelled it with strcasecmp 07:04 < cnieves> I think it's better to replace strcasestr 07:05 < cnieves> and use g_ascii_strup and strstr 07:15 * peterbrett hates CVS 07:16 < cnieves> peterbrett: I couldn't apply parts #4 and #5 of your patch: 07:17 < cnieves> I didn't change help-manual behaviour: I kept the old function because it is using "gschemdoc -m" 07:18 < cnieves> and your new scheme function is using always "gschemdoc -w" 07:18 < cnieves> I didn't apply #5 because we will lost all cvs history. I'll wait for Ales and see if he can do anything better. 07:19 < cnieves> (#5 is moving gschemdoc from utils/scripts to gschem/scripts) 07:19 < peterbrett> cnieves: There isn't anyway of doing it better that won't cause breakage 07:19 < peterbrett> CVS sucks 07:20 < cnieves> regarding #4: won't be better if "-w" is also a parameter of the gschemdoc scheme function ? 07:20 < peterbrett> Peter C says you can do evil with CVS admin. This is true, but it'll make it impossible to get historical pre-move versions of the tree 07:20 < peterbrett> cnieves: I had a thought about that, and decided no 07:20 < peterbrett> cnieves: Because they do totally different things 07:21 < peterbrett> cnieves: I like functions to do what you expect them to 07:21 < peterbrett> In fact, gschemdoc should be changed to use -d for finding component documentation 07:22 < peterbrett> Just incase someone sets the documentation attribute of a symbol to -m or -w 07:23 < cnieves> Another possibility is the toplevel manual being also a wiki page. Do you know how is it created? 07:23 < peterbrett> No 07:25 < cnieves> I'll wait for Ales and check this. 07:25 < peterbrett> Good idea 07:30 < cnieves> pcjc2: I recall you updated the refdes renum tests to remove the colos in filenames. Did you? 07:30 < cnieves> (I can't confirm it in ChangeLog) 07:30 < cnieves> s/colos/colons 07:30 < pcjc2> Was Dan 07:30 < pcjc2> Oh.. that last bug you closed... case insensitivity 07:31 < cnieves> ah, ok. There is a bug report about this. 07:31 < pcjc2> I recognise the name of the reporter.. an acquaintance from caving at Cambridge! 07:32 < peterbrett> brb folks, we're off for lunch 07:32 < cnieves> see you! 07:33 < cnieves> pcjc2: the world is small! :) 07:38 < peterbrett> right, pcjc2 is assembling food 07:38 < peterbrett> So I've come back to talk 07:39 < cnieves> :) 07:39 < peterbrett> cnieves: If we were switching to a different VCS, is there any particular ones you like/don't like? 07:41 < cnieves> don't have any preference 07:42 < cnieves> My wish list is: easy to use, powerful (specially when moving/renaming), and don't need net access to manage small commits locally, being able to commit a set of them later. 07:42 < peterbrett> So, not CVS then ;) 07:42 < cnieves> right! :) 07:56 < cnieves> pcjc2: could you update bug #1700444? (I think your last commit fixes it) 07:57 < pcjc2> I filed that after the patch 07:57 < pcjc2> it doesn't fix it 07:58 < cnieves> ok 07:58 < peterbrett> cnieves: I carefully wrote my commit message in "nice" format 07:58 < peterbrett> And you screwed it up :( 07:58 < peterbrett> http://repo.or.cz/w/geda-gaf.git?a=commit;h=f693b0a793e92c7208d3cfe655f641c6994018bf 08:01 < cnieves> Sorry. I tried to keep it "nice"... how would you prefer it? (I know it's too late for this one, but not for the next ones) 08:01 < peterbrett> One (short) line summary, one line gap, detailed explanation 08:02 < peterbrett> It means when you have a view like http://repo.or.cz/w/geda-gaf.git?a=shortlog;h=f693b0a793e92c7208d3cfe655f641c6994018bf it's easy to see what's going on 08:03 < peterbrett> So stuff like the patch submitter's name, the files affected etc should go in the detailed explanation (which should be as long as necessary) 08:04 < cnieves> ok. I'll try to make the description shorter next time (and put the one line gap afterwards, I didn't know this was needed) 08:04 < peterbrett> It's not needed, but it helps (I think of it as the "title" of the patch) 08:04 < pcjc2> I'll look into fixing #170044 08:04 < peterbrett> And I write it as if I was writing the Subject: field of an e-mail 08:05 < cnieves> ok 08:05 < cnieves> (I'm new to the git stuff, so be kind ;) ) 08:05 < peterbrett> Sorry 08:06 < peterbrett> Actually, one of my biggest grievances at the moment is ChangeLog files 08:06 < pcjc2> I still fail to write most of my commit messages in that format - its not just you 08:06 < peterbrett> Which I like to whinge about to anyone who I can persuade to listen ;) 08:07 < cnieves> there should be some specification like: first line should be no longer than ... characters (and the commit program checking that, of course)... 08:08 < peterbrett> yes, there should 08:09 < peterbrett> But actually, if we did switch to git, there wouldn't **be** a commit program 08:09 < peterbrett> Because you'd commit locally, and then other people would "pull" your changes from you 08:09 < cnieves> * cnieves still learning git 08:10 < cnieves> if you have some spare time, you can try new attribute autoplacement code (still disable by default) 08:12 < cnieves> (look for "Autoplace component/net/buses text attributes hook" in system-gschemrc) 08:13 < pcjc2> will do in a bit - just drilling into #170044 08:13 < pcjc2> (Digs down and hits a can of worms) 08:13 < cnieves> take care they don't bite you! ;) 08:13 < pcjc2> in m_basic.c, the function "visible" " 08:13 < pcjc2> * This function checks if a given bounding box is visible on the screen." 08:14 < pcjc2> it doesn't specify what the guaranteed, or expected semantics of the function are. It tries lots of permutations of clipping 08:15 < peterbrett> cnieves: Sorry for not helping, I'm busy writing http://www.geda.seul.org/wiki/geda:version_control_migration 08:15 < cnieves> don't know about that one, sorry. I'm going off for lunch. 08:15 < peterbrett> Okay, see you later 08:16 < cnieves> see you! 08:40 < peterbrett> pcjc2: http://www.kroah.com/log/linux/free_drivers.html 09:02 < mcmahill> peter: you can complain to me since I didn't update the utils changelog yesterday when I touched about 25 files 09:05 < mcmahill> anyone know of a way to automatically generate the ChangeLog entry prior to the commit so it can be checked in at the same time? 09:05 < mcmahill> I'm not a fan of manually creating the entries because of the opportunity for error. 09:05 < peterbrett> Yeah, it's difficult 09:06 < peterbrett> I'm busy writing some proposals to change the way we do version control & change logging 09:06 < peterbrett> http://www.geda.seul.org/wiki/geda:version_control_migration 09:06 -!- sdb [~sdb@18.56.7.29] has joined #geda 09:06 < peterbrett> hi sdb 09:06 < sdb> Hi guys 09:06 < peterbrett> looks like we're getting going 09:06 < peterbrett> What's the situation in sunny MA? 09:06 < sdb> DJ and I are at MIT. 09:07 -!- ivan [~ivan@sdgate2.cvjetno.sczg.hr] has joined #geda 09:07 < peterbrett> pcjc2 & I are at his place 09:07 < sdb> It's sunny today ... the first time in many months 09:07 < peterbrett> ivan: hi there 09:07 < peterbrett> It's lovely and warm here 09:07 < ivan> hi 09:07 < sdb> Hi Peter! Hi Peter! How's the other Cambridge? 09:07 < sdb> Hi Ivan 09:07 < ivan> hi sdb 09:07 < pcjc2> Sunny out, looks like a lovely day 09:07 < peterbrett> Is Ales going to be joining us? 09:08 < peterbrett> sdb: http://www.geda.seul.org/wiki/geda:version_control_migration 09:09 < mcmahill> hi stuart, ivan 09:09 < ivan> hi Dan 09:09 < mcmahill> I'm only partially here today 09:09 < pcjc2> Fixed #170044, was a > < vs < > type thing 09:10 < pcjc2> Looks like it was in prior to the noscreen 09:10 < pcjc2> "top" is the smallest y coordinate numerically, and is infact the bottom of the screen in world coords. That fact has caused me no end of hastle. 09:11 < ivan> is there any plan on moving to a new source code control system? 09:12 < peterbrett> ivan: Yes, I'm trying to put together a good argument for moving to git 09:12 < peterbrett> http://repo.or.cz/w/geda-gaf.git 09:12 < ivan> yes, I saw that 09:12 < peterbrett> This is based on an export from CVS, but it has its problems 09:12 < peterbrett> e.g. the CVS exporter randomly dropped a commit last night 09:12 < peterbrett> I'm going to try and reinstate it at some point 09:13 < peterbrett> (probably this afternoon) 09:13 < pcjc2> I propose a global rename "left, top, right, bottom" to "xmin, ymin, xmax, ymax" 09:13 < ivan> I hope we'll make the move soon since CVS really can't compete with git or hg 09:14 < peterbrett> quite 09:14 < peterbrett> Do you have any preference as to which? 09:14 < peterbrett> I really like git 09:14 < peterbrett> It's very UNIX-y ;) 09:14 < pcjc2> Ivan: I've not put that patch in the tracker yet, sorry. Will do so asap 09:14 < ivan> well, I used hg extensively 09:15 < ivan> but I have no problem with git either 09:15 < ivan> git or hg, it doesn't really matter, as long as it's not CVS :) 09:15 < peterbrett> :) 09:21 < mcmahill> hmmm. looks like I need to add git to pkgsrc if there is any chance of us moving to it 09:22 -!- dj [~dj@WHITAKER-EIGHTY-EIGHT.MIT.EDU] has joined #geda 09:23 < peterbrett> mcmahill: It should compile pretty painlessly 09:23 < peterbrett> If there is pain, please let me know 09:27 < pcjc2> Ivan: I uploaded the patch, http://sourceforge.net/tracker/index.php?func=detail&aid=1704834&group_id=161080&atid=818428 09:27 < pcjc2> If anyone wants to review this patch before I commit, I'd appreciate it 09:27 < pcjc2> (When Ales arrives, I hope he'll read it) 09:33 < cnieves> hi everybody, and welcome those who arrived recently! :) 09:33 < peterbrett> wb cnieves 09:33 < dj> Beep! 09:33 < ivan> everyone, is there a coding style guide or something like that? what settings do you use for geda coding? 09:34 < peterbrett> I use Emacs' default C coding settings 09:34 < peterbrett> Generally, tabs == bad 09:34 < peterbrett> 2 spaces indentation 09:34 < pcjc2> The project is fairly agnostic towards coding style - but its nice to keep consistent with whatever file you edit 09:34 < ivan> that depends on the source file you're working on :) 09:35 * peterbrett was talking about C 09:35 < ivan> like in x_menus.c, there are 3 space indents 09:35 < pcjc2> I am just looking over the patch I posted... it has lots of white-space fixes 09:35 < peterbrett> ivan: But most importantly, no whitespace changes in patches! 09:35 * peterbrett glares at pcjc2 09:35 < ivan> LOL :) 09:36 < pcjc2> not generally great to combine those with real patches, but the functions didn't indent properly otherwise 09:36 < pcjc2> 3 space indents not good 09:36 < pcjc2> Ales doesn't mind us fixing white-space errors like tabs and indentation 09:37 < ivan> perhaps it should be useful to compile a set of small guidelines and then check all the sources for consistency? 09:37 < dj> the rule should be "what indent does" 09:38 < ivan> but what options would you pass to indent? 09:39 < peterbrett> --gnu :D :D :D 09:40 < ivan> alright, I'll keep that in mind when creating patches ;) 09:40 < peterbrett> It's most important that it is *clear* what is being changed 09:41 < pcjc2> you might find one sourcefile complies 09:41 < pcjc2> /dev/null 09:41 < peterbrett> *Read* your diffs. Try to make sure that you understand what you've done just by looking at the commit message & the diff. 09:42 < dj> Just "indent" - no options. It defaults to --gnu 09:43 < mcmahill> dj: depends on which indent you have 09:43 < pcjc2> PCB uses --gnu 09:43 < dj> Well, the gnu one ;-) 09:43 < Ales> the only coding standard is following the existing code standard 09:43 < pcjc2> but many of the gEDA people dislike its {} handling (speaking for me, and I think Ales) 09:43 < peterbrett> Ales!!!! 09:43 < dj> Which one? 09:44 < peterbrett> Ales: That's the MicroSoft argument. "But the source code **is** the documentation!" 09:44 < Ales> or do whatever emacs does 09:44 < mcmahill> I' m not a fan of gnu { }. I want the { to be on the same line as the if() but I can deal 09:44 < Ales> or I might just mandate use the gnu standard. 09:44 < Ales> either way, it's a religious discussion 09:45 < peterbrett> Ales: I think that what we've got at the moment works, so let's just potter along merrily 09:45 < pcjc2> Ales: My page_creation_cleanup.diff patch (now actually in the tracker) fixes bugs when creating pages 09:45 < Ales> I'm not sold on using git, unless somebody can quantify the bandwidth requirements 09:46 < Ales> I saw, lots of changes.. are those all code changes or just whitespace changes? 09:46 < pcjc2> but having re-read it, its not a particularly nice patch - it fixes lots of white-space bugs around the functions it touches 09:46 < pcjc2> stuff wasn't indented properly at all in many of those files 09:46 < Ales> okay, that's okay to fix 09:46 < pcjc2> The biggest chunk was majorly unreadable 09:46 < Ales> which chunk was that? 09:47 < pcjc2> in DEFINE_I_CALLBACK(hierarchy_down_schematic) 09:47 < pcjc2> a very long function started with: 09:47 < pcjc2> ); 09:47 < pcjc2> - if (object != NULL) { 09:47 < pcjc2> - /* only allow going into symbols */ 09:47 < pcjc2> - if (object->type == OBJ_COMPLEX) { 09:47 < pcjc2> · 09:47 < pcjc2> so two levels of indentation for the whole tihng 09:47 < pcjc2> I replaced with: 09:47 < pcjc2> + /* only allow going into symbols */ 09:47 < pcjc2> + if (object == NULL || object->type != OBJ_COMPLEX) 09:47 < pcjc2> + return; 09:47 < pcjc2> and dropped some indentation for readability 09:48 < pcjc2> which is at least partly why it looks like that function has a lot of changes 09:48 < Ales> yeah, that looks fine 09:48 < pcjc2> I think I'll review it again with Meld, as the diff is a pain to read in this case 09:49 < peterbrett> Ales, each initial checkout ~17.5 MB 09:49 < Ales> ouch 09:49 < peterbrett> This includes the entire history 09:50 < Ales> git is pretty darn different than cvs 09:50 < Ales> svn is far close to cvs 09:50 < peterbrett> Don't forget that after that the updates are really small 09:50 < Ales> hmmm 09:50 < peterbrett> Especially if you're running git-daemon 09:50 < peterbrett> Plus, you have the bonus of not having the server hammered when someone wants to run blame on a file 09:51 < peterbrett> Or get log history 09:51 < Ales> true 09:51 < peterbrett> Ales: If we use git, we should make nightly tarballs available 09:51 < Ales> that 17.5MB will grow as the history groes 09:51 < Ales> why? 09:51 < peterbrett> Ales: yes 09:51 < Ales> I'm trying to reduce bandwidth, not increase it 09:52 < peterbrett> Ales: Oh yeah, good point 09:52 < peterbrett> Then we shouldn't ;) 09:52 < Ales> but why should we do tarballs? what's the advantage? 09:52 < peterbrett> I was thinking that people who don't want to do development could use them 09:53 < peterbrett> But then I realized that was a stupid suggestions 09:53 < peterbrett> s/s$// 09:53 < mcmahill> argh! 09:53 < peterbrett> ? 09:54 < mcmahill> stupid git build system !#*$*&# 09:54 < peterbrett> what's it done? 09:54 < Ales> you are building git? 09:54 < mcmahill> peter: hard codes CC=gcc, and I suspect it is downhill from there... 09:54 < mcmahill> Ales: tried, failed. 09:54 < peterbrett> Um, do CC=cc make 09:54 < Ales> hmmm. 09:54 < mcmahill> I'll see if it can be fixed 09:56 < mcmahill> it redefines wcwidth 09:57 < peterbrett> Is that a problem? 09:57 < Ales> how much effort did the git developers put into getting it to run everywhere? 09:58 < mcmahill> it causes a compile error 09:58 < mcmahill> Please look at the 09:58 < mcmahill> top of the Makefile to see what can be adjusted for your needs. 09:58 < Ales> why aren't they using autotools? 09:58 < peterbrett> They don't like autotools 09:58 < peterbrett> mcmahill: What system are you trying compile it on? 09:59 < Ales> I bet it's either netbsd or solaris 09:59 < Ales> more likely solaris :) 09:59 < mcmahill> yes, netbsd 09:59 < Ales> ah darn 09:59 < mcmahill> no, my solaris box is busy building firefox2... 10:00 < mcmahill> anyway, I gotta run out for a bit. I'll beat on git a bit later 10:00 < Ales> dan: let me know what you think of it 10:00 < peterbrett> mcmahill: http://www.gelato.unsw.edu.au/archives/git/0511/12077.html 10:00 < peterbrett> Ales: mercurial is also an option 10:00 < mcmahill> there is a prototype for wcwidth in /usr/include/wchar.h that conflicts with the one that git has 10:01 < Ales> what about w32, does git run there? 10:01 < ivan> mercurial does 10:01 < peterbrett> http://en.wikipedia.org/wiki/Git_(software)#Portability 10:02 < ivan> as for git on w32, I wouldn't want to try that 10:02 < peterbrett> It runs in Cygwin (I had an interesting e-mail conversation with Linus about getting that to work, since Windows is missing fork() ) 10:03 < peterbrett> http://marc.info/?l=git&m=114131099531633 10:08 < cnieves> Ales: in gschem, when you hit help->manual, a page is open in a browser. How is this page created? release time? could it be a wiki page (or at least inside the wiki directory)? 10:09 < Ales> gschemdoc is called and that launches the web browser 10:09 < cnieves> I know. I mean the page itself. 10:10 < Ales> which page? 10:10 < Ales> the url? 10:10 < cnieves> ~/geda/share/doc/geda-doc/gedadocs.html 10:12 < Ales> that path is baked into gschemdoc at configure time 10:12 < Ales> based on the prefix 10:13 < cnieves> I was applying PeterB's patches (help menus,..). I keep the help->manual behaviour as it was before (because you mention you'd prefer to wait until the UG is improved, and gsch2pcb tutorial is on the wiki). PeterB added a scheme function to call gschemdoc -w (to open a wiki page), and then removed the old help-manual function. 10:13 < peterbrett> mcmahill: http://www.gelato.unsw.edu.au/archives/git/0511/12077.html 10:14 < Ales> yes, I would like to maintain the old behavior until all the docs are in the wiki 10:14 < cnieves> We can get rid of that function if we add another help-manual scheme function, or put gedadocs.html inside the wiki 10:14 < cnieves> (inside the wiki directory, I mean), so it can be opened with gschem -w 10:14 < peterbrett> mcmahill: ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/devel/scmgit/README.html 10:15 < cnieves> Ales: I didn't apply PeterB's #5 (move gschemdoc inside gschem/scripts) because we will lost cvs history. Can you do something regarding that? 10:15 < peterbrett> cnieves: Move to a VCS that supports renames :P 10:16 < Ales> what do you mean you lost cvs history? 10:16 < dj> dan: arbitrary rotations. There are two patches; one that does too little and one that does too much. 10:16 < Ales> yes like subversion. :) 10:16 < peterbrett> Ales: Subversion is just CVS with changesets 10:16 < dj> And dirt-cheap branches. 10:16 < dj> And checkout-branch-by-timestamp 10:17 < Ales> and runs everywhere 10:17 < dj> and versionable renames 10:17 < peterbrett> dj: And doesn't track merges 10:17 < dj> ah, but merges are atomic 10:17 < cnieves> Ales: That patch moved gschemdoc.sh from utils/scripts to gschem/scripts. if I remove utils/scripts/gschemdoc.sh, and then add gschem/scripts/gschemdoc.sh, we will lost gschemdoc.sh's history 10:17 < peterbrett> dj: it doesn't track merges 10:17 < dj> Ah, but merges are atomic 10:17 < peterbrett> dj: That has nothing to do with it! 10:18 < Ales> carlos: I think that's okay 10:18 < Ales> the history of the old gschemdoc.sh is still in cvs 10:18 < dj> Well, you repeated yourself without adding more facts, so I repeated my response. If you want a better response, you have to ask a better question. 10:18 < peterbrett> "Merge tracking describes whether a system remembers what changes have been merged between which branches and only merges the changes that are missing when merging one branch into another." 10:18 < dj> Ah, you want sablime. 10:18 < cnieves> Ales: ok. what about gedadocs.html? 10:19 < peterbrett> Also, SVN doesn't support me having 5 different branches which I'm currently working on but don't want to export to everyone 10:19 < Ales> 5 checkouts? 10:19 < dj> sure it does. 10:20 < peterbrett> Ales: No, 5 branches. In the same repository, which I can switch between. Without needing network connectivity. 10:20 < dj> You need the local svn cache package 10:20 < dj> Then you can build up a patch set and merge it back to the main repository later. 10:20 < Ales> carlos: what about gedadocs.html? I want to keep using it. 10:20 < peterbrett> dj: Does it do patch reordering? 10:20 < dj> (we really should read the gcc discussions on all this before proceeding, this is all old news to me) 10:20 < pcjc2> Carlos: Your latest fix was in my patch 10:21 < pcjc2> also, it doesn't _gaurantee_ there aren't other ways of closing that dialog 10:21 < dj> I don't know the details, I just know there's a local repository option. 10:21 < cnieves> ales: what about moving gedadocs.html inside the wiki directory? 10:22 < Ales> Carlos: i'd rather not do that, since I want to get rid of it at some point 10:22 < Ales> I don't want to reogranize the wiki 10:22 < pcjc2> the fix should be: + if (response != GTK_RESPONSE_YES ) 10:22 < pcjc2> + return; 10:22 < pcjc2> it is two lines, and says explicitly what we want 10:22 < cnieves> pcjc2: go and change it 10:23 < cnieves> ales: you don't need to reorganize, just move a file from one directory to another. Am I missing something? 10:24 < pcjc2> Carlos: I don't want to start a patch war over it, but if you're happy, I will change it 10:24 < peterbrett> dj: http://wiki.freebsd.org/GitConversion 10:24 < dj> Is this a code sprint or a repository reorganization sprint? 10:24 < cnieves> pcjc2: yup 10:24 < peterbrett> dj: Yes. 10:24 < pcjc2> I can't remember for sure, but I believe there are many ways of quitting out of the dialog, and it is a pain to have to catch all the -ve cases specifically - safer just to catch the +ve response in this case 10:27 < pcjc2> (Just refreshing my checkout - was working on the original patch) 10:27 < pcjc2> I agree that its a good idea to fix that in a separate changelog item though, as it is a separate fix 10:27 < cnieves> ok 10:27 < Ales> where do we stand on the locale.h fix? 10:28 < pcjc2> I think the cause is understood 10:28 < pcjc2> but I've not written the autoconf magic to fix it 10:28 < Ales> okay, I like the autoconf magic to fix it. :) 10:28 < pcjc2> we can't rely on gettext defining the HAVE_LOCALE_H macro for us, we need to test ourselves. 10:29 < pcjc2> If we don't have it, the choice is, build with --disable-nls 10:29 < dj> dan: step 1, allow non-90 pre-existing pads. 10:29 < Ales> sounds good 10:29 < pcjc2> I think the most obvious fix, is to test, hard fail if not compiled with --disable-nls, but suggest that it is an option 10:30 < Ales> ok 10:37 -!- rikster [~rik@c-24-20-231-15.hsd1.mn.comcast.net] has joined #geda 10:49 < pcjc2> Carlos: changed it in CVS, thanks - sorry to nit-pick 10:50 < cnieves> pcjc2: no problem 10:50 -!- sdb [~sdb@18.56.7.29] has quit [Ping timeout: 633 seconds] 10:53 -!- sdb [~sdb@18.56.7.29] has joined #geda 10:53 < sdb> Here I am 10:53 < sdb> the Ethernet cable popped out since I broke the tab on the connector 10:54 < cnieves> hi Stuart, welcome back 10:56 < sdb> Hi! 10:56 < pcjc2> I'm going to look into the locale.h automagic 10:58 < Ales> I'm fixing the gnetlist tests to work with distcheck 10:58 < pcjc2> dan: in gattrib and gschem, there is a file under include "gettext.h" 10:59 < pcjc2> "/* Convenience header for conditional use of GNU ." 10:59 < pcjc2> Did this feature in your compile warnings for gattrib? 10:59 < pcjc2> lots of sub specific stuff 11:00 < peterbrett> Ales: I don't think that should be in gEDA... :-/ 11:00 < Ales> the Makefile.am in utils/tests/refdes_renum/outputs needed to be updated to get rid of the colon too 11:00 < Ales> I'll do that 11:00 < pcjc2> s\sub\sun\ 11:00 < Ales> peterb: huh? 11:00 < pcjc2> scrolling back, I see dan isn't about 11:01 < peterbrett> Ales: {gschem,gattrib}/include/gettext.h 11:01 < pcjc2> was looking to see what "gettext.h" in gschem/include/" was for 11:01 < Ales> okay, is there a better approach? 11:02 < pcjc2> I hadn't worked out what it was for yet, just wanted to see if it had featured in dan's investigation of re-defined function warnings 11:02 < Ales> if so, I'm okay with removing the file and reusing a system include, but it has to work with and without gettext 11:02 < peterbrett> According to the info pages for gettext, we should just #include 11:03 < Ales> ok 11:03 < sdb> I just looked into gattrib/include, and yes, there is a gettext.h in there. 11:03 < sdb> Ummmm I don't know what it is for. Maybe Dan put it in. 11:04 < sdb> The question is: Are you worried that it interferes with the system gettext stuff? 11:04 < peterbrett> Apparently it's to make it easy to disable gettext if desired 11:04 -!- dj [~dj@WHITAKER-EIGHTY-EIGHT.MIT.EDU] has quit [Quit: Leaving] 11:04 < peterbrett> Ooh, dj has disappeared 11:04 < Ales> dj is rebooting into windows 11:04 < sdb> DJ left since he's booting two windows *shudder* 11:04 < sdb> I had to avert my eyes 11:04 < peterbrett> dj: I hope you've put him into quarantine ;) 11:04 < Igor2> :> 11:04 < sdb> dj needs to check something on anther gerber viewer!! 11:05 < peterbrett> Which one? 11:05 < sdb> (That was DJ on my machine) 11:05 < sdb> He wants to use GVPrevue 11:05 < sdb> He wants to use GCPrevue 11:05 < peterbrett> Sure 11:05 < pcjc2> http://www.gnu.org/software/gettext/manual/html_node/lib_002fgettext_002eh.html 11:05 < peterbrett> It's pretty good 11:05 < pcjc2> Looks like it is the recommended way of including gettext - its worth checking that its correct and up-to-date though 11:13 < cnieves> sdb: I'm setting the alternative button order for gtk dialogs. Would you mind if I add two of them in gattrib/src/x_fileselect.c ? 11:14 < pcjc2> Is gattrib/src/x_fileselect.c up-to-date with gschem's 11:14 < pcjc2> There was divergence at one point, but I can't remember if it was fixed 11:15 < cnieves> what needed to be fixed? 11:17 -!- dj [~dj@18.56.7.23] has joined #geda 11:17 < peterbrett> dj: wb 11:17 < sdb> cnieves: Please go ahead! 11:17 < pcjc2> I'm not sure anything. It moved to using the new GTK dialogs, didn't it 11:17 < dj> gerbv is broken, had to check gcpreview to make sure. 11:18 < peterbrett> sdb: Is there any chance you could fix gattrib not to 'Just Close' when you hit the close window decoration? 11:21 < pcjc2> bit of history.... what is geda/graphman/* ? 11:21 < pcjc2> (he looks, wondering which packages need the locale.h fix) 11:22 < Ales> graphman was some sort of interface to one of the waveform views 11:22 < Ales> geda/* does not need any fix. 11:22 < pcjc2> ok 11:22 < Ales> I will be removing it and setup out of gaf 11:22 < pcjc2> sounds good 11:28 * peterbrett files two bug reports against gattrib 11:29 < sdb> Peter -- That's fine. You want it to just ask first, right? 11:29 < peterbrett> Yep 11:30 < peterbrett> But only if the spreadsheet has changed 11:30 < sdb> Yea, that the behavior if you select "file -> quit" from the menu. 11:31 < pcjc2> I'm not seeing where the --disable-nls logic comes from here.. but I need the test for locale.h to use it 11:34 < peterbrett> sdb: surely it should be handled by the same code? 11:43 < pcjc2> Ales: RE. Locale.h, something appears to have changed on my box.. I can't reproduce the original bug 11:44 < pcjc2> Its compiling fine, inspite of no locale.h being included by us explicitly 11:44 < Ales> peter: oops. :( 11:44 < Ales> we should still do the fix though 11:44 < pcjc2> some other header is probably pulling it in 11:44 < sdb> Peter, I may be allowing GTK to handle the callback from the window decoration. 11:44 < sdb> I need to look. 11:44 < pcjc2> sure - its just harder to ensure it is really fixed.. working on it though 11:46 < rikster> Guidance needed: slotted components and refdes_renum 11:46 < rikster> There is an outstanding ToDo in the gEDA wiki to have any of the various 11:46 < rikster> refdes tools handle slotted components. 11:46 < rikster> As part of the last code sprint I wrote an improved refdes tool and uploaded it to SourceForge. My question today is whether I should modify that script to also handle slotted components. 11:46 < rikster> The issue is that all of the current tools are line-oriented and just use regular expressions to update the refdes field. In order to handle slotted components the program will have to have an understanding of instantiation structure, be able to parse the symbol search tree, and be able to add slot= attributes to the schematic. Is this a sufficiently cool feature that I should spend several hours on it or should I look for quicker bugs? 11:49 < peterbrett> rikster: Don't forget there is no way it could currently work properly with hierarchical schematics 11:50 < Igor2> !define geda-cvs 11:50 < jmp> >Igor2> [1/1] geda-cvs: http://www.geda.seul.org/developer.html 11:50 < Igor2> time to compile 11:50 < peterbrett> Igor2: :) 11:50 < peterbrett> Igor2: See you next week :P 11:50 < Igor2> off for the weekend? :) 11:50 < Igor2> ahh, ok, i got it now :) 11:51 < Igor2> no, i have an 1.7 ghz server at the department 11:51 < Igor2> i'll compile for i386 and i586 there :> 11:51 < rikster> Is that the general case, that none of the refdes tools work with hierarchical schematics? 11:52 < peterbrett> It's because we've got no way currently of overriding attributes set in schematics lower in the hierarchy on an instance-by-instance basis 11:52 < cnieves> I added a gtk call to set the alternative button order for other systems. Gschem and gattrib should look now like any other gtk app, changing the button order depending on the operating system the user is running. I also updated http://geda.seul.org/wiki/geda:devel-tips to show how to do this, and updated the dialog template. 11:53 < peterbrett> All hail Carlos! 11:53 < Igor2> omg, a full wiki mirror 11:53 < Igor2> i see that 40 gb disk will be full soon :> 11:53 < peterbrett> Igor2: Indeed. It's been in there for a while :/ 11:53 < cnieves> So, if anyone adds a new dialog, _please_ add that line after creating the dialog 11:53 < peterbrett> o-\-< 11:54 < peterbrett> o-/-< 11:54 < Igor2> :> 11:54 < peterbrett> o-\-< 11:54 < Igor2> o-&-< - after a bike accident :) 11:55 < cnieves> Reminder: attribute autoplacing stuff is now in cvs. If you want to play with them, check system-gschemrc. 11:56 < cnieves> Ales: can we get rid of libgd and make libgeda compile with gdk-pixbuf by default? 11:56 -!- dj [~dj@18.56.7.23] has quit [Ping timeout: 633 seconds] 11:56 < pcjc2> Ales: locale.h 11:56 < pcjc2> you would not believe it 11:56 < pcjc2> I've got HAVE_LOCALE_H explicitly undefined 11:56 < pcjc2> yet gschem still manages to compile ok 11:56 < pcjc2> turns out... 11:57 < pcjc2> that if you pass "-g" to gcc, then somehow, don't ask me why or how, locale.h gets pulled in 11:57 < pcjc2> without us asking for it 11:57 < Igor2> mkdir: cannot create directory `/gEDA': Permission denied 11:57 < Igor2> strange 11:57 < Igor2> i've set prefix to /usr in the main Makefile 11:58 < rikster> So none of the refdes tools will work with hierarchical designs. Is the fraction of designs that use don't use hierarchy in this way large? 11:58 < rikster> If most designs don't use hierarchy then perhaps the feature is still worthwhile 11:58 < peterbrett> I like hierarchy :( 11:59 < peterbrett> Although you make a good point 11:59 < peterbrett> I htink the biggest problem is that you **can't** support hierarchical annotation/back-annotation without breaking backward-compatibility 12:00 < rikster> Wasn't a Google Summer of Code person going to add support for hierarchical annotation? 12:01 < pcjc2> sure, although it was only a suggestion 12:01 * Igor2 kills the ones who invented autotools 12:01 < pcjc2> There are some works in progress on design ideas, and such which pave the way 12:02 < peterbrett> rikster: There's an ongoing Cunning Plan, as pcjc2 says ;) 12:03 < rikster> I think it sounds best to hold off implementing anything until an approach to hierarchy is adopted. Bonus: I get to procrastinate on coding :) 12:03 < peterbrett> Does anyone mind me putting emacs mode magic into system-gschemrc? 12:04 -!- dj [~dj@WHITAKER-TWO-FIFTY-EIGHT.MIT.EDU] has joined #geda 12:08 < pcjc2> rikster: don't hold off any development waiting for things which might never happen 12:08 < Igor2> hi dj! 12:08 < dj> network seems flakey today. Stuart got timed out, then me. 12:09 < pcjc2> Whilst there may be some ideas floating about, I _definitely_ don't want to suggest holding off features 12:10 < pcjc2> What language is your refdes renumbering tool in? 12:10 < rikster> perl 12:11 < pcjc2> ah - so my next suggestion.... that it should be done by pulling in libgeda isn't fantastic then ;) 12:11 < pcjc2> libgeda knows how to read the files necessary, so you can ask it to delve into the right file and pull out the needed slot attributes 12:12 < pcjc2> but there is little point writing a libgeda binding for perl, just to do so 12:13 < Igor2> (write binding for GPMI and then it will have for perl, python, guile, tcl, ruby, lua, php, bash, pascal, lisp...) 12:13 < rikster> What kind of bindings already exist? 12:13 < rikster> just C? 12:13 < pcjc2> libgeda needs cleaning before we write bindings to it, but in principle yes 12:13 < pcjc2> just C (which isn't a binding of course) 12:13 < pcjc2> internally, it can use scheme, so there is some guile stuff inside it 12:14 < pcjc2> What information do you need from a schematic..? For each component, you have to delve into its symbol, and look for slot attributes? 12:14 < rikster> That's right. 12:16 < pcjc2> I wounder if some command line util which links against libgeda, takes a filename, and returns some text (for the toplevel attributes) would be useful for scripting with 12:16 < pcjc2> something like geda-symbol-attribs my_multi_slot_opamp.sym 12:17 < Ales> Carlos: go ahead and remove libgd dependancy and checking 12:17 < pcjc2> which could print all the attributes out line by line, on a "NAME = VALUE" basis, for further script based processing 12:17 < pcjc2> woo 12:17 < Igor2> great, i get tons of unresolved symbols when compiling cvs version of gschem :) 12:17 < cnieves> rikster: I made "save" the default response of the save page dialog. You should be able to just type the filename and hit enter. (Implementing your FR). Please test 12:17 < pcjc2> (woo: relating to loss of libgd - thats a lot of code to remove) 12:18 < cnieves> Ales: ok. 12:18 < pcjc2> Igor: What symbols? 12:18 < Igor2> geda/gaf/gschem/src/g_register.c:330: undefined reference to `scm_c_define_gsubr' 12:18 < Igor2> mostly scm_c_define* 12:18 < rikster> Thanks, cnieves. I've got to get some breakfast soon(West coast) but I'll try to test that out today. 12:18 < peterbrett> Ales: I can't work out how to bind Page Up & Page Down keys 12:18 < cnieves> pcjc2: not at all: the first stage is to make libgd not the default. Removing libgd code can be done in the next release if there is no problem reported. 12:19 < Igor2> or rather scm* 12:19 < pcjc2> ah, but laters there can be much code shortening 12:19 < Ales> carlos: that's a good plan 12:19 < Igor2> /usr/lib/libgeda.so: undefined reference to `scm_puts' 12:19 < cnieves> igor: do you have libguile-dev installed? 12:19 < rikster> At least for Perl, it is possible to write inline calls to C pretty easily. Perhaps I can link against libgeda and just use C routines. 12:19 < Igor2> yup 12:19 < Igor2> libguile1.8-dev 12:20 < peterbrett> Ales: I've tried both "PageUp" & "PgUp" and neither seem to work 12:20 < pcjc2> just be warned... libgeda is a moving target, so if your inline calls to C require compilation, it needs to keep in sync with the CVS releases 12:20 < peterbrett> Ah 12:21 < peterbrett> It's "Prior" & "Next" 12:21 < peterbrett> But that's not totally intuitive 12:21 < pcjc2> or does it use dlopen etc..? 12:21 < Igor2> so, any idea? :) 12:22 < peterbrett> GAH 12:22 < Igor2> these are the -ls: 12:22 < Igor2> -lgeda -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lX11 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lSM -lICE -lX11 12:22 < Igor2> isn't -lguile something missing? 12:22 < Ales> Peter: Page_Up and Page_Down 12:22 < peterbrett> Ales: Thanks 12:23 < peterbrett> Ales: (where did you find that, BTW?) 12:23 < pcjc2> Igor: hmm... looks like 12:23 < pcjc2> perhaps its not picking up the link flags from libgeda 12:23 < pcjc2> did you make install ok from libgeda? 12:23 < Ales> enabled this in (g_key.c): 12:23 < Ales> #if DEBUG 12:23 < Ales> printf("_%s_\n", guile_string); 12:23 < Ales> #endif 12:23 < Ales> and observed the keyname 12:23 < Igor2> i did make install from the main dir as README suggested :> 12:23 < Ales> cheated. :) 12:24 < peterbrett> Ales: Clearly :) 12:24 < Igor2> ok, installed libgeda by hand, no visible error message 12:25 < rikster> Just checked Perl docs some more and I only need to link against libgeda and presumably that interface isn't changing as fast as the CVS releases 12:25 < pcjc2> Igor: did it help gschem? 12:25 < Igor2> just trying, now everything gets recompiled there 12:25 < Igor2> with -O2 12:25 < Igor2> takes time even on 1.7 ghz :) 12:26 < pcjc2> no, but for each release, structures in libgeda can change 12:26 < Igor2> same errors 12:26 < pcjc2> rikster: so if you rely on finding some element of, say the "ATTRIB" or "OBJECT" structure at byte-offset 4, for example, that could change from release to release 12:27 < pcjc2> Igor: I'll look to see where I get guile included frmo 12:27 < pcjc2> from 12:27 < Igor2> guile-config 12:27 < Igor2> it returns 12:27 < Igor2> -lguile -lltdl -lgmp -lcrypt -lm -lltdl 12:27 < Igor2> but adding those doesn't help 12:28 < rikster> Perhaps I need to take a look at libgeda more closely. Are there getter methods that effectively implement data encapsulation so I don't need to know the byte offsets of structures? 12:28 < pcjc2> I have guile 1.6.8, so I can't verify its not a break in compatibility with guile-1.8 12:28 < Igor2> ok... downgrading :) 12:31 < Igor2> ok, less error 12:32 < Igor2> now issuing make clean, configure and make again 12:33 < pcjc2> odd... 12:33 < Igor2> is it enough if i do it in gschem? 12:33 < Igor2> or is libgeda affected as well? 12:33 < pcjc2> that scm_c_define_gsubr function is in both the 1.6 and 1.8 manuals for guile 12:33 < pcjc2> I'm not sure, to be honest 12:33 < Igor2> maybe you need more #include for 1.8? 12:34 < Igor2> maybe they are marcos in 1.8 and if you don't #include, they remain unresovled 12:34 < Igor2> yeah, i need to recompile libgeda as well 12:35 < Igor2> o_line_basic.c: In function 'o_line_image_write': 12:35 < Igor2> o_line_basic.c:1239: warning: unused variable 'y' 12:35 < Igor2> o_line_basic.c:1239: warning: unused variable 'x' 12:35 < Igor2> :) 12:36 < rikster> cnieves: Just tested the patch for hitting return in a save dialog box. It works fine, BUT 12:36 < Igor2> >pcjc2> are patches fixing those kind of warnings welcome? 12:37 < rikster> I'm now getting this warning message on the command line repeated three times:Gtk-CRITICAL **: gtk_box_reorder_child: assertion `GTK_IS_WIDGET (child)' failed 12:37 < peterbrett> Igor2: Um, yes, they're welcome, but I haven't seen any of those and I've been compiling it lots recently 8-) 12:37 < peterbrett> or even :-O 12:38 < pcjc2> I'm attempting to reproruce 12:38 < Igor2> ok, make clean once again in gschem 12:38 < Igor2> meanwhile packing, need to go home soon :) 12:38 < pcjc2> its probably a libgd dependant thing 12:38 < Igor2> maybe i have too new version of libgd as well? :> 12:39 < cnieves> rikster: I'm not sure it is related with the fix.... 12:39 < peterbrett> cnieves: your hacks to gschemdoc.sh have broken 05-move-gschemdoc.patch 12:39 < pcjc2> if you don't have libgd, it uses a different mechanism to write the PNG file 12:39 < peterbrett> cnieves: So if we decide to apply at a later date it'll need to be recreated 12:39 < cnieves> peterbrett: only the gschemdoc.sh file. 12:40 < Igor2> ok, i have tons of scm shit again 12:40 < Igor2> so i go home ;) 12:40 < pcjc2> I'd not worry about fixing the undefined variables 12:40 < pcjc2> its a 12:40 < pcjc2> ' 12:40 < cnieves> peterbrett: gschemdoc can be moved now. It is still missing #4. 12:40 < Igor2> anyway yeah, i don't have libgd :) 12:41 < Igor2> now i'm off, bbl 12:41 < pcjc2> bah! layer 8 keyboard error! - If libgd support is being phased out, the code will go anyway - no need to patch it in the mean time 12:41 < peterbrett> cnieves: yes, I know, I'm just rebasing them locally :) 12:41 < pcjc2> Igor: bye! 12:41 < cnieves> bye Igor 12:43 < rikster> m cnieves if the new gtk warnings are unrelated then go ahead and mark my feature request resolved. Thanks for the quick turn. 12:45 < rikster> m rikster hello 12:45 < cnieves> rikster: I would like to know what are those warnings about... 12:46 < cnieves> what gtk are you using? 12:48 < peterbrett> Is it allowed to have multiple keys bound to a single function in gschem? 12:48 < Ales> I think so 12:48 < rikster> m cnieves gtk+-2.10.9 12:49 < Ales> yes, absolutely 12:50 < peterbrett> And which one sets the key shown in the menus? 12:50 < peterbrett> The first one set, or the most recent one? 12:50 < cnieves> rikster: I'm using 2.10.11, and I see no warnings when I hit "file->save as". What are the steps you follow to reproduce it? 12:54 < rikster> m cnieves steps to reproduce: Open existing schematic, make a change, file->save as, warning is produced when dialog box is opened 12:54 * rikster is away: time for breakfast. Back in 30. 12:55 < Ales> peter: last one 12:55 < cnieves> rikster: in gschem/src/x_fileselect.c: around line 240 (function x_fileselect_save), comment out the lines between #if GTK_CHECK_VERSION(2,6,0) and its #endif. Recompile, and check again, please. 13:04 < pcjc2> Ales: locale.h issue: Index: configure.ac.in 13:04 < pcjc2> =================================================================== 13:04 < pcjc2> RCS file: /home/cvspsrv/cvsroot/eda/geda/gaf/gschem/configure.ac.in,v 13:04 < pcjc2> retrieving revision 1.7 13:04 < pcjc2> diff -U3 -p -r1.7 configure.ac.in 13:04 < pcjc2> --- configure.ac.in 17 Apr 2007 20:19:14 -0000 1.7 13:04 < pcjc2> +++ configure.ac.in 21 Apr 2007 16:56:37 -0000 13:04 < pcjc2> @@ -392,6 +392,18 @@ AC_HEADER_DIRENT 13:04 < pcjc2> AC_CHECK_HEADERS(unistd.h string.h stdlib.h \ 13:04 < pcjc2> stdarg.h assert.h fcntl.h errno.h sys/param.h) 13:04 < pcjc2> 13:04 < pcjc2> +# Check for locale.h 13:04 < pcjc2> + 13:04 < pcjc2> +# Set USE_NLS 13:04 < pcjc2> +AM_NLS 13:04 < pcjc2> +AC_CHECK_HEADER([locale.h], 13:04 < pcjc2> + [AC_DEFINE([HAVE_LOCALE_H], 1, [Define if you have locale.h])], 13:04 < pcjc2> + [ 13:04 < pcjc2> + if test "$USE_NLS" == "yes"; then 13:04 < pcjc2> + AC_MSG_ERROR([Cannot find useful locale.h, and nls support is enabled. Try compiling with --disable-nls]) 13:04 < pcjc2> + fi 13:04 < pcjc2> + ]) 13:04 < pcjc2> + 13:04 < pcjc2> # Checks for typedefs, structures, and compiler characteristics. 13:04 < pcjc2> AC_C_CONST 13:04 < pcjc2> bah 13:04 < pcjc2> sorry 13:04 < pcjc2> that was supposed to be the pastebin URL! 13:04 < pcjc2> http://www.pastebin.ca/451553 13:04 < Ales> dj's pc was beeping like mad here 13:04 < cnieves> mine too! 13:04 < peterbrett> Yay pastebomb 13:04 < Ales> he has it setup to beep on any irc activity 13:05 < cnieves> Warning: terrorist alert!! Action: kill pcjc2... 13:05 < pcjc2> pcjc2: goes to hide somewhere 13:05 < sdb> Hey -- Does anybody have any SPICE schematics they would like to share? 13:06 < Ales> peter: looks good 13:06 < sdb> I am building a spice-sdb test suite and want to include some typcial 13:06 < peterbrett> Ales: Which peter? 13:06 < sdb> SPICE-able schematics for regression testing. In particular, if people 13:06 < sdb> have schematics wiht slotted parts and stuff like that, I'd like to use them. 13:07 < sdb> Just let me know, or e-mail them to me. 13:08 < peterbrett> If anyone fancies committing the patch I just sent to the list, feel free 13:09 < peterbrett> Ales: We really need to do something about those ChangeLog's 13:10 < Ales> what's wrong with the changelogs? 13:10 < peterbrett> They're often a cause of race conditions between committers 13:11 < peterbrett> They also cause a HUGE number of merge conflicts 13:11 < peterbrett> In fact, they're one of the things that makes merging large branches so difficult 13:11 < peterbrett> Ask pcjc2 ;) 13:11 < peterbrett> Can't we do like PCB does and use cvs2cl.pl to generate the ChangeLog files? 13:12 < dj> No, you can't. Really. 13:12 < pcjc2> how comes? 13:12 < peterbrett> dj @( 13:12 < dj> You don't get as good a quality CL entry that way. 13:12 < pcjc2> Editing the log is a real pain.. merge tastic when bringing in the branches 13:13 < pcjc2> There is no reason we can't use a decent message in the CVS commit log 13:13 < peterbrett> dj: But people should be putting good quality log messages into the CVS log anyway!!! 13:13 < Ales> I like what dj is about to say 13:14 < pcjc2> The one problem I see is that you can't tell it which "module" the ChangeLog message belongs to 13:14 < dj> Here's what we should do... Edit the ChangeLog and commit it with the patch. Use a copy of the CL entry (minus tabs and timestamp) as the cvs commit message. 13:14 < dj> That way, you can "cvs log" the ChangeLog to find patches. 13:14 < peterbrett> dj: GAHH NO !!!! 13:14 < dj> cvs2cl screws up the cvs history in the ChangeLog file. 13:14 < peterbrett> That's **horrible brokenness** 13:14 < Ales> that's how we have been operating for the last 9 years 13:15 < dj> gcc and binutils do it that way too. 13:15 < pcjc2> dj: speaking of gcc, can I change the subject a second.... 13:15 < dj> and cygwin, newlib, gdb, and cgen. 13:15 < Ales> I've never been a changelog or commit message bastard 13:15 < dj> too late, second's up. 13:15 < Ales> :) 13:15 < pcjc2> why... does adding "-g" bring "locale.h" in, when without "-g", it doesn't 13:16 < pcjc2> (This was for gschem.c, which has a #ifdef on locale.h, and it wasn't being met appropriately. When compiled with -g, the preprocessor pulled in locale.h, and got on with it anyway) 13:17 < cnieves> peterbrett: patch comitted. Thanks! (I couldn't use ">" or "<" either) 13:17 < peterbrett> dj: my main objection to your proposal for commit log message format is that when browsing history with a "short log" format like this, http://repo.or.cz/w/geda-gaf.git?a=shortlog , you'd just get a list of filenames. 13:17 < peterbrett> Which isn't useful at all 13:18 < dj> Well, then don't use git. 13:18 < peterbrett> Also, when people inevitably forget to write the commit message, you randomly get entire patch sets missing from your search 13:19 < Ales> people better not be forgetting to add a commit message 13:19 < dj> cvsweb doesn't have problems with gnu-standard changelog entries as cvs commit messages. 13:19 < peterbrett> (I mean, forget to update the ChangeLog in the same commit) 13:19 < dj> cvs doesn't tie them anyway, so no loss there. 13:19 < cnieves> I've been using (or trying to) use commit logs friendly to git, while keeping the current rule 13:19 < dj> locale.h: my config.,h has #define HAVE_LOCALE_H 1 13:21 < Ales> I don't have that in my config.h 13:21 < rikster> j #geda 13:22 * rikster is back 13:22 < pcjc2> dj: that HAVE_LOCALE_H may be coming from somewhere else, in gettext 13:23 < pcjc2> but we can't rely on it unless we ask for it specifically. (Gettext keeps changing and breaking things) 13:23 < rikster> m cnieves Your suggestion to comment out the #ifdef stuff worked. The FR is 100% implemented for me at this point. 13:26 < peterbrett> cnieves: Is #1553483 fixed in CVS? 13:27 < cnieves> rikster: Then it's not related with your FR. Something is not working. Could you please check: https://sourceforge.net/tracker/index.php?func=detail&aid=1553483&group_id=161080&atid=818426 and run the test program there? 13:27 < cnieves> peterbrett: I thought so, but rikster has found some GTK warnings I don't like. 13:27 < peterbrett> kk 13:32 < pcjc2> Carlos: Your last commit I think causes issues for compiling with libgd 13:32 < cnieves> why? 13:32 < pcjc2> The variables you removed are needed for libgd, I guess the bug (if really worth fixing) is the variable definitions should be inside the #ifdef LIBGD block) 13:33 < cnieves> oh, you are right! 13:34 < cnieves> need to revert that! 13:34 < pcjc2> do you have the diff of the commit? If not, I can update my git-tracking thingy, and produce a reverse patch quite easily 13:35 < Igor2> back 13:35 < sdb> PeterB -- I just fixed the Gattrib bug where it would close without checking if hte user 13:36 < Igor2> any news for me? :) 13:36 * peterbrett dances 13:36 < sdb> hit the X window decoration. Please feel free to check it. 13:36 < peterbrett> Igor2: Any news for us? 13:36 < Igor2> :> 13:36 < peterbrett> sdb: Don't worry, I trust you ;) 13:36 < Igor2> i haven't crashed into cars! :) 13:36 < Igor2> ok,so i should install that libgd now, right? 13:36 < pcjc2> its not needed 13:36 < Igor2> then what should i do to get it working? :) 13:36 < pcjc2> just you get a few unused variable warnings if you use the alternative 13:36 < Igor2> no, it's not that 13:37 < pcjc2> Guile is the problem on your machine by the sounds of it 13:37 < Igor2> it's still the unresolved scm* 13:37 < Ales> speaking of warnings... there are a bunch in libgeda and gschem now 13:37 < Igor2> currently downgraded to 1.6 13:37 < sdb> PeterB: Trust but verify, I gnerally say. But I'll go ahead and close the bug report on SF. 13:37 < Ales> are those intentional or accidental? Most of them are due to unused variables 13:37 < pcjc2> how about posting a config.log for gschem and / or libgeda 13:37 < Igor2> i have make clean and ./configur both in libgeda and gschem after downgrade 13:37 < Igor2> ok 13:37 < peterbrett> pcb people: 13:37 < pcjc2> Ales: accidental - but Carlos fixed them (and is now about to "fix them back" ;)) 13:37 < Ales> okay 13:37 < pcjc2> If you compile without libgd, there were unused variables 13:38 -!- jpd [~jpd@66.109.213.29] has joined #geda 13:38 < pcjc2> They need to be made conditional 13:38 < Ales> Hi John (?) 13:38 < jpd> Hi 13:38 < cnieves> hi Hohn 13:38 < peterbrett> dj: http://pastebin.ca/451595 13:39 < cnieves> s/Hohn/John sorry! 13:39 < jpd> Hello folks. 13:39 < peterbrett> dj: This is in CVS checkout 13:39 < peterbrett> hi jpd 13:39 < Igor2> >pcjc2> http://inno.bme.hu/~igor2/tmp/config.log.libgeda 13:39 < Igor2> >pcjc2> http://inno.bme.hu/~igor2/tmp/config.log.gschem 13:39 < dj> cvs update -d 13:40 < peterbrett> dj: d'oh 13:40 < peterbrett> dj: I hate CVS :( 13:40 < dj> subversion handles new directories properly. 13:40 < dj> and removes them when you go back in time, too. 13:40 < pcjc2> Carlos: a patch of the remove variables commit is at www2.eng.cam.ac.uk/~pcjc2/geda/removed_variables.diff 13:41 < cnieves> pcjc2: thank you! I've just reverted the patch, and I'm about to #ifdef the variables. 13:41 < peterbrett> We were just commenting that this is one of the most active sprints we've seen 13:42 < dj> EVERYONE TYPE FASTER! 13:42 < peterbrett> Also, I'm thinking of getting myself a copy of the IPC footprint document 13:43 < pcjc2> Carlos: Looking at those functions, I doubt that any of the code is actually needed for non-libgd, so other than the function shell, the #ifdef may as well span the whole function 13:43 < rikster> m cnieves Okay, I think I've found the problem. In the lines beginning at 240 there are callouts to gtk_response_no, gtk_response_ok, and gtk_response_help. 13:44 < rikster> m cnieves None of these are defined in the original call to setup the dialog box which is just above this. 13:44 < Ales> rikster: what's with the "m" in front of your messages? 13:45 < rikster> Dang, I was trying to just send a private message about this stuff to cnieves but my irc tool isn't interpreting m to be msg. 13:45 < Ales> okay 13:45 < Ales> glad you haven't been complaining about us then. :-) 13:45 < cnieves> pcjc2: could be. But I have the patch ready. 13:46 < rikster> msg cnieves I commented out the callouts and added the one for gtk_response_accept and it now doesn't generate any messages 13:47 < Ales> that didn't work either 13:47 < Ales> try /msg cnieves :) 13:47 < rikster> Aarrghh 13:50 < peterbrett> Someone asked for single keystrokes to increase/decrease grid size in gschem (#1443637) 13:50 < cnieves> it's in cvs since a long time... 13:50 < peterbrett> cnieves: O RLY? RFE still open 13:51 * peterbrett closes it 13:51 -!- Levente [~Levente@levente.obudanet.hu] has joined #geda 13:51 < cnieves> isn't there a comment to the submitter to test that? 13:51 < cnieves> hi Levente 13:51 < Levente> Hi all! 13:51 < Ales> Hi Levente 13:51 < peterbrett> cnieves: it would be nicer to have it as '[' & ']' 13:52 < sdb> Hi Levente 13:52 < Levente> Hi Stuart 13:52 < peterbrett> cnieves: And I notice these are not currently used 13:52 < cnieves> peterbrett: I have no preference 13:52 < peterbrett> cool, I'll change it then 13:53 < cnieves> nice. Why don't you ask for write access to Ales? 13:53 < peterbrett> Ales: CVS commit access pls 13:56 -!- rikster [~rik@c-24-20-231-15.hsd1.mn.comcast.net] has quit [Quit: thanks for all the good tools.] 13:59 < Igor2> hi Levente :) 13:59 < Levente> hi Igor2 :) How things goin'? 13:59 < Igor2> fine, thanx, how are you? :) 13:59 < Igor2> do you participate in critical mass tomorrow? 14:00 < Levente> I'm okay too... Yes, sure! So we can see each other? Maybe we can talk HA there? 14:00 < Levente> :-) 14:01 < Igor2> yeah :) 14:01 < Levente> Btw, I try to hack a bit on my grenum thing. 14:01 < Igor2> i will pick up Mikko at the uni at 3 pm 14:02 < Igor2> (Mikko is a guest student from Finland, we managed to get him a bike:) 14:02 < Levente> I'm gonna get there around 3:30 14:02 < Igor2> then we will meet with some other guys at Arpad hid's pest end 14:02 < Igor2> at around 4:00 14:02 < Levente> I live close there.... Buda end... 14:03 < Igor2> then we could meet at Arpad hid/buda between 3:30 and 4:00? 14:03 < Levente> Okay, that is good! 14:03 < Igor2> ok, how do we recognise eachothers? :) 14:04 < Igor2> (don't say you wil have a bike - everyone will have one around that time:) 14:04 < Levente> You know, I'm gonna come with a bike 14:04 < Igor2> ahh, i knew, i knew! :>>> 14:04 < Levente> okay... sorry... 14:04 < Levente> a blue one.... 14:04 < Igor2> will you be alone? 14:04 < Levente> I don't know yet.... 14:05 < Igor2> i will have a colorful bike (red/green/blue with a black/yellow bag) and Mikko has a green mountain bike 14:05 < Levente> If you give me your cellphone number, I can ring you... 14:05 < Igor2> i do not have a cellphone :) 14:05 < Levente> Okay... 14:07 < sdb> Levent, Igor, where is your critical mass? 14:07 < sdb> We have it in San Francisco, New York, and here in Boston. 14:08 < Igor2> Budapest 14:08 < Igor2> about 30k participants are expected iirc 14:08 < sdb> Cool! 14:08 < pcjc2> Ales: Shall I get on with the patch for the gdk_keyval_name segfault? 14:08 -!- pcjc2 [~pcjc2@ACD423A9.ipt.aol.com] has left #geda [] 14:09 -!- pcjc2 [~pcjc2@ACD423A9.ipt.aol.com] has joined #geda 14:10 < mcmahill> Ales? 14:11 < Ales> Hi dan 14:11 < Ales> peterC: please 14:11 < dj> Hi dan! 14:11 < Ales> I never got around to writing that patch up, so getting that in would be great! 14:11 < mcmahill> what was the failure on distcheck? 14:12 < mcmahill> I'm sure I can fix it 14:12 < Ales> I think it can't find one of the scripts 14:12 < Ales> just run make distcheck 14:12 < mcmahill> ok. I'll take a look 14:12 < peterbrett> cnieves: I changed the keybindings, and unfortunately the keystrokes now appear as 'bracketleft' & 'bracketright' 14:12 < peterbrett> which is quite lame 14:12 < Ales> if you don't have time I am going to have to fix it, since Stuart reused your testing framework for some spice-sdb tests 14:14 < mcmahill> oh, I see part of the problem. 14:14 < mcmahill> when I renamed a bunch of files to get rid of ":" I forgot to update Makefile.am... 14:14 < Ales> I fixed that already 14:14 < Ales> lemme commit that 14:14 < mcmahill> oh. ok. 14:14 < mcmahill> yeah, check that in and I'll see whats next. 14:15 < mcmahill> hi DJ. I saw you added some diagonal pad support. That should be popular 14:16 < cnieves> peterbrett: do you mean in the menu? that's not nice... 14:16 < peterbrett> Yes 14:16 < peterbrett> But not using those keys would suck 14:16 < Ales> done 14:18 < mcmahill> I suspect I left out an environment setting which is needed when building outside the source tree. 14:18 < mcmahill> but since I reused the framework from something else that I know works with distcheck I'm sure whatever the issue is it won't be hard 14:19 < Ales> yeah, that's my guess as well 14:20 < peterbrett> Oh yeah 14:21 < peterbrett> that reminds me 14:21 < peterbrett> Do any make gurus know how to fix multithreaded make for geda? 14:21 < peterbrett> Bug #1701813 14:29 < Ales> you have to setup the dependancies manually and then it might work 14:31 < Ales> is it worth it, probably not since we don't have that many parts 14:32 < dj> dan: yeah, but it's not as easy as you'd think. 14:33 < dj> IsPointInPolygon() doesn't actually do that any more :-P 14:33 < mcmahill> because of the clipper or because the large number of places where assumptions are made that everything is on 90 deg increments? 14:34 < dj> Because polygons are checked based on the polyareas, not the original point lists. 14:34 < dj> so I can't just create a polygon for diagonal pads and use the existing primitives. 14:34 < mcmahill> I guess I'm not up on how the polygons actually work 14:34 < dj> Me neither, hence the problem. 14:35 < mcmahill> hey, I never assumed diagonal pads were easy ;) 14:37 < mcmahill> its not really geda related, but a few nights ago my son and I searched for "lego" on youtube and found some pretty cool lego movies 14:37 < mcmahill> they ranged from some animation stuff to videos of way cool lego creations 14:37 < mcmahill> there was a factory built of legos that robotically assembled small lego cars 14:38 < peterbrett> Is there a length-safed equivalent of strstr? 14:39 < peterbrett> ...or maybe there doesn't need to be one 14:39 < dj> I keep trying to talk Jason into a project: build a large lego model, and remove the parts one at a time - taking a picture after each step. Then stitch the photos together backwards to make a movie of the model being built 14:39 < dj> memcmp ? 14:39 < dj> strnstr? 14:39 < dj> libiberty might have a strnstr if it's not portable enough. 14:40 < peterbrett> strnstr doesn't exist... but we've determined that it's safe anyway 14:40 < mcmahill> autom4te: cannot create autom4te.cache: Permission denied 14:40 < mcmahill> this is wierd. 14:41 < mcmahill> I ran autogen.sh just 15 minutes ago and it was fine 14:41 < dj> ls -la ? 14:41 < Igor2> >pcjc2> i've installed libgd, made clean in both dirs, ran ./configure, make, make install in lib than in gschem 14:42 < Igor2> and i get the same scm errors at linking 14:42 < mcmahill> oh, wierd. Nuking the leftover directory from a failed 'make distcheck' fixed it 14:44 < mcmahill> ales: the distcheck problem is because srcdir is exported to the test environment but not top_srcdir. I'm testing a fix and will commit if it works 14:44 < pcjc2> Igor: sorry, haven't gone over the log file yet... will do now 14:44 < Igor2> ok :) 14:45 < Igor2> i can remove libgd to reproduce the previous setup (for which you have the logs) 14:45 < pcjc2> its not a problem 14:45 < Igor2> ok 14:45 < cnieves> pcjc2: warning: libgd is no longer used by default, if you are using the latest cvs. 14:47 < peterbrett> http://www.peter-b.co.uk/htdocs/gEDA/optionsmenu.png 14:48 < peterbrett> Does this look okay? It binds the grid increment/decrement functions to the [ ] keys 14:48 < Ales> Dan: great thanks. 14:48 < peterbrett> I mean http://www.peter-b.co.uk/gEDA/optionsmenu.png 14:48 < peterbrett> Obviously 14:49 < Ales> that looks okay 14:50 < pcjc2> Igor: it appears GUILE_LDFLAGS is missing somewhere 14:50 < pcjc2> I'll try to see where it comes from 14:50 < Igor2> :) 14:52 < cnieves> sdb: I'm getting: (gattrib:6696): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkSheet' 14:52 < sdb> Carlos, what are you doign when you get that warning? 14:52 < cnieves> and a segfault when I click on the net tab... 14:52 < sdb> Oh oh... 14:52 < cnieves> just loaded a schematic, then loaded another one. 14:53 < cnieves> those schematics are not numbered, so maybe gattrib is going crazy... 14:53 < mcmahill> peter: that netbsd git patch didn't help. I'm wondering if it is due to it being a 64-bit box. I'll give it a shot on a 32-bit system first. 14:53 < cnieves> sdb: I mean refdes in the schematic 14:53 < sdb> Did you load hte first using file->load and the second using file->load? 14:54 < mcmahill> unfortunately the whole build system is based around operating system checks, not feature tests. 14:54 < cnieves> sdb: no, the first one was with the command line, the other using file->load 14:54 < sdb> OK. 14:54 < mcmahill> i.e. "if SunOS-5.9 then..." as opposed to "if HAS_SOME_FEATURE then ..." 14:54 < Ales> that's very 80s. :) 14:54 < cnieves> sdb: I recall gattrib needs a file with property names... I don't have any 14:56 < sdb> Carlos, when you say the schematics are not numbered, do you mean no refdeses on the schematics? 14:57 < sdb> Carlos, gattrib is supposed to check that there is at least one refdes on the schematic. 14:57 < peterbrett> mcmahill: It probably needs autoconfiscating 14:57 < sdb> Carlos, it's possible it checks only on the first read-in, and if the first schematic 14:57 < mcmahill> Ales: things should work now. 14:57 < sdb> is OK, then it doesn't check any more. If that's the case, and you have a non-numbered 14:58 < sdb> second schematic, I can see that gattrib might get horribly confused. 14:58 < sdb> Carlos, can you please file a bug on it> 14:58 < mcmahill> stuart, if you've copied over my run_tests.sh script, you may want to grab the minor changes I just checked in 14:58 < sdb> Carlos, can you please file a bug on it? 14:58 < mcmahill> biab 14:59 < sdb> Dan, thanks, but mine seems to work already. I wonder if my mods fixed something broken in 14:59 < sdb> yours? One problem in the refdes_renum test script is that it wants to use Perl 14:59 < cnieves> sdb: I mean all components have refdeses, but they are all R?, C?,... 15:00 < sdb> and that seemse to cause problems. 15:00 < sdb> Carlos, I'll have to see what gattrib does wiht components numbered R? C? and so on. 15:02 < cnieves> sdb: wow! I made it segfault again, with a segfault in the terminal looking like: 15:02 < cnieves> b74a0000-b75db000 r-xp 00000000 03:02 1885434 /lib/libc-2.5.so 15:02 < cnieves> b75db000-b75dc000 r--p 0013b000 03:02 1885434 /lib/libc-2.5.so 15:02 < cnieves> (many many lines). I didn't see that before! 15:02 < cnieves> I'll file a bug report 15:03 < sdb> Carlos, yes please file a bug report! Please include what you did to make it work. 15:03 < dj> ok, crude diagonal element support is in - pads can be diagonal, but no element rotation yet. 15:03 < sdb> I've been having good luck running gattrib today on normal schematics, so I need to know 15:03 < sdb> what will break it. 15:03 < peterbrett> right, food 15:06 < peterbrett> Ales: On the developers page on the website I'm the only one with a non-obfusticated e-mail address :( 15:06 < dj> And? 15:07 < peterbrett> dj: I would very much like some obfusticatization applied, please :D 15:07 < dj> ;-) 15:08 < cnieves> sdb: I see two components tabs. Should be only one? 15:08 -!- Igor2 [~igor2@catv-5062cea3.catv.broadband.hu] has quit [Quit: good night] 15:08 < peterbrett> Also, I'm having difficulty working out the right sequence of commands to login as an authenticated CVS user 15:08 < Ales> peterb: sorry! fixed. 15:08 < Ales> what is your CVSROOT set to? 15:09 < peterbrett> :pserver:peterb@cvs.seul.org:2401/home/cvspsrv/cvsroot 15:10 < Ales> get rid of the 2401 (shouldn't matter; cvs is running on the default port) 15:10 < Ales> okay 15:10 < Ales> did you run cvs login next? 15:13 -!- mike [~mike@mjarabek.customer.sentex.ca] has joined #geda 15:13 < cnieves> sdb: bug report filed. 15:13 < cnieves> hi mike 15:13 < peterbrett> Ales: PAM authenticate error: User not known to the underlying authentication module 15:13 < mike> Hi! 15:13 < Ales> okay 15:14 < Ales> I've never seen that error message before 15:14 < dj> "cvs -d login" ? 15:14 < Ales> hi Mike 15:14 < mike> Hi! 15:15 < mcmahill> stuart: it is also possible that your tests work differently enough to not matter 15:15 < mcmahill> do they work with 'make distcheck'? 15:18 < sdb> Dan: They work with distcheck. Ales and I checked that. 15:19 < sdb> Dan: They're pretty close to your tests. A big difference is that I am running 15:19 < sdb> gnetlist, and not perl, so I don't need to fool around with finding the path 15:19 < sdb> to perl. 15:19 < sdb> They run the local gnetlist which has just been built in the geda/gaf/gnetlist/src dir 15:20 < sdb> I checked all my stuff in, so you can look at it under gnetlist/tests/spice-sdb/ 15:20 < sdb> The files in there should look very familiar: run_tests.sh and tests.lits 15:20 < sdb> The files in there should look very familiar: run_tests.sh and tests.list 15:21 < sdb> I believe a big problem with distcheck is that it is sensitive to being 15:21 < sdb> position-independent in the filesystem. 15:26 < Ales> Dan: make distcheck in utils works. Thanks! 15:26 < corycrossq> Is it possible to add gschem-style keybindings to pcb? i.e. 'ed' to delete an element? 15:27 < mcmahill> sdb: actually I think thats one of the nice things about distcheck 15:27 < mcmahill> for example I've been building pcb with both gtk and lesstif hid's from the same source tree so its nice to know it all builds correctly outside of the source tree 15:27 < Ales> distcheck is awesome. :) particularly when tests are run. 15:28 < mcmahill> yeah. Its nice to catch files missing from the tarballs that way 15:28 < Ales> and when some file leaves garbage installed 15:29 < mcmahill> who all showed up at MIT? 15:29 < Ales> DJ, Stuart, JohnL, and myself 15:31 < Ales> o_box_basic.c: In function 'o_box_image_write': 15:31 < Ales> o_box_basic.c:1525: warning: unused variable 's_lower_y' 15:31 < Ales> ... 15:31 < dj> cory: you can with lesstif, I think even with Dan's gtk changes you're still limited to single key bindings. 15:31 < Ales> is that expected? 15:32 < Ales> and SteveM showed up... :) 15:32 < dj> you have to use "ed" instead of just 15:32 < cnieves> Ales: that's surely libgd->gdk-pixbuf variable which is not used now. Can you put it inside #ifdef HAVE_LIBGD (or something like this). 15:32 < Ales> sure 15:32 < Ales> I'll look at it once my build finishes 15:33 < Ales> thanks 15:33 < corycrossq> Thanks dj, is someone planning to add double bindings for gtk? 15:35 -!- Cesar [~Cesar@c9342d24.virtua.com.br] has joined #geda 15:35 < Cesar> Hello, all. 15:35 < cnieves> hi Cesar 15:36 < dj> Dan just added customization yesterday. One thing at a time. 15:36 < peterbrett> dj: Patience, young jedi. 15:36 < peterbrett> ;) 15:36 < Ales> Hi Cesar 15:37 < peterbrett> We get the feeling Patrick won't be joining the fun today 15:37 < sdb> Hi Cesar! 15:37 < pcjc2> I hope the whole noscreen / merging problem didn't annoy him too much though 15:38 < Ales> he hasn't said anything for a while. 15:38 < pcjc2> He mentioned a re-write at least once 15:38 < pcjc2> I expect he'll be back in touch when its finished ;) 15:39 < pcjc2> (I mean that in jest of course) 15:40 < Ales> Carlos: I like how the "Ok" button behaves in the component selection dialog 15:40 < Ales> that's pretty nifty 15:41 < cnieves> thanks! :) 15:42 < corycrossq> dj: I wasn't sure if was easily possible with gtk... but I'm working on enough other stuff without trying to take that on! 15:42 < dj> Well, with lesstif I ended up trapping the raw key events and processing them myself. I suppose the gtk code could reuse that. 15:43 < cnieves> one thing I would like in the component selector is to automatically expand the branches if there is only one component there, or to expand the branch is there is only one... 15:44 < cnieves> don't know if it is hard or not, though 15:44 < pcjc2> should be possible 15:44 < pcjc2> but GtkTreeView is evil stuff 15:44 < pcjc2> I was working on a custom model which is backed by libgeda data (for the page contents browser idea) 15:45 < pcjc2> turns out, it requires some quite specific signals to be sent for every model changee 15:45 < corycrossq> is there a way to set the default size of that window? or remember its last size? 15:45 < pcjc2> One thing I've found a pain with the component selector (apart from its default size, and the room allocated to the tree), is it not remembering / adjusting position intelligently as it filters 15:48 < Ales> I'm going to move the directories "geda" and "setup" now and see what happens 15:49 < Ales> yeah, everybody who has geda/gaf checkout should delete "geda" and "setup" 15:53 < Ales> reminder e-mail sent to geda-dev 15:53 * peterbrett sees to what extent this breaks git-cvsimport ;) 15:55 < Ales> oh sorry 15:55 < peterbrett> doesn't matter 15:55 < Ales> let me know if it breaks that too much and I'll put them back 15:55 < peterbrett> If necessary I'll just hack the commit 15:56 < Ales> I know how much you like git. :) 15:56 < peterbrett> ;) 15:56 < Ales> how bandwidth intenstive is the cvs <-> git sync? 15:56 < peterbrett> very little 15:57 < peterbrett> The expense is in cvs.seul.org's CPU time :P 15:57 < Ales> hmmm 15:57 < cnieves> I'm going. bye everybody! 15:57 < Ales> what if the git repository and the cvs repository were on the same machine? 15:57 < peterbrett> cnieves: Bye! 15:57 < pcjc2> bye carlos! 15:57 < cnieves> it was a nice day as always! 15:57 < cnieves> := 15:57 < Ales> see ya Carlos 15:57 < cnieves> :) 15:57 < Ales> thanks for all the checkins! 15:57 -!- cnieves [~cnieves@223.pool85-57-71.dynamic.orange.es] has quit [Quit: Abandonando] 15:57 < peterbrett> Ales: Then you could do a post-commit hook in CVS to update the git repo 15:57 < pcjc2> Lots of good coding today - perhaps the most active sprint yet? 15:58 < Ales> yup 15:58 < peterbrett> Alternatively, there's a git program that pretends to be CVS 15:58 < Ales> what about svn <-> git syncing? 15:58 < peterbrett> yes, that works too 15:58 < Ales> oh okay 15:58 < peterbrett> In fact, that works much better 15:58 < peterbrett> It's CVS --> SVN that's the really dodgy bit 15:59 < Ales> how cpu intensive would that svn <-> git sync be? 15:59 < peterbrett> Using git to pretend to be CVS? 15:59 < Ales> no, just keeping a git repository in sync with svn or cvs 15:59 < peterbrett> I'm afraid I don't know 16:00 < peterbrett> Also, yes, moving the history out has broken git 16:00 < Ales> do you want me to put it back? 16:00 < peterbrett> It still thinks setup & geda are present 16:00 < peterbrett> I can't get rid of it, because it'll break the import script 16:00 < Ales> I really want to toss them, the alternative is that I do do a cvs remove on all the files 16:01 < Ales> would that be okay? 16:01 < peterbrett> that'd work fine 16:01 < Ales> okay, I'll do that now 16:01 < peterbrett> Because there'd be a CVS commit git would pick up 16:01 < peterbrett> If the history's just removed, git never realizes they've gone 16:01 < Ales> okay, it's back... does git work okay now? 16:02 < Ales> ^it's^they are 16:02 < peterbrett> No difference, no point in even checking ;) 16:02 < Ales> okay, lemme remove all the files 16:02 < peterbrett> If you back up the rcs files, then cvs rm them, then reinstate the rcs files in the new home? 16:02 < peterbrett> Would that work? 16:02 < Ales> I'll just copy the directories instead of moving them 16:06 < pcjc2> Ales: http://www.pastebin.ca/451742 16:06 < pcjc2> just compiling to check 16:07 -!- Levente [~Levente@levente.obudanet.hu] has left #geda [Going to sleep] 16:07 < peterbrett> I can't believe how long `cvs diff` takes :( 16:10 < Ales> peter, I cvs remove'd setup and geda, so that shouldn't break git 16:10 < peterbrett> Thx, appreciate it 16:11 < pcjc2> In gschem, I've found: 16:11 < Ales> peterC: patch looks good 16:11 < pcjc2> x_dialog.c: In function ‘close_confirmation_dialog_constructor’: 16:11 < pcjc2> x_dialog.c:3857: warning: assignment discards qualifiers from pointer target type 16:11 < Ales> I will test once you commit it 16:11 < pcjc2> not related to my change, but there are a bug or two yet 16:11 < Ales> as I have a keyboard with 0x0 keysyms 16:11 < pcjc2> key_value rather than key_name by accident in a place or two 16:12 < pcjc2> I've got one two, so will get on 16:13 < pcjc2> Also: x_menus.c: In function ‘gettext_fn’: 16:13 < pcjc2> x_menus.c:241: warning: return discards qualifiers from pointer target type 16:13 < jpd> I believe I now have a gnetlist back end for Osmond PCB Design. 16:13 < pcjc2> are these from commits today? I don't recall seeing them before 16:14 < Ales> I don't recall seeing those either 16:14 < jpd> Sent a netlist to an Osmond user at MIT Kavli to test. 16:14 * peterbrett tests git-cvsimport 16:15 < jpd> Ales, I'll send it to you once it's tested. 16:15 < Ales> great thanks 16:17 -!- rikster [~rik@c-24-20-231-15.hsd1.mn.comcast.net] has joined #geda 16:18 < peterbrett> wb rikster 16:18 < peterbrett> Ales: You did cvs rm, then commit, didn't you? 16:19 < peterbrett> And you left the rcs files there? 16:19 < peterbrett> Or did you cvs rm, commit, then delete the rcs files? 16:20 < peterbrett> You need to have left the rcs files there long enough for me to run the tools! 16:20 < peterbrett> Then you can delete them. 16:22 < Ales> I did a cvs remove; cvs commit 16:22 < Ales> and left the rcs files there 16:22 < peterbrett> Wierd 16:22 < peterbrett> s/ie/ei/ 16:22 < Ales> the rcs files will always be there 16:24 < mcmahill> please, no removing of rcs files! 16:24 < Ales> no rcs files have been removed. :) 16:25 < mcmahill> unless someone checked in something which causes legal problems... 16:26 < peterbrett> I still get lots of "is no longer in the repository" stuff 16:26 < Ales> could somebody here run a cvs update -dP and make sure it completes okay 16:26 < peterbrett> (when I do cvs up -CdP) 16:28 < peterbrett> [peter@ptbb2b gaf]$ cvs log geda/src/window.h 16:28 < peterbrett> cvs [log aborted]: no such directory `geda/src' 16:28 < mcmahill> stuart? 16:28 < peterbrett> [peter@ptbb2b gaf]$ cvs rlog geda/src/window.h 16:28 < peterbrett> cvs rlog: cannot chdir to /home/cvspsrv/cvsroot/eda/geda/src: No such file or directory 16:30 < peterbrett> Ales, I think you broke it 16:30 < pcjc2> I'm about to check in the fix for gdk_keyvalue_name bug - is this a bad time? 16:31 < sdb> I just did a cvs update -d -P, and it worked fine for me. 16:31 < sdb> Dan, I'm here. What's up? 16:32 < mcmahill> I took a look at the spice-sdb tests. Turns out my bug is there and you introduced another and they cancel... 16:33 < mcmahill> Unless you object, I'm going to remove both bugs 16:33 < peterbrett> Ales: Sorry for blaming you, cvsps is a buggy PoC 16:33 < Ales> is it working now? 16:33 < peterbrett> Not certain, but I have made sure I can see history for the stuff you moved 16:34 < Ales> okay 16:34 < mcmahill> top_srcdir isn't being set correctly to top_srcdir (my fault), but thats good becuase you're using that to find the path to the compiled gnetlist which is also a bug 16:34 < sdb> Dan, what are the two bugs which canceled? And if you know what the problem is, 16:34 < dj> my cvs update seems to have worked correctly. 16:34 < sdb> how would you feel about fixing it in my stuff? :-) 16:34 < Ales> yeah, please fix, so I can steal the fix too for my stuff :) 16:35 < Ales> as I'm not running the newly built gnetlist in my tests (but rather just the installed one) 16:35 < Ales> which is wrong 16:35 < dj> Feel free to fix my stuff too ;-) 16:35 < sdb> Dan, I'll fix my stuff by copying what you do. Just let me know 16:35 < sdb> when you're done. 16:36 < Ales> PeterC: yeah, now was/is a good time to check stuff in 16:36 < pcjc2> done 16:36 < mcmahill> sdb: I fixed yours (I think). I'll check it in after I do a trial 'make distcheck' 16:36 < Ales> great thanks 16:37 < sdb> Dan, thanks!!! 16:37 < mcmahill> here's a question. 16:38 < mcmahill> for gentlist, do you think the backends are sufficiently different that we have to have a different run_tests.sh script for each? 16:38 < mcmahill> or could there be an extra field in tests.list which specifies the backend? 16:38 < sdb> Naw, they 16:38 < Ales> if it could be generalized, that'll be okay 16:38 < sdb> Naw, they're quite different. 16:39 < mcmahill> It seems like fundamentally all we do is 1) copy over some files 2) run gnetlist 3) check some files against outputs 16:39 < sdb> Ales and I differ on this one! 16:39 < mcmahill> oh, and maybe check gnetlists result code 16:39 < sdb> THere are also different flags to set, and they don't work the same on all 16:39 < mcmahill> but you make that a field 16:39 < sdb> backends. (At least spice-sdb is different) 16:40 < Ales> my mechanism was first! :) 16:40 < sdb> I'll let you and Ales decide. In my opinion (and limited experience), a test suite 16:41 < mcmahill> testname | files to copy | output files to check | return code | extra gnetlist flags 16:41 < sdb> always becomes grotesquely complicated and becomes hard to stuff into a generalized 16:41 < Ales> what if I have special diff flags? 16:41 < sdb> format. 16:41 < Ales> like I have for spice-sdb diffs. :) 16:41 < dj> pcb now has FreeRotateBuffer() :-) :-) 16:42 < corycrossq> woohoo! 16:42 < dj> Not sure how much of the rest of pcb will work with it though. 16:43 < peterbrett> lol 16:43 < peterbrett> Here's a new challenge for you dj 16:43 < peterbrett> Add a autofanout tool :D 16:43 < dj> still working on the old challenges 16:43 < peterbrett> ;) 16:43 < dj> You can put fanouts in the .fp file 16:43 < peterbrett> dj: Including via grid? 16:44 < peterbrett> dj: Won't it think they're pins? 16:45 < peterbrett> Ales: git repo ist gefixt! 16:45 < peterbrett> Ales: thanks for helping :D 16:46 < dj> Because of the way pcb loads footprints, you can include non-footprint data too, and it gets merged into the schematic. 16:46 < dj> There's a msp430 with jtag in the pcb library that shows this. 16:47 < Ales> peterb: cool. glad that I didn't break it too much. :) 16:50 < corycrossq> dj:did you checkin the FreeRotateBuffer? 16:50 < peterbrett> Ales: To be honest, trying to use git-cvsimport to track CVS is severe brokenness in itself. It's designed for a one-off approximate import 16:51 < mcmahill> stuart? 16:51 < mcmahill> whats the -I "gnetlist -g" part of the diff command for? 16:52 < pcjc2> Ales, can you confirm fixedness with the NULL keynames? 16:52 < mcmahill> -I is non standard 16:52 < mcmahill> oh wait... there is a comment saying why. duh 16:52 < sdb> -I is nonstandard, yes. -I is used by spice-sdb to insert a .include file 16:53 < dj> Yup, but it's not bound to any keys. You have to use ":FreeRotateBuffer(45)" for example. 16:53 < sdb> diretive instead of an entire file when you create a SPICE netlist. 16:53 < mcmahill> not to gnetlist, -I to the diff command 16:53 < mcmahill> but I see why. 16:53 < mcmahill> gnetlist puts in a full path to the command 16:53 < mcmahill> or at least the spice-sdb backend does 16:54 < mcmahill> but unfortunately diff on solaris doesn't understand -I. 16:54 < sdb> Ales says that the -I is his work. 16:54 < corycrossq> is this the right server for pcb? :pserver:anonymous@pcb.cvs.sourceforge.net:/cvsroot/pcb 16:54 < mcmahill> cory I think so 16:54 < Ales> Dan: how do you suggest we handle this then? 16:54 < corycrossq> thanks dan 16:55 < sdb> -I in gnu diff ignores a regexp 16:55 < mcmahill> use sed to eat that line or change /full/path/to/gnetlist to just gnetlist 16:55 < sdb> What's the equivalent in sun? 16:55 < mcmahill> there is none. 16:55 < mcmahill> solaris userland sucks 16:55 < Ales> use a different OS. :) 16:55 < sdb> Naw, don't use full path to gnetlist, since it will alwyas be different. 16:56 < Ales> peterc: yes, I'll test it out 16:56 < sdb> Dan, the -I is used to ignore the first line of any generated SPICe file. 16:57 < sdb> In spice-sdb, I used the first -- comment -- line to write out argv[0] for the 16:57 < sdb> user's convenience. 16:57 < sdb> The problem is that the golden files then have a position and system dependent comment line 16:58 < sdb> in the first line. We need a way to make diff ignore the first line. 16:58 < mcmahill> ok. I fixed it 16:58 < mcmahill> just verifying distcheck again before I check it in 17:00 < Ales> Dan: I'll update my stuff based on how you fixed yours 17:00 < mcmahill> ok 17:00 < dj> angled elements: drc, gerber, ps, eps all work. png needs the same square-pad code that gerber needed. 17:01 < jpd> Stuart, why not leave the first line off the golden files. 17:02 < jpd> Strip from test files with sed -e 1d or some such? 17:03 < corycrossq> dj: works for me (didn't know I had to add -P to my update) 17:03 < corycrossq> anything you want tested? 17:03 < dj> Er, everything ;-) 17:03 < dj> autoroute might be useful, and the optimizers. 17:05 < dj> http://www.delorie.com/tmp/tqfp-dip.html 17:05 < mcmahill> jpd: thats basically what I just did 17:05 < mcmahill> stripped off the offending line 17:06 < Ales> PeterC: keysym patch seems to work okay 17:06 < corycrossq> square pads of pins aren't rotate (didn't think they would be) 17:06 < dj> I think the HID has an option for specifying that, but we currently have no reference for determining the angle. 17:07 < dj> At least for square *pads* we know the angle. 17:07 < dj> OTOH octagon pins will work at 45's :-) 17:09 < sdb> Dan, did you modify run_tests to strip the first line from the golden files? 17:09 < sdb> I just ask since I would just like to run run_tests --regen to recreate 17:09 < sdb> everything. 17:09 < mcmahill> sdb: actually I just ignored those same lines 17:09 < mcmahill> but if you do --regen, that line will indeed be dropped 17:10 < mcmahill> it is checked in if you want to see 17:10 < mcmahill> Ales? 17:10 < mcmahill> cp -f $(SRCDIR)/gnetlistrc.vhdl $(BUILDDIR)/gnetlistrc 17:10 < mcmahill> that should probably be more like 17:10 < Ales> ... like? 17:11 < mcmahill> sed 's;@prefix@;${prefix};g' $(SRCDIR)/gnetlistrc.vhdl $(BUILDDIR)/gnetlistrc 17:11 < Ales> why? 17:11 < mcmahill> because otherwise it tries to find VHDL symbols in my home directory where the don't live 17:11 < mcmahill> and the tests fail 17:11 < Ales> it does? 17:11 < mcmahill> (component-library "${HOME}/geda/share/gEDA/sym/vhdl") 17:11 < Ales> crap yeah 17:11 < Ales> sorry 17:12 < mcmahill> ;) 17:12 < corycrossq> autoroute is giving errors 17:12 < mcmahill> no problem 17:12 < Ales> I will fix that 17:12 < mcmahill> thanks. 17:12 < corycrossq> I'll give some more details in a minute 17:12 < mcmahill> I have to get back to my bathroom wall before my wife catches me here... 17:13 < mcmahill> can't code with broken fingers ;) 17:13 < rikster> Since the last code sprint I submitted two tiny patches to SourceForge that improve printing. 17:13 < rikster> Any chance someone with CVS check-in authority could take a quick glance and finish off 1680214 and 1680168. 17:13 < Ales> hmmm, but ${prefix} isn't set to anything 17:13 < pcjc2> I've refreshed the patch for new page code (locally) to work round the fix already in CVS 17:14 < Ales> I will fix it so that it does the right thing 17:14 < Ales> the gnetlistrc.vhdl 17:14 < dj> We might have to ask Harry to fix the autorouter. 17:15 < sdb> corycrossq: mike should check those in since he's the gschem printing guru 17:15 < corycrossq> dj: I took a board I made before, and moved a 4-pin surface mount dip off to a blank area, and optimized with no errors 17:15 < sdb> corycrossq, if Mike doesn't do it after a few days (and we can bug him a little bit 17:15 < sdb> first) then I can do it. 17:15 < mike> Hi, lurking here.. I will look at 1680168. 17:16 < rikster> thanks mike 17:16 < corycrossq> then rotated 37 degrees, optimizing gives me a shorted net error 17:16 < mike> I think we should put orientation in there regardless. 17:16 < corycrossq> great 17:16 < mike> The old code emitted << setpage-orientation ...>> code when enabled. Telling the printer to rotate the page. 17:17 < peterbrett> Hmm, our internets seem to have disappeared 17:17 < mike> I fixed the output to rotate itself, making this redundant. 17:19 < corycrossq> dj: would you like me to send you a test case? 17:20 < pcjc2> brb... router is borked 17:21 < dj> If it's small, post an URL to it on geda-dev 17:23 -!- pcjc3 [~pcjc2@AC8FE131.ipt.aol.com] has joined #geda 17:23 < pcjc3> am I still here? 17:23 -!- peterbrett_ [~peter@AC8FE131.ipt.aol.com] has joined #geda 17:24 < peterbrett_> Hmm 17:24 < peterbrett_> Interesting 17:24 < pcjc3> will probably have to wait for our old IP to timeout before I can be pcjc2 again! 17:25 -!- swm_ [~swm@18.56.7.131] has joined #geda 17:26 < sdb> Hi Steve! 17:26 < swm_> Hi Stuart 17:26 < Ales> everybody is asking... what did you do with pcjc1 !?!!??!?!! 17:26 < pcjc3> Cambridge reserve "0", "1", "10", "100" etc... for important people 17:26 < pcjc3> There is no pcjc1 17:28 < Ales> really? wow. :) 17:28 -!- You're now known as Ales1 17:28 < Ales1> :) 17:28 < sdb> Better than being a zero 17:28 -!- dj is now known as dj0 17:28 -!- dj0 is now known as dj-1 17:28 < dj-1> Ha! 17:28 < sdb> Naw, I think Ales won (1). 17:29 < sdb> Ok, I'm leaving now. 17:29 < dj-1> On that happy note, time to wrap it up here 17:29 < peterbrett_> I'm going to be leaving here soon (it's almost 11 pm here) 17:29 < Ales1> yeah, it's time to move on... :( 17:29 < Ales1> this has been most successful. 17:29 < dj-1> Bye all! Have run with the rotated footprints :-) 17:29 < peterbrett_> Ales1: Yeah, it's been good 17:29 < peterbrett_> When's the next one? 17:29 < Ales1> 94 commit messages 17:30 -!- You're now known as Ales 17:30 < dj-1> Next sprint is slated for June, at my house again. No specific date yet. 17:30 < peterbrett_> 45 patchsets committed 17:30 -!- rikster [~rik@c-24-20-231-15.hsd1.mn.comcast.net] has quit [Quit: Thanks all. See ya in June.] 17:31 -!- peterbrett [~peter@ACD423A9.ipt.aol.com] has quit [Ping timeout: 620 seconds] 17:31 < Ales> have fun everybody, see ya around 17:31 -!- pcjc2 [~pcjc2@ACD423A9.ipt.aol.com] has quit [Ping timeout: 633 seconds] 17:31 < sdb> By everybody! Thanks for coming! 17:31 -!- sdb [~sdb@18.56.7.29] has quit [Quit: Leaving] 17:31 -!- dj-1 [~dj@WHITAKER-TWO-FIFTY-EIGHT.MIT.EDU] has quit [Quit: Leaving] 17:31 < swm_> bye 17:31 -!- swm_ [~swm@18.56.7.131] has quit [Quit: Leaving] 17:32 < Ales> I'll post the sprint log later tonight! 17:32 < pcjc3> Ales, if no objections, I'll commit the new page fix 17:32 < Ales> peter: go right ahead 17:33 < pcjc3> I've split out the white-space re-indenting fixes to o_undo.c to apply separately - keep things a tiny bit cleaner 17:33 < Ales> cool. later 17:35 < pcjc3> bye! 17:40 < mike> I fixed SF#1680214 for Rikster. 17:40 -!- peterbrett_ is now known as peterbrett 17:41 -!- pcjc3 is now known as pcjc2 17:41 < peterbrett> mike: Shall I close the bug? 17:42 < mike> It works for me, but you should verify that for yourself, in case I borked something. 17:42 < peterbrett> You've committed it? 17:43 < peterbrett> Can you comment on the tracker to that effect? I can't test it now, I'm about to leave 17:43 < peterbrett> Bye! 17:43 -!- peterbrett [~peter@AC8FE131.ipt.aol.com] has quit [Quit: Leaving] 17:55 -!- ivan [~ivan@sdgate2.cvjetno.sczg.hr] has quit [Quit: Leaving] 18:03 < mike> There, 1680168 is fixed too. 18:08 < mcmahill> cory? 18:08 < corycrossq> Yes? 18:09 < mcmahill> did DJ fix your bug with shorted nets and rotated components? 18:09 < corycrossq> Not to my knowledge, I brought it up right before he left 18:09 < mcmahill> ok. 18:10 < mcmahill> is there an easy way for me to grab that out of pastebin, or just cut and paste? 18:10 < corycrossq> Right above where you type in a comment, there is a raw link 18:11 < mcmahill> ah I see it. 18:11 < mcmahill> ok, this is related to rotated pads? 18:11 < corycrossq> Yes 18:11 -!- peterbrett [~peter@ptbb2b.girton.cam.ac.uk] has joined #geda 18:11 < mcmahill> ugh. 18:11 < mcmahill> I am not suprised 18:12 < mcmahill> not at all 18:12 < peterbrett> right, got home safely :) 18:12 < pcjc2> hello again 18:12 < mcmahill> I'll try to take a look "soon", but it promises to be somewhat involved 18:13 < mcmahill> are you at all familiar with that part of the code? 18:13 < corycrossq> I figured, no worries from me 18:13 < corycrossq> No 18:13 < peterbrett> context? 18:13 < mcmahill> pcb connection code 18:13 < peterbrett> ewww... 18:13 < corycrossq> and rotation 18:14 < mcmahill> basically there are a bunch of routines that do things like see if a circle and a rectangle touch or a rectangle and a rectangle or a line drawn with a circular aperture and a pad and ..... 18:14 < mcmahill> and on top of that the routines are supposed to be able to see in the 2 things in question would touch if you grew one by some number (the minimum drc gap) 18:15 < pcjc2> ewww... 18:15 < mcmahill> as you might imagine, there are many assumptions in that code about rotations (or rather lack thereof) 18:15 < pcjc2> ( I thought connection tracking code in gschem was complex - will be more so when I get round to the on-the-fly page / circuit netlist creation ) 18:16 < corycrossq> it assumes all smt pads are vertical or horizontal? 18:16 < mcmahill> in my mind, that part of the code could really use some good hooks for a thorough self test 18:16 < mcmahill> cory: yep. 18:16 < mcmahill> take for example 2 rectangular pads. 18:17 < mcmahill> the code currently first decides if the closest line is one perpendicular to one of the pads or it if is from the corners 18:17 < mcmahill> then it uses that result to calculate distance 18:17 < mcmahill> but if you have arbitrary rotations, that particular algorithm doesn't work 18:17 < mcmahill> don't get me wrong, I really want to see all that code fixed and working 18:18 < corycrossq> you start to get into a lot of computational complexity when you add in arbitrary rotations and shapes 18:19 < mcmahill> I wonder if it is really cpu complex or just for the person who has to think a lot about geometry 18:19 < mcmahill> there is a lot of room for errors in thinking 18:20 < mcmahill> like the case of 2 rectangles and checking if you'll get a short if you grow one by the drc minimum gap 18:20 < mcmahill> the old code used to just grow one pad into a larger rectangular pad 18:20 < mcmahill> works everywhere but at the corner where you actually increase a dimension by sqrt(2) too much... 18:21 < corycrossq> at least it's in a 'safe' direction 18:21 < mcmahill> no promises, but I do have an interest in fixing up that part of the code. I just can project when I might actually get it done 18:22 < mcmahill> there are some patches on SF which look like they address at least some of these issues too. 18:22 < mcmahill> I've been dragging my feet a little just because it will take a good bit to test it all out 18:22 < mcmahill> you know, I think my next project is going to be trying to make some of that code more unit testable 18:23 < mcmahill> then I can feel good about any improvements there. 18:23 < corycrossq> would make it a lot easier to develop that code 18:24 < mcmahill> biab 18:25 < corycrossq> I'm building a parts database/manager for work; in order to prevent having a new symbol for each part, I'll need to build a mapping function into gsch2pcb 18:26 < corycrossq> I think that's all the work I'll be able to contribute for a while, in addition to footprints and my footprint generator 18:26 < pcjc2> "all" 18:27 < pcjc2> sounds great to me 18:28 < pcjc2> Mike: Are now those patches are committed, is there anything we can close on the trackers? 18:33 < corycrossq> well, I certainly wouldn't mind cleaning up the footprint database, but one thing at a time... 18:54 < jpd> Supper time here in the Rockies, bye. 18:54 -!- jpd [~jpd@66.109.213.29] has quit [Quit: Disconnecting] 18:54 < mike> the patches are comitted 18:54 < mike> (Pizza is made and in the oven here in Waterloo.) 18:55 < pcjc2> which numbers want closing in the trackers? 18:56 < mike> 1680214 and 1680168, but they should be independently verified. 19:20 < mcmahill> cory, where do you work? 19:21 < corycrossq> Oh, I forgot gnetlist is the program I'd have to modify to add arbitary symbol->part mappings 19:21 < corycrossq> Small company in Seattle, Component Engineering 19:22 < corycrossq> They needed an engineer with CAD experience; they were using Eagle *shudder* my wrist still cringes from the mouse usage 19:23 < corycrossq> Will gnetlist be the favored netlister for a while? 19:23 < pcjc2> should be 19:23 < corycrossq> great 19:23 < mcmahill> My feeling is that gnetlist should always be. 19:23 < pcjc2> Steve Meier has a version (basically a fork) which does hierarchical buses 19:23 < mcmahill> but hopefully over the next year it will become much better than what we have now 19:24 < pcjc2> And there is gnetman (but I'm not sure it fits in the picture) 19:24 < mcmahill> gnetman is more geared to spice simulation for larger chip designs 19:24 < pcjc2> Peter B and myself have done / are doing some design work to improve the netlisting data-structures and that side of things 19:24 < pcjc2> (I'm hoping at some stage to make libgeda track "netlist" connectivity at least at a per-page level, on the fly. 19:25 < mcmahill> speaking of yours and peters work... 19:25 < pcjc2> This shouldn't affect the part->symbol mapping side of things 19:25 < pcjc2> yes.. 19:25 < mcmahill> did you guys have any thoughts about getting information back out of pcb? 19:25 < mcmahill> specifically in the dbus world? 19:25 < corycrossq> pcjc2: just the answer I was looking for :) thanks 19:26 < mcmahill> I've been wondering if there should just be some fd that actions which provide information can write to 19:26 < pcjc2> the DBus support I added to PCB supports an integer return code from every action 19:26 < pcjc2> but it is hard coded at 0 for now, as the actions don't return codes 19:26 < mcmahill> thats one thing which has bothered me for a while 19:26 < pcjc2> This is bad for things like asking PCB to file->open something, or to run an action script 19:26 < mcmahill> on one hand we have all these actions and can script many things 19:26 < mcmahill> but as you clearly know, you never know if anything worked 19:27 < mcmahill> and forget about asking for some data to come back 19:27 < pcjc2> I did hack a version which gave return values (to stdout), but the most immediate problem was just knowing the action had finished. DBus does that for us 19:27 < pcjc2> That was the problem in xgsch2pcb 19:27 < pcjc2> we used files on disk for output from PCB 19:28 < pcjc2> we make a backup copy of the PCB, ask PCB to save the current layout to disk 19:28 < pcjc2> then (when its finished saving), update the layout with xgsch2pcb, and ask PCB to reload it 19:28 < mcmahill> While I was framing my shower I was thinking that an action which simply tells you the minimum space between any copper in a design could be used to do a pretty good testsuite of the connection code 19:28 < pcjc2> assuming the units are suitably defined, that fits well with the current integer return value setup 19:29 < pcjc2> In some respects, the DBus interface I implemented was a half-way house 19:29 < mcmahill> you'd have a whole bunch of .fp or .pcb files each with some particular combination of things like two square pads, two circular pads, one each, etc) 19:29 < pcjc2> it has one method really, which takes a string, which PCB processes as an action 19:29 < mcmahill> then you'd have an actions script which would load each file, compute the minimum copper distance and write it out, and go to the next. 19:29 -!- peterbrett [~peter@ptbb2b.girton.cam.ac.uk] has quit [Ping timeout: 620 seconds] 19:29 < mcmahill> then you could compare that with the known correct answer 19:30 < pcjc2> I see the usefulness in terms of checking regressions 19:30 < mcmahill> this seems like a fairly easy way to really put that bit of code through some real tests. 19:30 < pcjc2> (Presumably the correct answer is computed with pen+paper, as the test files are designed) 19:30 < mcmahill> yes 19:30 < mcmahill> and in most of the cases I can think of, it is easy to calculate by hand 19:31 < pcjc2> It isn't too much code to script PCB via DBus in a language like Python 19:31 < mcmahill> like the 2 rectangular pads case 19:31 < pcjc2> hell, I believe you could do it with the command line tool "DBus-send" 19:31 < mcmahill> it is obvious to a human where the closest line is 19:31 < pcjc2> sorry, "dbus-send" 19:31 < mcmahill> I've actually wondered about pcb --listen 19:31 < mcmahill> not even do it via dbus 19:32 < pcjc2> just needs the output mechanism then 19:32 < mcmahill> just because it relies on nothing but the pcb core 19:32 < pcjc2> I originally wrote my output to stdout 19:32 < pcjc2> but that doesn't work so well, as PCB uses stdout too 19:32 < mcmahill> for the most part, pcb shouldnt' use stdout 19:32 < pcjc2> I did think of making PCB keep quiet on stdout (except return value), writing any debug stuff to stderr 19:32 < mcmahill> but I know there are a few places where it still does 19:33 < mcmahill> but thats why I was wondering about creating a FILE * which is for action output, one for action return code, and one for action error output 19:34 < mcmahill> then actions whch are supposed to tell you a value, can write to the output . 19:35 < mcmahill> what I may do is just implement this minimum space action (which would be useful anyway, you could find the minimum gap in your design) and give it some extra arguments that lets you log to a file or stdout 19:35 < mcmahill> anyway, back to the remodeling for a bit... 19:35 < mcmahill> oh, cory, that looks like cool stuff you guys do at work 19:37 < corycrossq> It's a really weird situation, actually. The bosses own 3 businesses and I'm mostly working on other stuff right now 19:37 < corycrossq> Controllers for wood pellet stoves, to be exact 19:37 < corycrossq> In addition to coding an inventory system (+ parts db) 19:38 < corycrossq> argh, at work I'm the only real programmer and I get to do all my work in Lisp and Python... you people and your C :) at least it isn't C++ 19:38 < corycrossq> pcjc2: can you point me in the right direction on where to modify gnetlist for the symbol->part mapping? 19:39 < pcjc2> dan: this is an example of poking a DBus action in PCB via the command line: 19:39 < pcjc2> dbus-send --session --dest=org.seul.geda.pcb --print-reply --type=method_call /org/seul/geda/pcb org.seul.geda.pcb.actions.ExecAction string:'foobar' array:string:'blah','foo' 19:39 < pcjc2> method return sender=:1.80 -> dest=:1.86 19:39 < pcjc2> (nasty hey!) 19:39 < pcjc2> Cory: will take a brief look now - but I'm not a great expert on gnetlist 19:40 < corycrossq> Thanks 19:40 < corycrossq> Looks like I might be writing some of it in guile 19:40 < pcjc2> Do you mean symbol->footprint mapping? 19:41 < pcjc2> (gEDA doesn't currently have any concept of a part) 19:42 < corycrossq> I'd be inventing that part 19:42 < pcjc2> The most promising place to look is under scheme/gnet-gsch2pcb.scm 19:42 < pcjc2> it defines how gnetlist outputs a PCB file from a netlist (as used in gsch2pcb) 19:42 < pcjc2> s/from a netlist/from a desing/ 19:43 < pcjc2> design (tired... typing going to pieces now) 19:43 < pcjc2> now this could do with an overhaul anyway 19:43 < pcjc2> It manually creates a PCB file, and has to "know" PCB's file format 19:44 < corycrossq> I think if I look in gattrib to see how it gets a list of all unique elements, that should be enough 19:44 < pcjc2> the "correct" way to do this is to produce a PCB action script, or contact a live running PCB instance - via a pipe, (or via DBus), and let PCB insert the components 19:44 < pcjc2> gattrib and gnetlist link against libgeda 19:44 < pcjc2> so in C, it is just a matter of traversing a linked list, and skipping objects of the wrong type 19:45 < pcjc2> "unique" elements I'm not sure of though 19:45 < pcjc2> inidentally, at last check, gsch2pcb doesn't handle slotted components well 19:45 < pcjc2> you can have refdes in PCB IC1a and IC1b, which it considers the same (IIRC) 19:46 < corycrossq> provided I do this halfway-well, it will replace that 19:46 < pcjc2> but gsch2pcb drops multiple footprints in the new schematic 19:46 < pcjc2> replace which bit? 19:47 < corycrossq> did I fully explain what I'm trying to do?: 19:47 < pcjc2> I got, parts and inventory db 19:47 < pcjc2> but perhaps not the full story 19:48 < corycrossq> well, for the mapping part, I want to be able to place a part ie "analog-comparator-1.sym" in gschem without any footprint or part information 19:48 < pcjc2> good 19:49 < corycrossq> if later add in, say, an AVR with a builtin comparator 19:49 < corycrossq> add in a mapping= attribute for the AVr processor 19:50 < pcjc2> Thats an intersting concept 19:50 < corycrossq> the program I'm writing reads the file in the mapping= attrib and builds the netlist to point to the proper pins on the processor 19:50 < pcjc2> I'm not sure I fully see the use case for it, though - as your output and connections would then be internal to the AVR 19:51 < pcjc2> I see the point entirely for generic sections of slotted components 19:51 < pcjc2> But usually, slotted components have all their pins mapped to pins on the "container" if you will 19:52 < pcjc2> (Perhaps excepting power pins, which are usually done as a separate symbol for the container anyway) 19:52 < corycrossq> if I begin drawing a schematic with the internal comparator, I then have to change the schematic if I later need those pins for something else 19:52 < pcjc2> true 19:52 < corycrossq> but after I draw the whole schematic up, then I can decide if I want to use the internal comparator or a different chip 19:53 < pcjc2> I guess it depends on what level of schematic you're wanting, functional, or physical 19:53 < corycrossq> yup 19:53 < pcjc2> your wiring would be different in both cases though 19:54 < pcjc2> for the external comparator, your output (and perhaps a pullup resistor, whatever), has to wire to a pin on the AVR (assuming similar functionality to an internal comparator) 19:54 < pcjc2> so you presumably need to change the schematic a bit if you change from one representation to another 19:54 < corycrossq> oh, the avr contains an external output 19:55 < corycrossq> just depends on where I need it 19:56 < corycrossq> but say you had a circuit of 12 NAND gates, I'd like to bind them in whatever order would lead to the least mess on the pcb 19:56 < corycrossq> and to whatever chip 19:57 < pcjc2> sure 19:57 < pcjc2> I didn't realise the AVR has an uncommited comparator 19:57 < corycrossq> if you had two chips, one with 4 NAND gates and one with 8 NAND gates you'd have to change the gschem symbol each time they changed 19:57 < pcjc2> in that case, sure, it is similar to a generics type implementation of slotting 19:57 < pcjc2> I don't like the way gschem does slotting 19:57 < pcjc2> your way is much closer to the way I'd expect it to be 19:58 < pcjc2> the gschem library should have generic parts 19:58 < pcjc2> possibly labeled with pin names, rather than numbers (V+, V-, Out) etc.. 19:58 < pcjc2> and some way of tagging / grouping these things into components 19:58 < corycrossq> yup 19:58 < corycrossq> exactly 19:58 -!- Cesar [~Cesar@c9342d24.virtua.com.br] has left #geda [] 19:58 < pcjc2> (parts) 19:59 < pcjc2> (Without loosing any flexibility in the current way of doing things, nor the freedom to make a straight, "heavy" symbol which is a 1-1-1 symbol<->part<->footprint mapping 20:00 < pcjc2> has been suggested as a good idea for transistors too 20:00 < pcjc2> label the BJTs with C B and E 20:00 < pcjc2> then have a mapping between the footprint numbers and the actual signals 20:00 < corycrossq> hmm, I'm thinking this should actually be built in scheme and modify the parts right in gschem, communicating with an external program to get the correct mapping= name 20:00 < corycrossq> I like that 20:01 < pcjc2> I'm not sure I got the mapping= bit 20:01 < pcjc2> did you explain that somewhere before? 20:01 < corycrossq> I'd still have to modify gnetlist though, to check the mapping= attribute 20:01 < corycrossq> probably not 20:01 < corycrossq> it'd point to the file that says "C should be pin 1 of SOT-23" 20:02 < corycrossq> for a particular part 20:02 < corycrossq> well, particular (part,slot,footprint) tuple 20:02 < pcjc2> ok 20:02 < pcjc2> so it could refer to something in the parts database 20:02 < pcjc2> which says, for example 20:03 < pcjc2> LM741 opamp: Map opamp:V+ -> pin 2 opamp:V- -> pin 3 (etc..) 20:03 < pcjc2> and for multiple slots, in a dual / quad opamp etc.. 20:03 < corycrossq> exactly! I must not be crazy if someone's getting the same ideas 20:04 < corycrossq> s/someone's/someone else's/ 20:04 < pcjc2> I can't recall if I / we ever wrote any of this down 20:04 < corycrossq> I might've e-mailed a few ramblings once or twice 20:04 < pcjc2> but a proper parts manager was high on the wish list at CUED, so new users can just drop parts in and have them work 20:04 < pcjc2> I spent some time "thinking" about these issues, but never got past some of the design challenges 20:05 < pcjc2> Thinking database wise, taking the NE555 timer as an example 20:05 < pcjc2> you might have a generic symbol representing NE555 and the derivatives of them 20:05 < corycrossq> I have a GUI interface to a postgres db waiting for this side to be implemented 20:06 < pcjc2> in the database, you want a generic 555 timer, with options of PDIP or SOIC etc.. 20:06 < pcjc2> yet also, you might want to link a very specific part in the database, which inherits from the generic one 20:06 < pcjc2> but adds a specific manufacturers data-sheet, part-number, supplier's stock-code 20:07 < corycrossq> heh, that's exactly how I did it 20:07 < pcjc2> designing the schematic, you want to put in the generic part, but at some stage (producing a BOM, for example), perhaps you need to fill in more specifics about which part-code(s) you're going to use 20:09 < pcjc2> Problem currently, is gschem works with graphical symbols 20:10 < pcjc2> It might be possible to add a "parts selector" in parallel with the "symbol selector", which adds things in the schematic which are known to refer to a parts-database for more information 20:10 < pcjc2> presumably this could basically be a symbol, plus an attribute referencing a part (at whatever level of specialisation) in the database 20:11 < corycrossq> my workflow would leave that until the schematic is mostly complete visually 20:11 < pcjc2> ok, so you'd place a fairly generic symbol 20:12 < pcjc2> Peter Brett and myself looked at a more circuit oriented data-structure for libgeda, something it currently doesn't have much concept of 20:13 < corycrossq> so I've grasped 20:13 < pcjc2> The symbols represent electrical entities, instantiations of sub-circuit definitions 20:13 < pcjc2> I never invisaged the "ports" or "pins" on those symbols corresponding 1:1 with a PCB footprint 20:14 < corycrossq> Mmhm 20:14 < pcjc2> If so, the netlists are purely "circuit" based up until the last stage of flattening (or just output, if / when PCB supports hierarchical netlists) 20:14 < pcjc2> you'd need a mapping which brings this to represent PCB pins 20:16 < corycrossq> Hmm, I think you just made my job 5000x easier 20:16 < pcjc2> Currently, I think the magic slot handling is probably too high up in the netlisting - should be lower 20:17 < pcjc2> (I hope thats not based on me promising to do some coding any time soon... this whole thing is a very slow work in progress!) 20:17 < corycrossq> no, a simple regex replace on the output netlist might solve hacking gnetlist 20:18 < pcjc2> and if the netlist format doesn't contain enough formatting / information to make that easy.. you could always make a new scheme backend which has a bit more useful info kept in. 20:19 < corycrossq> Okay, when I choose a mapping from symbol->part, the program tells gschem to give it a footprint and refdes corresponding to what it should be 20:19 < corycrossq> the output netlist has things like "U101-V+" 20:19 < corycrossq> which can easily be changed to U101-5 or whatever 20:20 < corycrossq> but this wouldn't allow any symbols to share the same pin name 20:20 < corycrossq> obviously bad, but it would give a good half-way point to have something testable 20:22 < pcjc2> why can't symbols share the same pin name? 20:22 < pcjc2> if you have multiple slots of an opamp, say, so there are multiple "V+" etc..? 20:23 < corycrossq> They should be able to 20:23 < corycrossq> and will be able to 20:23 < pcjc2> could get use U101a and U101b to get round it 20:24 < corycrossq> clever 20:24 < pcjc2> the convention in PCB is to ignore lower case suffixes 20:24 < pcjc2> (gsch2pcb doesn't yet - implying they pass through gnetlist intact) 20:25 < pcjc2> currently, the "a" or "b" bit doesn't define anything magic about which slot is used, its just a refdes. The "slot=???" attribute does the selection work - I guess its that you're looking to extend / replace 20:27 < corycrossq> I think so 20:27 < pcjc2> This all sounds very cool - I can't wait to see it 20:27 < corycrossq> I think I've found how to do this quickly and easily 20:27 < pcjc2> I really ought to get to bed now... have some data-processing to do tomorrow, lots of graphs to produce for a report. 20:28 < pcjc2> (I've been "at" this code sprint for about 15 hours now!) 20:28 < corycrossq> goodnight, thanks for helping; this is going to be much easier than I thought 20:28 < corycrossq> wow! 20:28 < pcjc2> We started early in the UK / Europe! 20:28 < pcjc2> I just failed to go to bed yet 20:28 < corycrossq> I went to sleep when you were starting 20:29 < pcjc2> where abouts are you? 20:29 < corycrossq> west coast usa :) too bad there don't appear to be an asians here, otherwise I'd have more people around to help 20:30 < pcjc2> gEDA does seem to be predominantly US + Europe 20:30 < pcjc2> I'm not sure why 20:31 < pcjc2> I'm sure its not that Linux hasn't got to other places.... I see plenty of Indian programmers on the GTK+ mailing lists 20:32 < corycrossq> There's certainly lots of circuit board design going on, I wonder what they use? 20:32 < corycrossq> at work we'll be shipping out some stuff to be manufactured in china, if I get a chance to talk to anyone I'll ask 20:33 < pcjc2> Lots of software piracy 20:33 < pcjc2> all the Chinese students at Uni use the very best in commercial software ;) 20:34 < pcjc2> (I've been told - by people who visit, that you _can't_ buy non-pirated DVDs out there, and software is similar) 20:34 < corycrossq> they can't be pirating eagle, they're producing far too many products for that to be feasible :) 20:35 < pcjc2> Orcad 20:35 < pcjc2> goodness knows 20:36 < pcjc2> I spoke to some colleagues doing IC mask design (previously with mentor graphics) 20:36 < pcjc2> they asked their Japanese partners what software they were using (to standardise, as mentor graphics is apparently not available anymore), and the Japanese people reckoned they use software not available here in the UK 20:37 < pcjc2> possibly some Japanese company 20:38 < pcjc2> I've never used Eagle 20:38 < corycrossq> if most engineers don't speak english, it'd almost be easier to write a program from scratch than convert the language of an existing one 20:38 < pcjc2> it "looks" like its fairly integrated 20:39 < corycrossq> it is -- until it falls out of sync and doesn't tell you why 20:39 < pcjc2> (but KiCad looks integrated, and I'd not touch that with a barge pole) 20:39 < corycrossq> and it's almost only mouse-driven 20:39 < pcjc2> I'm not against integration - I'm looking to add more interactivity to gEDA (for university use, teaching, simulating circuits etc..) 20:40 < corycrossq> they at least included a scripting language, but it's unique and I'm not even sure if it's turing-complete 20:40 < pcjc2> but obviously, one of gEDA's strengths is the ability to separate the tools and design flows 20:40 < corycrossq> yeah, you might not have any interest in pcb layout, only simulation 20:41 < pcjc2> From what I saw, they have a big parts library, and a strong community sharing parts 20:41 < corycrossq> eagle has none of that, for sure 20:41 < corycrossq> libraries are a mess 20:41 < pcjc2> (Ours or Eagles) 20:41 < corycrossq> eagle 20:41 < pcjc2> (I know ours could be better) 20:41 < corycrossq> you can't have a symbol in one library file reference a footprint in another file 20:42 < pcjc2> I can never remember if it was Proteus or Protel I used before - can't stand it 20:42 < pcjc2> I used EasyPC a very long time ago, but that was back in the days when 386 was powerful, and DOS ruled the PC world 20:42 < corycrossq> and trying to keep libraries synced with one other person is hard enough -- I can't imagine trying to keep a third person in the loop at work 20:43 < pcjc2> a database is a good thing to have for this kind of work 20:43 < corycrossq> I like being able to choose whatever language I want to generate footprints 20:43 < pcjc2> allows more flexibility in indexing meta-data too, for finding parts 20:43 < corycrossq> Yup, I'll be able to release the code for that 20:44 < pcjc2> its unfortunate that postgres is a bit heavy weight to stick as a pre-requisite for every gEDA install 20:44 < corycrossq> I don't think I'll be able to give work-related parts out 20:44 < pcjc2> but the hard work is in the database design 20:44 < corycrossq> sqlite 20:44 < pcjc2> sqlite or whatever could do the job 20:44 < pcjc2> (was just typing that - you beat me) 20:45 < pcjc2> You're using postgres for now though? 20:45 < corycrossq> I'll draw up my database design nice and purty and post it to the list 20:45 < pcjc2> fantastic 20:45 < corycrossq> The GUI I designed uses dabo (dabodev.com) which supports multiple backends 20:45 < pcjc2> which tools do you see the database integrating with? Or will it be a separate part of the design flow? 20:46 < corycrossq> but that couldn't go into geda 20:46 < pcjc2> Licensing? 20:47 < corycrossq> I see the database as a back-and-forth with gschem and a small script in between gsch2pcb->pcb 20:47 < corycrossq> no, wxpython 20:47 < corycrossq> (it's all gpl, or has to be, anyway) 20:47 < pcjc2> this sounds good 20:48 < pcjc2> with the database as a "helper" program for gschem? 20:48 < corycrossq> yes 20:48 < pcjc2> gschem currently lacks IPC, but I added DBus support to PCB without "much" difficulty 20:49 < pcjc2> (Actually, its easy for pure GTK / GLib apps, but since PCB doesn't have just one framework, I had to code much more low-level, and roll my own main-loop integration and support in PCB) 20:49 < corycrossq> I'm looking to see if I can write everything in guile with a sqlite/postgres backend 20:49 < pcjc2> If you launch the database helper from gschem, there is always stdin/out and pipes etc.. 20:49 < corycrossq> Heh, I remember reading about your pain 20:50 < pcjc2> Looking back on it 20:50 < pcjc2> it would have been better (I think) to make GLib a requirement of PCB, and tie the Lesstif mainloop into the GLib one (not too hard). 20:50 < pcjc2> It just not likely it would be accepted politically! 20:52 < corycrossq> can guile create windows from gschem? 20:52 < pcjc2> I don't expect so 20:52 < pcjc2> There might be API for creating a message box, but I can't remember 20:53 < pcjc2> (I steer clear of the guile bits where possible!) 20:53 < corycrossq> darn, I'll have to hack some C 20:53 < pcjc2> there is / was an old binding for GTK in guile 20:53 < pcjc2> but gschem doesn't use it 20:53 < pcjc2> and I don't recall it being particularly up-to-date. Not even sure it does GTK+-2.0 onwards 20:54 < corycrossq> according to my quick apt search, there's been a name change, but there is a library for it 20:54 < pcjc2> thats probably why a helper app is a nice way to do it - can launch whatever toolkit / GUI you want. (Guile can handle process spawning and IPC via pipes etc..) 20:55 < corycrossq> is python a requirement at all? 20:55 < pcjc2> GWave used GTK in Guile, and its almost dead because it never got off GTK1.0 20:55 < pcjc2> its used by some of the tools, such as Stuart's installer CD 20:56 < pcjc2> And our "toy" project manager front-end for gsch2pcb (xgsch2pcb) uses Python and GTK 20:56 < corycrossq> sweet, that's what I'll be doing 20:56 < pcjc2> gnome-gtk might be the new guile one 20:56 < pcjc2> bah - guile-gnome0-gtk 20:57 < corycrossq> yup 20:57 < pcjc2> we've never "required" it though 20:57 < pcjc2> I can't remember who I had this discussion with, but various people were keen the parts-manager should not be "inside" gschem too much 20:57 < corycrossq> my only other choices would be C or perl... neither appetizing 20:58 < corycrossq> oh, so you could have various part-managers 20:58 < pcjc2> I've wondered about adding helper-apps to preview footprints and the like before, but never had time to actually do it 20:58 < pcjc2> Python is pretty sweet for GUI coding 21:00 < pcjc2> Changing the subject: 21:00 < pcjc2> http://sourceforge.net/project/stats/detail.php?group_id=161080&ugn=geda&type=prdownload&mode=60day&package_id=181463&release_id=0 21:00 < pcjc2> thats quite interesting 21:01 < pcjc2> a surprising number of potential new users / upgrading users per day! 21:01 < pcjc2> I wonder what changed on 2007-03-18 21:02 < pcjc2> ok (thats when the download was added) 21:02 < corycrossq> :) 21:02 < corycrossq> that's just the cd-rom 21:02 < pcjc2> Start's ins