GSoC/GCI Archive
Google Code-in 2014 Haiku

Update the recipe file for brlcad ***BONUS***

completed by: Nav

mentors: Scott McCreary, Kacper Kasper, mmu_man, humdinger

BrlCad is powerfully and popular mechanical cad design software. It has a mixed lgpl/bsd licence and is written in C/C++, this makes it the more preferred target for porting mechanical cad software to Haiku. Plus some of the US based Haiku and Brl-Cad devopers go to the same conferences and therefore are acquaintances.

This means that the student who completes this task will gain extra Kudos for doing so, but this bonus only matters if you manage to be one of the top 10 Haiku students in GCI.


Haikuporter is our tool to fetch, patch and build source code and create Haiku packages that can then be put into a repository to be installed by the user via HaikuDepot.

When updating Haikuporter to support PackageManagement the old .bep files were renamed to .recipe but many are still missing a few required fields such as SUMMARY, ARCHITECTURES, SECONDARY_ARCHITECTURES, PROVIDES, REQUIRES, LICENSE, COPYRIGHT, etc.

For this task, you have to update an old .bep file to a haikuporter recipe, which is a kind of script that automates this process. Depending on the targeted software you may need these skills:

  • Some knowledge of C, C++, git and bash
  • Knowledge of the GNU autotools and/or cmake
  • The package may require some patching to get it to work on Haiku

Before submitting your work, make sure to test your recipe by creating a hpkg package from it with haikuporter. Haiku's Expander app can open hpkg files to inspect their contents.

Take care to include all required licenses and copyright entries.


For this task you need to have

  • Haiku installed; get a nightly image and see the Haiku Guides for more information on using Haiku. There's also a Userguide and Welcome page on your Desktop when you boot Haiku.
  • Haikuporter installed and the haikuports bitbucket cloned, see the "Getting started" wiki page.
  • Studied the haikuporter wiki.
  • Submit your work as pull request to haikuports bitbucket (see "DevelopmentModel" in the wiki).


While there is a slight learning curve to writing recipes, other GCI recipe tasks will become easier and easier the more you complete successfully.
In addition to the wiki, studying working recipes in the haikuports tree can be a big help. Besides requesting assistance by leaving a comment in this task, a trip to the main IRC channel #haiku may prove to be quicker (consider possible timezone differences with your mentors).

Note that this one is broken, so get the recipe files up to the point that it should work IF all of the dependencies were already working, and once the recipe is corrected we will accept that as completing this task.  Open a new issue will a list of any missing dependencies or issues you run into when trying to get this to build on Haiku.