No description, website, or topics provided.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.tx
data
docs/reference/endless
endless
licenses
m4
overrides
po
test
tools
.gitignore
COPYING
Makefile.am
README.md
autogen.sh
configure.ac
endless-0.pc.in
jasmine.json

README.md

Open Endless SDK

Libraries and development tools for building Endless applications.

Coding style

We follow the GTK coding style: https://git.gnome.org/browse/gtk+/plain/docs/CODING-STYLE

Build instructions

Run make anytime you change a file.

Preparing the source

From a fresh source checkout, run:

./autogen.sh
./configure

This prepares the source tree for building. The configure script takes several options, common ones being:

  • --prefix=/usr: install in /usr instead of /usr/local (you probably want this)
  • --enable-gtk-doc: generate the documentation whenever you build; this makes your build slower, but the documentation will always be up to date
  • --enable-strict-flags: use strict compiler flags to catch extra warnings
  • If you're doing a debug build, then CFLAGS="-g -O0" ./configure will make sure that make always builds with debugging symbols and optimization off.

Then, run make to rebuild, and sudo make install to copy the SDK into the system.

By default, the compiler invocations with all the flags are not shown. If you want to see them, run make V=1. If you want make to try and run several jobs in parallel, run make -j2 for 2 jobs, for example.

Testing

To run the automated tests, run make check.

Packaging

Before packaging, run make distcheck. This runs the tests as above, but from a clean source tree in a temporary location. It also installs all the files in a temporary location and uninstalls them again, in order to make sure that nothing is forgotten.

Fixing breakage

If at any time the state of your build tree gets wedged, then try the following:

make clean
make

If that doesn't work,

make maintainer-clean
./autogen.sh
./configure
make