software.jessies.org Evergreen salma-hayek SCM Terminator

Salma Hayek

Salma-Hayek is a cross-platform LGPL Java library, C++ JNI replacement, and application build system.

About the silly name: I needed a name for a repository containing useful Java classes shared by several projects. I couldn't think of a good name, so I went for a nice name instead.

[ ChangeLog | Download | FAQ | Report a Problem ]

Features

This list is very incomplete, but gives some idea of a few of the larger facilities on offer:

Using our Debian package repository

A Debian package repository is available for our packaged projects. Pasting this is how you might install them all, though you should think through the security implications before doing so:

sudo bash <<EOF
echo deb http://software.jessies.org/downloads/debian/ ./ >> /etc/apt/sources.list
EOF
wget -O - http://software.jessies.org/downloads/debian/software.jessies.org.gpg | sudo apt-key add -
sudo aptitude update
sudo aptitude install ~norg.jessies.

If you're on Ubuntu, "Update Manager" will nag you almost daily because the packages represent our nightly builds, and we're constantly making improvements. You can change the frequency at which Ubuntu checks for updated packages by choosing "System" > "Administration" > "Software Sources" from the menu, clicking the "Updates" tab and using the combo box. Bear in mind that this also affects the frequency at which Ubuntu will check for updates to its own patches. We definitely do not recommend that you turn automatic updates off.

Downloads / Building from Source

The salma-hayek ChangeLog is available separately.

Anonymous read-only Subversion access is available. Copy and paste these commands to get everything you need:

mkdir ~/jessies && cd ~/jessies
svn checkout http://software.jessies.org/svn/salma-hayek/trunk/ salma-hayek
make -C salma-hayek

There's also a source distribution, salma-hayek-source.tar.gz, but Subversion makes it easier for you to keep up to date, and makes it easier to submit patches.

If you just want to look, you can browse the repository.

All Platforms

You need Java 6 or later. A JRE is enough to run our projects, but you need a JDK to build them.

You need Ruby 1.8 or later to run any of our projects.

You need GNU make 3.81 or later to build from source. The makefile will tell you what to do if you try to build with an old version.

To build the C++ parts, you'll need g++.

If you see this error, it means you're trying to build one of our projects without a copy of the salma-hayek library they all depend on:

Makefile:8: ../salma-hayek/lib/build/simple.make: No such file or directory
make: *** No rule to make target `../salma-hayek/lib/build/simple.make'.  Stop.

Check out or unpack a copy of salma-hayek and try again.

Mac OS

You need Mac OS 10.4 or later, and the latest Apple Java 5, available via Software Update.

You need the command-line tools supplied with Xcode 2.2.1 or later. The latest version of Xcode is available as a free download from Apple. Note that running the Xcode 2.2.1 installer will overwrite /usr/bin/make with version 3.80, so you need to upgrade to GNU make 3.81 after upgrading Xcode. More recent versions of Xcode include an adequate make.

All our projects build universal binaries and libraries, suitable for both Intel and PowerPC Macs.

Ubuntu

We have more information about setting up Ubuntu for development, including commands to install all the packages needed to build our projects.

Windows

Windows builds require Cygwin. We have more information about setting up Cygwin if you're not already using it, and common Cygwin problems.

To build the Windows installer, you need Microsoft's open source Windows installer compiler, WiX version 2, installed and on your path.

If you see this error when building on Cygwin:

light.exe : error LGHT0001 : COM object with CLSID {F94985D5-29F9-4743-9805-99BC3F35B678} is either not valid or not registered.

you also need MergeMod.dll to be installed and registered. An easy way to achieve this is to run the WiX version 3 installer.