Category: Uncategorized

  • December 1, 2016 - Tom Hacohen

    Improving Debug Code Performance in EFL

    I work on EFL, a cross-platform graphical toolkit written in C. I recently decided to improve one aspect of the experience for developers using the API (otherwise known as users) by making EFL provide more information and stricter sanity checks when developing and debugging applications. A key requirement was ease of use. With these requirements, the solution was obvious, unfortunately obvious solutions don’t always work as well as you expect. The Obvious Solution: an Environment Variable Using an environment variable sounds like a good idea, but it comes with one major, unacceptable flaw: a significant performance impact. Unfortunately, one of the places we wanted to collect debug information was Eo, a hot-path in EFL. Believe it or not, adding a simple check to see if debug-mode is enabled was enough to degrade performance. To illustrate, consider the following code: Note: thanks to Krister Walfridsson for pointing out a mistake in […]

    Read More
  • October 27, 2016 - Bryce Harrington

    The Basics of Input Methods in Weston

    Wayland provides an optional protocol, zwp_input_method, for defining alternate ways of sending keystrokes and mouse activity to clients. This could be things such as an onscreen keyboard or a popup for building Korean characters. The design of the protocol allows for different kinds of input methods to be made available via modular plugins, allowing them to be coded as discrete client applications, separate from the compositor’s core. The Wayland project maintains a reference compositor named Weston that provides implementations of the various protocols for demonstrative purposes, including two implementations of the zwp_input_method protocol. One input method, weston-keyboard, manages an on-screen keyboard that pops up at the bottom of the screen, similar to on-screen keyboards typically seen on touch-based mobile devices. The other input method, weston-simple-im, enables a compose key functionality. The user can configure which input method to use via their weston.ini file. No more than one input method can […]

    Read More
  • August 15, 2016 - Phil Coval

    An Introduction to Tizen Development on ARTIK

    This article is a direct follow up of my previous post about booting Tizen on the ARTIK10. Before starting, you should bookmark this wiki page as an entry point for Tizen on ARTIK devices. At the 2015 Tizen Developer Conference, I had the opportunity to present a tutorial about Tizen platform development; it’s still valid today. This article is very similar but is adapted for ARTIK10 and ARTIK5 configuration. For some context, check out to the following slide deck along with the recorded video on how to patch Tizen and build with GBS for x86a as well as this page about Tizen:Common on VMware. tdc2015-strategy-devel-20150916 from Phil C Tools Setup If you’re familiar with Tizen you probably know about Git Build System (GBS): a very convenient tool to build packages. It’s adapted from Debian’s git-build-package to support zypper repos. First, gbs and some other Tizen tools need to be installed […]

    Read More
  • This year at LinuxCon EU, I gave a talk titled Static Analysis of Your OSS Project with Coverity. In this talk, I briefly touched on using the Travis Continuous Integration system to submit builds to the Coverity Scan service (slide 22). This is an extremely easy way for GitHub projects to use static analysis, and I think it deserves some more detail. While I was setting it up for another project I’m working on, I collected some notes to provide a steb-by-step guide to enable it for a project you have on GitHub. The project I’ll be using as an example is wpan-tools, the user space tools for Linux IEEE 802.15.4 stack. It is written in C with autotools for the build system, and it has only a few dependencies, making it easy to understand this guide. The final goal is to automatically submit new builds to the Coverity Scan […]

    Read More