How to get HIPL =============== The latest version of HIPL is always available through Bazaar (version 1.6 or later required) and is hosted on Launchpad now. Run the command bzr checkout lp:hipl to get a checkout of the source tree. This will provide you with an anonymous checkout, unless you are a developer registered with the hipl-core project on Launchpad and used the command "bzr launchpad-login" beforehand to let Bazaar know your Launchpad user name. HIPL dependencies ================= HIPL places certain requirements on your kernel. Starting from Linux kernel version 2.6.27, no changes are necessary. If you run an older version, look at the patches/kernel directory to find patches for your Linux kernel version. Alternatively, you can use userspace ipsec as provided by hipfw. If you want to use the optional native programming interface, you need to patch your kernel anyway. In order to compile HIPL you need autotools (autoconf, automake, libtool), GNU Make, gcc and Bazaar. OpenSSL, iptables and libconfig are required complete with development headers. For Perl Net::IP and Net::DNS modules are required. You can optionally install xmlto to build the HOWTO and doxygen to build the code documentation. Installing the optional check library (http://check.sourceforge.net/) enables unit tests. Some additional programs are needed for building binary distribution packages. The following command(s) should solve the dependencies: Debian/Ubuntu ------------- - required: apt-get install autoconf automake libtool make gcc libssl-dev iptables-dev \ libnet-ip-perl libnet-dns-perl bzr - optional: apt-get install xmlto doxygen check libconfig8-dev miredo - binary packages: apt-get install fakeroot dpkg-dev debhelper devscripts Fedora/CentOS ------------- - required: yum install autoconf automake libtool make gcc openssl-devel iptables-devel \ perl-Net-IP perl-Net-DNS bzr - optional: yum install xmlto doxygen check-devel libconfig-devel miredo - binary packages: yum install rpm-build redhat-lsb openSUSE -------- - required: zypper install autoconf automake libtool make gcc libopenssl-devel iptables-devel \ perl-Net-IP perl-Net-DNS bzr - optional: zypper install xmlto doxygen check-devel - binary packages: zypper install rpm lsb-release How to build HIPL ================= If you are working with a Bazaar checkout, you will have to bootstrap the autotools build system with autoreconf --install before running configure. On subsequent times, you don't have give the install option. From the trunk directory in the HIPL sources, run the following command to build HIPL: ./configure && make ./configure --help will display the multitude of configuration options available for HIPL. To keep the developers sharp and honest HIPL is built with -Werror in CFLAGS. gcc will just error out when issuing a warning. If you experience compilation failures and just need to get HIPL to build on a combination of platform and compiler that does produce warnings, you can override -Werror as follows: CFLAGS=-Wno-error ./configure Then run make as usual. Please note that the HIP configuration files are located in /usr/local/etc/hip with the default configure flags. If you want to change the location to /etc/hip, you have to pass --sysconfdir=/etc to configure (or create a symbolic link). How to contribute to HIPL ========================= Grab the code from Bazaar and start hacking, external contributions are always welcome. Read doc/HACKING for detailed coding guidelines.