Difference between revisions of "Automatic Build Scripts"
(→Based on geant) |
|||
Line 27: | Line 27: | ||
However, the scripts are working and can be helpful to build EiffelStudio without too much trouble. | However, the scripts are working and can be helpful to build EiffelStudio without too much trouble. | ||
− | * Note: If there are built executables in the build folder ( | + | * Note: If there are built executables in the build folder (subfolder bin/), these executables are used for the delivery instead of recompiling from source. To make sure that the Delivery is built from scratch, the 'bin/' - folder should be removed from the build directory. |
* If ever you have feedback, or comment, or anything, you can contact Jocelyn : mailto:jfiat@eiffel.com | * If ever you have feedback, or comment, or anything, you can contact Jocelyn : mailto:jfiat@eiffel.com | ||
Revision as of 00:32, 11 June 2007
This page references different build scripts that automate the process of building EiffelStudio.
Platform independent
Based on geant
- To build a working delivery out of the trunk source code
svn checkout https://eiffelsoftware.origo.ethz.ch/svn/es/trunk trunk set EIFFEL_SRC to point to this path And then use the geant script located under trunk/Src/scripts/build.eant geant -b $EIFFEL_SRC/scripts/build.eant build_es This will create in the current directory a delivery in the EiffelXX. You just need to point ISE_EIFFEL to this location to have a working EiffelStudio delivery
- Warnings:
The scripts are not fully tested, and may not be very well written for now (it contains unfinished code .. especially regarding setup building) On Windows: - It may have issue with dotnet (windows) - It requires: sed, tar, and bash (for runtime). You can use cygwin for that. - Extracting the Gobo library may crash "tar" ... need to check On linux: - You need to answer a few questions, mostly for runtime configuration However, the scripts are working and can be helpful to build EiffelStudio without too much trouble.
- Note: If there are built executables in the build folder (subfolder bin/), these executables are used for the delivery instead of recompiling from source. To make sure that the Delivery is built from scratch, the 'bin/' - folder should be removed from the build directory.
- If ever you have feedback, or comment, or anything, you can contact Jocelyn : mailto:jfiat@eiffel.com
Windows
Bernardo Buss created a set of scripts for the automated compilation of EiffelStudio under Windows.
- Script: http://homepage.hispeed.ch/barnski/EiffelStudio_batch_files.zip
- Announcement: http://origo.ethz.ch/pipermail/es-devel/2006-April/000052.html
Note:
- You may need to keep "2_checkout_dev.bat" up to date by yourself according to Checking out from SVN.
- It is possible that the batchfiles only work partial with EiffelStudio newer than version 5.7.0826 (especially parts of the compilation process may differ too much).
Update:
- Philipp Bönhof improved the scripts with customizable parameters which should work with the newest pre-release of EiffelStudio. Download here: http://n.ethz.ch/student/pboenhof/autotest/eiffel_win_compilation_scripts.zip (updated: 2006-09-06)
Linux
Bernd Schoeller has developed a build script vor use with .acex configuration files. it is available for download at http://se.inf.ethz.ch/people/schoeller/download/build-ec-acex
For use with the new .ecf configuration files, please use this updated version:
http://n.ethz.ch/~bherlig/download/build-ec-ecf.sh
This script requires a single checkout from the SVN repository (with the EIFFEL_SVN environment variable pointing to it). It will compile the bench or the batch compiler (you need to modify the script for the second).
Gentoo
Ebuilds and installation instructions can be found here
Mac OSX
Now that Mac builds are available, I guess you can use the Linux script on Mac OS, too. I prefer this more simple script though:
#!/bin/bash cd $EIFFEL_SRC/C make clobber ./quick_configure cd $EIFFEL_SRC/library/event/Clib finish_freezing -library cd $EIFFEL_SRC/library/net/Clib finish_freezing -library cd $EIFFEL_SRC/library/vision2/Clib finish_freezing -library cd $EIFFEL_SRC/library/vision2/implementation/gtk/Clib finish_freezing -library cd $EIFFEL_SRC/Eiffel/Ace ec -config ec.ecf -target bench -finalize -c_compile
This basically automates the steps described here.