[haiku-commits] Re: haiku: hrev44293 - src/apps/webpositive

  • From: Ingo Weinhold <ingo_weinhold@xxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 04 Jul 2012 22:58:56 +0200

On 2012-07-04 at 17:28:05 [+0200], Alexandre Deckner <alex@xxxxxxxxxxxx> 
wrote:
> On 04/07/2012 09:03, Jérôme Duval wrote:
> > 2012/7/4 Alexandre Deckner <alex@xxxxxxxxxxxx>:
> >>
> >> Runtime dependencies still have to be automatically installed via the 
> >> build
> >> system, hints are welcome.
> >
> > Do you mean $(HAIKU_WEBKIT_LIBS) aren't in the Haiku tree ?
> 
> Well, only the build part is done, the WebPositive binary can be built
> successfully in the current state. We still need to install the webkit
> libs somewhere on haiku (common/lib?), that should be easy although
> suggestions are welcome. And we still need to install the dependencies
> of those libs automatically if needed (curl, xml2, sqlite, icu...), that
> i'm not sure how to proceed yet.

I'm afraid I haven't followed closely enough what you have done so far. 
Things should work pretty much like for OpenSSL. There we have an optional 
package that installs to /boot/common/ (libraries, headers, and whatever 
else is necessary). This doesn't have much to do with the build system, 
save that it is declared in build/jam/OptionalPackages. Dependencies are 
declared in build/jam/OptionalPackageDependencies. Furthermore SSL is 
declared as an optional build feature in build/jam/OptionalBuildFeatures. 
An archive containing the libraries and the headers (can be the same one 
used for the optional package) is extracted to a temporary location. Those 
extracted libraries and headers are used in the build systems by code 
needing them.

Analoguously there should be an optional package WebKit and a respective 
optional build feature. An optional package WebPositive should be declared 
in OptionalPackages -- replacing the previous one which just installs a 
complete archive. Instead the optional package declaration should work 
similar to the one for UserlandFS, installing the generated 
executables/libraries. Declare the WebKit optional package a dependency of 
WebPositive and it will be installed automatically. Curl and whatnot should 
have been declared dependencies of WebKit and should therefore be installed 
automatically as well.

Obviously the WebPositive optional package should only be added to the 
image for gcc 4. For gcc 2 hybrid builds it will be added automatically as 
well. I'm not sure about its dependencies, though. Might need some 
tinkering in that case.

CU, Ingo

Other related posts: