[haiku-appserver] Re: private development

  • From: "DarkWyrm" <bpmagic@xxxxxxxxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: Wed, 23 Mar 2005 17:38:37 -0500 EST

> Hello gang,
> 
> with this mail, I want to encourage that we reduce the private 
> development in private build systems, and start using the Haiku 
> repository more. For me as a newbie to app_server development, it is 
> quite irritating. I would really like whatever test applications you 
> guys are using, to be checked into src/tests/servers/app/, I have put 
> the "painter" test there already. Up until now, I actually never 
> succeeded running the Haiku app_server, let alone running a test 
> BApplication that uses it. I'm just trying to say that it would 
> encourage digging into app_server development more, if there was 
> already a clean way to test it or to start writing own tests from. 
> With 
> the recent achievements of Michael Lotz, I think there is the 
> potential 
> of gaining some momentum, and maybe we can even show something at 
> BeGeistert. DarkWyrm has posted BeIDE project files at one time, but 
> when I build app_server this way, I didn't get very far, because the 
> executable was crashing right after launch. When I recently tried it 
> again, the build system seemed to be broken somehow, I didn't have 
> time 
> to investigate more. Anyway, if you are interested in help, I would 
> suggest you make it as easy for people to get up to speed with the 
> current state of development as possible, and from my own experience 
> with "digging in", I would welcome it, if there would be test 
> applications in the Haiku tree. I mean, so that what gets build by 
> the 
> jam system is actually the real thing, with everything it needs to 
> run 
> for testing it. What do you think?
For quite a while there weren't really any official tests because 
putting them together was very much a hack. That is no longer the case 
because the App and Interface Kits are far enough that you can use most 
classes to some degree. If you want to build the app_server and run it 
under R5 like Adi and Gabe and I do for development, you'll need to add 
two lines to your .profile:

export COMPILE_FOR_R5=1
export RUN_WITHOUT_REGISTRAR=1

And run jam. Also, if you want the nice-to-have debug output, add a 
'export DEBUG=1' to your .profile, as well. Once all that's done, 
you'll probably need to make a symlink in ~/config/lib which points to 
the libappserver.so in the tree. You may have to do that for other 
libraries the server depends on, but maybe not.

I'm not sure that cppunit will work for all of our testing needs 
because some of them are graphics-based, such as testing 
BApplication::ShowCursor or BApplication::HideCursor. I'm not really 
familiar with it, so I could be (and probably am) wrong on this.

> > 
> > Amen to that.
> > I would volunteer to clean up the app_server repository a bit, and 
> > also 
> > to try to have it built for Haiku when target=haiku, and for R5 
> > testing 
> > otherwise.
Fine by me. :)

> While this would be very nice, let's hear what the other team members 
> have to say, and I would also be interested, why for example DarkWyrm 
> prefers BeIDE. Maybe the Haiku build system can be improved, if there 
> is something BeIDE can do, which is not possible in the Haiku build 
> environment.
I'll be glad to explain. I like to speed up my workflow as much as 
possible, and BeIDE makes it very easy to build relatively simple 
projects. Complicated ones are a little tricky, but not too bad. 
Instead of typing tons of commands in the Terminal, I can hit Alt-Minus 
followed by Alt-M and I've done a jam clean. In about as much time as 
it would take me to jump to the Terminal and type it. Building takes 
less time, too -- jam is nice when it comes to editing files, but it 
just takes what seems like forever before it even starts compiling 
anything. Then again, perhaps I'm just too impatient.

> As for target=haiku/r5, maybe there could be some information about 
> this somewhere. I have only a very foggy idea, what this actually 
> means 
> (like which libraries is linked with), and I could use some 
> information 
> as to how to prepare Jamfiles to work with these settings. When I 
> integrated Painter with the Haiku build system and prepared the 
> painter 
> test program, I was mainly looking into other similar Jamfiles and 
> tried to wrap my head arround this. I ended up phoning Ingo and he 
> worked me through what I needed to do. I think the Haiku build system 
> is actually pretty powerful, probably much more powerful than BeIDE 
> (though that's really just a guess), but if these issues were more 
> clear and the possibilities documented, it would be easier to switch 
> from BeIDE to the Haiku build system.
From the standpoint of power, yes, jam is *much* more powerful. I just 
happen to find BeIDE much easier for me to use. I apologize if things 
have been confusing for you -- I am very right-brained in a lot of 
respects -- I'm a musician, after all --   and many times what makes 
sense to me is utter confusion for others.

--DW


Other related posts: