Compiling the Caja-Actions package

Compiling the Caja-Actions Package — How to compile Caja-Actions

Building Caja-Actions™ on UNIX

On UNIX, Caja-Actions™ uses the standard GNU build system, using autoconf for package configuration and resolving portability issues, automake for building makefiles that comply with the GNU Coding Standards, and libtool for building shared libraries on multiple platforms. The normal sequence for compiling and installing the Caja-Actions™ package is thus:


        ./configure
        make
        make install
      

The standard options provided by GNU autoconf may be passed to the configure script. Please see the autoconf documentation or run ./configure --help for information about the standard options.

Dependencies

Before you can compile the Caja-Actions™ package, you need to have various other tools and libraries installed on your system. The two main tools needed during the build process (as differentiated from the tools used in when creating Caja-Actions™ mentioned above such as autoconf) are pkg-config and GNU make.

  • pkg-config is a tool for tracking the compilation flags needed for libraries that are used by the Caja-Actions™ package. (For each library, a small .pc text file is installed in a standard location that contains the compilation flags needed for that library along with version number information.)

  • The Caja-Actions™ makefiles will mostly work with different versions of make. However, there tends to be a few incompatibilities, so the Caja-Actions™ team recommends installing GNU make if you don't already have it on your system and using it. (It may be called gmake rather than make.)

Caja-Actions™ depends on a number of other libraries.

  • GLib and Gtk+ are fondamental libraries, both for user interface and for portability and internationalization management.

  • libxml2 is used to manage XML imports and exports.

  • libgtop2 is used to detect and identify running processes as part of the validation process of a candidate context.

  • libSM and libICE are used as a session management libraries, in order to be sure the session will not terminate without at least proposing the user to save his modifications.

  • libUUID is the universally unique ID library used to automatically generate a unique identifiant at item creation.

  • libunique is required so that the Caja-Actions Configuration Tool only executes one instance.

  • And, of course, Caja™ extension is required because Caja-Actions™ is first a Caja™ extension.

Extra Configuration Options

In addition to the normal options, the configure script in the Caja-Actions™ package supports these additional arguments:

configure [[--with-caja-extdir=DIR]] [[--with-default-io-provider=na-mateconf|na-desktop]] [[--enable-html-manuals[=db2html]]] [[--enable-pdf-manuals[=dblatex]]]

--with-caja-extdir=DIR With this option, one may define an alternate directory where our Caja™ extensions will be stored. This is most commonly useful:

  • In development mode, we only have to install symlinks from Caja™ standard location to our development tree once. Then, each new version of our libraries will be automatically considered by Caja™.

  • When running make distcheck, so that compiled libraries do not interfere with installed ones.

  • When Caja™ is not installed itself in a standard location.

--with-default-io-provider=na-mateconf|na-desktop As of version 3.0, Caja-Actions™ may store menus and actions both in MateConf, which is the historical behavior, or as .desktop files. This option lets the packager define which will be the default destination when a new menu or action will be created. This defaults to "na-desktop" which is the internal identifiant of the I/O provider which manages .desktop files.

--enable-html-manuals[=db2html] This option lets the packager regenerate user's manuals from the DocBook sources as HTML documents. All available translations are generated. Building HTML documents from DocBook source can be realized through mate-doc-tool or db2html. Caja-Actions™ defaults to use mate-doc-tool as the output format better sticks with those of Yelp. As this option is always set when running make distcheck, the packager can be mostly sure that the distributed manuals are up to date, and may safely ignore this option.

--enable-pdf-manuals[=dblatex] This option lets the packager regenerate user's manuals from the DocBook sources as PDF documents. All available translations are generated. As this option is always set when running make distcheck, the packager can be mostly sure that the distributed manuals are up to date, and may safely ignore this option.