Difference between revisions of "Unix/Linux Packages"

(Requirements)
(Requirements)
Line 1: Line 1:
 
[[Category:Build Scripts]]
 
[[Category:Build Scripts]]
  
== Requirements ==
+
== Prerequisites ==
  
The best way to use the packaging scripts, is to use a PorterPackage. You can build one yourself using the '''make_delivery''' script or simply download one from http://dev.eiffel.com/Downloads. The unpacked PorterPackage should already contain all necessary scripts and files.
+
Make sure $ISE_EIFFEL and $ISE_PLATFORM are pointing to the delivery you want to make a package for. The version of EiffelStudio will automatically be detected so your package will be named correctly and also contain all information related to your delivery.
  
Next thing you will need is a compiled EiffelXY delivery. Running '''compile_exes''' in the PorterPackage will give you a fresh compiled EiffelXY delivery where '''set_aliases''' is already set up correctly.
+
Regardless which distribution you want to create a package for, you will need a directory called '''packaging''' and a script called '''make_unix_layout''' from https://svn.origo.ethz.ch/eiffelstudio/trunk/Delivery/scripts/unix/. The '''packaging''' directory contains build related files for all distribution. '''make_unix_layout''' is used by the packaging scripts to create the final unix layout for EiffelStudio (the way it will be installed later on the end user's system).
  
Alternatively, you could also use a prebuilt delivery. Change $FINAL_INSTALL_DIR in '''set_aliases''' so it points to the same directory as $ISE_EIFFEL. Also don't forget to change $MAJOR_NUMBER, $MINOR_NUMBER and $VERSION to the version of your delivery.
+
In a terminal, type the following commands in the directory you want to create your package(s). In general, you do not need root access to build the packages.
  
=== Debian packages ===
+
<pre>
 +
export SVNURL=https://svn.origo.ethz.ch/eiffelstudio
 +
svn export $SVNURL/trunk/Delivery/scripts/unix/packaging
 +
svn export $SVNURL/trunk/Delivery/scripts/unix/make_unix_layout
 +
</pre>
 +
 
 +
=== Debian ===
 +
 
 +
To create a .deb package of EiffelStudio, you will need the '''make_debian_packge''' script from the repository.
 +
 
 +
<pre>
 +
svn co $SVNURL/trunk/Delivery/scripts/unix/make_debian_package
 +
</pre>
  
 
Following debian packages are required:
 
Following debian packages are required:
Line 24: Line 36:
 
</pre>
 
</pre>
  
=== RPM packages ===
+
=== RPM ===
 +
 
 +
To create a .rpm package of EiffelStudio, you will need the '''make_rpm_packge''' script from the repository.
 +
 
 +
<pre>
 +
svn co $SVNURL/trunk/Delivery/scripts/unix/make_rpm_package
 +
</pre>
  
 
Following RPM packages are required:
 
Following RPM packages are required:

Revision as of 09:54, 1 May 2008


Prerequisites

Make sure $ISE_EIFFEL and $ISE_PLATFORM are pointing to the delivery you want to make a package for. The version of EiffelStudio will automatically be detected so your package will be named correctly and also contain all information related to your delivery.

Regardless which distribution you want to create a package for, you will need a directory called packaging and a script called make_unix_layout from https://svn.origo.ethz.ch/eiffelstudio/trunk/Delivery/scripts/unix/. The packaging directory contains build related files for all distribution. make_unix_layout is used by the packaging scripts to create the final unix layout for EiffelStudio (the way it will be installed later on the end user's system).

In a terminal, type the following commands in the directory you want to create your package(s). In general, you do not need root access to build the packages.

export SVNURL=https://svn.origo.ethz.ch/eiffelstudio
svn export $SVNURL/trunk/Delivery/scripts/unix/packaging
svn export $SVNURL/trunk/Delivery/scripts/unix/make_unix_layout

Debian

To create a .deb package of EiffelStudio, you will need the make_debian_packge script from the repository.

svn co $SVNURL/trunk/Delivery/scripts/unix/make_debian_package

Following debian packages are required:

  • build-essential
  • devscripts
  • debhelper
  • fakeroot
  • lintian (optional)

To install the packages, copy paste following code into a root shell:

apt-get install build-essential devscripts debhelper fakeroot lintian

RPM

To create a .rpm package of EiffelStudio, you will need the make_rpm_packge script from the repository.

svn co $SVNURL/trunk/Delivery/scripts/unix/make_rpm_package

Following RPM packages are required:

  • rpm-build

To install the package, copy past following code into a root shell:

yum install rpm-build

Creating the packages

Debian

make_debian_package $ISE_PLATFORM

RPM packages

make_rpm_package $ISE_PLATFORM


Implementation Details