New PTXdist Features in 2013

Jürgen Borleis | | PTXdist

The main new feature was the introduction and tuning of the toolchain 'wrapper': This wrapper ensures a new level of control about how a PTXdist project is build. In earlier days, the binary results relied more or less on the buildsystem each package comes with. With the new wrapper, a package's buildsystem calls the wrapper instead of gcc and other toolchain components, and all command line parameters given to it can be checked or extended. The wrapper provides enforcement of:

  • user or project specific compile and link time parameters
  • project and cross compile specific include and library search paths
  • architecture specific settings and optimization
  • link time optimization (omit unused libraries)
  • runtime linker optimization
  • hardening settings like built-in buffer overflow detection and read-only relocation tables
  • checking all kind of include paths against illegal host paths

Using the wrapper improves the reliability of the PTXdist generated root filesystem and catches build failures and inconsistencies at a very early project state.

Basic support for the new graphical environment 'Wayland' was added. This addition is intended for development yet, because various different components Wayland depends on to provide a full featured environment for production are still missed.

For special hardened target systems, PTXdist supports the SELINUX infrastructure. As there is no generic way to configure and parametrize SELINUX, PTXdist cannot support this out-of-the-box. Adding the policies to make use of the SELINUX features is still something an experienced developer must manage manually.

Since mid of 2013 PTXdist can handle plain git and subversion repositories in addition to its handling of archives and directories to get the sources of a package. This new feature simplifies project development in conjunction with application development.