Skip to content

absmall/ports

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is this?
This is a system to automatically compile open source software for BB10. It
will download and build an application or library and all of its dependencies.

To use:
Run "base/package.py -h" for the most up-to-date building instructions. For a simple case, if you wanted to build gnuplot, you would run:
base/package.py gnuplot

This will product ports/gnuplot/obj/gnuplot.bar which can be loaded to playbook.


Caveats:
Building libraries is supported, but the libraries won't work be useful on
playbook until I make some modifications to the loader.  Linking to a library
is not in final form. Ideally, an application package should NOT include all
the libraries it links to. But that isn't working yet, so currently, the
package should build them all in. This isn't as hard as it sounds, because they
will automatically be symlinked into the package's obj/lib directory, so it
just requires adding a <depends> to the <package> section of package.xml to include the
appropriate files. Eventually, they should not be included in the package, but
instead have the loader create symlinks on the device to exactly the same
location where they are now on the host machine.

Tutorial for making a port:

1) Create a directory under ports with the package's name.
2) Create a package.xml and a blackberry-tablet.xml in that directory. For
blackberry-tablet.xml, see online documentation. For package.xml, make a <port>
tag, inside this, make a <depends> tag for each library that the package will
use. Create a <download> section. In the section, use some <command>'s to
execute shell commands which will download the package's code. Use a <result>
tag to say what file means download has completed, and doesn't need to be
re-downloaded. Create a <build> tag which contains <command>'s with a best
guest for how to build the code.
3) Attempt to build the package. Probably building will fail on the first try,
but under the 'src' directory, a git repository will be created. In this
directory, tweak things until compile completes, and commit the changes.
4) Run package.py --prepare-patch <packagename> to update package.xml with patches needed.
5) Create a <package> tag in package.xml with instructions on which files need to be included in the package.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published