This task requires creating a .bep file to allow Haikuporter to build from source code the listed package. You will need a working installation of Haiku, this could be on real hardware or in a VM, and haikuporter which can be installed by following the install instructions at HaikuPorts
Some knowledge of C, C++ may or may not be required in order to complete this task. Knowledge of the GNU autotools and/or cmake may also be helpful. The package may or may not require some patching to get it to work on Haiku. For these cases don't be afraid to ask for help. Many compile issues can be figured out by reading through the various wiki pages at HaikuPorts. Also google (or other web search engine) may be of help in finding solutions to build issues that you may run into, irc channel #haiku on freenode might also be of help. Be sure to follow the correct format for creating your .bep file, including the license and copyright entries.
Here's a previous attempt at creating a .bep file for tinyxml2
http://ports.haiku-files.org/ticket/254
For this task we would like to see a .bep for the latest version of tinyxml.
| File name/URL | File size | Date submitted | |
|---|---|---|---|
| tinyxml-2.6.2.bep | 499 bytes | December 14 2012 17:05 UTC | |
| tinyxml-2.6.2.bep | 870 bytes | December 15 2012 15:43 UTC |
I would like to work on this task.
This task has been assigned to Piotr. You have 72 hours to complete this task, good luck!
The work on this task is ready to be reviewed.
Seems this doesn't build to a library... it just builds an example program... but a little searching around and I see that there is a cmake file which will take the 4 cpp files and the two headers and make a shared libtinyxml.so for us:
http://code.google.com/p/libtinyxml/
So extend your bep's BUILD section to get the source from where it's already getting it, but then get the CMakeLists.txt from the above location using:
svn co http://libtinyxml.googlecode.com/svn/trunk/CMakeLists.txt
then use cmake to build it:
cmake .
In your INSTALL section make sure it is building ok to a DESTDIR, that is when you build using
haikuporter -i tinyxml
is it putting the files into the zip file like we'd expect them to be? You might have to add some cp commands to get them in the right places. If so be sure to use ${DESTDIR}/`finddir ....` in your destination pathnames.
It'd also be nice to have the docs included, See if you can figure out how to put the files in "docs" into ${DESTDIR}/B_COMMON_DOCUMENTATION/docs/tinyxml/
So the resulting zip file should contain something like this:
common/lib/libtinyxml??.so??
common/include/???.h <- 2 files
common/develop/tinyxml ???.cpp <- 4 files
common/documentation/docs/tinyxml/ <- everything that was in docs
If you need help, just ask.
One of the mentors has sent this task back for more work. Talk to the mentor(s) assigned to this task to satisfy the requirements needed to complete this task, submit your work again and mark the task as complete once you re-submit your work.
The work on this task is ready to be reviewed.
It is ok now?
I only made a slight change and that was to put the .cpp files in develop/tinyxml. Nice job on this one, turned out just how I pictured it could.
On to the next task. Do a
haikuporter -g
to update the ports tree to see the committed version, this will also pull down all the recent updates that have been happening recently.
Congratulations, this task has been completed successfully.