lazarus/tools/install
2003-03-07 11:41:22 +00:00
..
debian_fpcsrc added instructions for creating fpc and fpcsrc debian packages 2003-02-18 14:18:24 +00:00
debian_lazarus added instructions to create lazarus debian package 2003-02-18 18:42:45 +00:00
create_fpc_export_tgz.sh improved rpm building and added support for 1.0.7 2002-08-17 23:41:28 +00:00
create_fpc_rpm.sh fixed csDashDot 2002-08-18 04:57:01 +00:00
create_fpc_snapshot_tgz.sh fixed readonly check and added script to quick create lazarus snapshot 2003-03-07 11:41:22 +00:00
create_fpc_tgz_from_local_dir.sh fixed readonly check and added script to quick create lazarus snapshot 2003-03-07 11:41:22 +00:00
create_fpcsrc_deb.sh added instructions to create lazarus debian package 2003-02-18 18:42:45 +00:00
create_fpcsrc-1.1_rpm.sh fixes for fpc 1.1 2002-08-17 23:41:26 +00:00
create_lazarus_deb.sh added instructions to create lazarus debian package 2003-02-18 18:42:45 +00:00
create_lazarus_snapshot_tgz.sh fixed readonly check and added script to quick create lazarus snapshot 2003-03-07 11:41:22 +00:00
create_lazarus_tgz_from_local_dir.sh fixed readonly check and added script to quick create lazarus snapshot 2002-08-18 08:55:30 +00:00
fpcsrc-1.0.7-1.spec fixed readonly check and added script to quick create lazarus snapshot 2003-03-07 11:41:22 +00:00
fpcsrc-patch fixed create fpc rpm 2002-08-18 04:56:58 +00:00
fpcsrc.spec fixes for fpc 1.1 2002-08-17 23:41:26 +00:00
lazarus-0.8.5-1.spec added tools for creating rpms 2003-02-08 10:12:23 +00:00
lazarus.spec fixes for fpc 1.1 2002-08-17 23:41:26 +00:00
README fixed readonly check and added script to quick create lazarus snapshot 2003-03-07 11:41:22 +00:00

Installation tools
==================

This document describes how to create the various packages for lazarus
including the required freepascal packages (fpc and fpcsrc).

--------------------------------------------------------------------------------
TGZ

Creating the fpcsrc tgz:

  There are two ways to do it and so there are two scripts. The first downloads
  the fpc cvs and packs it. The second uses an existing fpc cvs directory,
  copies it, remove unnecessary files and packs it. The second script is
  therefore much faster, but it may miss removing all old, unnecessary files.
  
  The download and pack script:
  The script create_fpc_snapshot_tgz.sh makes a cvs export of the
  fpc FIXES_1_0_0 branch and compress it to fpcsrc-1.0.7-1.tgz.

  The copy and pack script:
  The script create_fpc_tgz_from_local_dir.sh needs as parameter the fpc cvs
  directory and compress it to fpcsrc-1.0.7-1.tgz.


Creating the lazarus tgz:

  There are two ways to do it and so there are two scripts. The first downloads
  the fpc cvs and packs it. The second uses an existing fpc cvs directory,
  copies it, remove unnecessary files and packs it. The second script is
  therefore much faster, but it may miss removing all old, unnecessary files.

  The download and pack script:
  The script create_lazarus_snapshot_tgz.sh makes a cvs export of lazarus and
  compress it to lazarus-0.8.5.tgz.
  
  The copy and pack script:
  The script create_lazarus_tgz_from_local_dir.sh needs as parameter the
  lazarus cvs directory and compress it to lazarus-0.8.5.tgz.

--------------------------------------------------------------------------------

RPM:

Creating the fpc rpm:

  As a user of your choice:
  Install the latest fpc package you can get. You will need it to compile the
  compiler itself. Then download the fpc cvs of the FIXES_1_0_0 branch and
  compile the RTL and the compiler with 'make rtl' and 'make compiler'.
  Before you create the rpm, you should define a release tag. Open
  <fpc>/install/fpc.spec and change the Release tag to laz.20030307. The number
  is simply the date, when this README was written. Use the current date.
  The default fpc.cfg is created with the samplecfg script. This is done with a
  fixed fpc version. To create a fpc.cfg, that can be used with the fpc 1.1 and
  with fpc 1.0.x you should change the samplecfg call in <fpc>/install/fpc.spec:
  Search for 'samplecfg' and change the line:
  %{fpcdir}/samplecfg %{_libdir}/fpc/\$version

  As root:
  The fpc and fpcdoc RPMs can be created with 'make rpm'. If you only want to
  create the fpc RPM, then use 'make rpm NODOCS=1'.
  The RPMs are normally created under /usr/src/redhat/RPMS/i386/


Creating the fpcsrc rpm:

  As a user of your choice:
  Create the fpcsrc-1.0.7-1.tgz of 'Creating the fpcsrc tgz'.

  As root:
  Put the fpcsrc-1.0.7-1.tgz into /usr/src/redhat/SOURCES/.
  Run 'rpm -ba fpcsrc-1.0.7-1.spec'. This will create the src rpm and the rpm
  for the current system (e.g. redhat 7.3).
  The src rpm can be used to create rpms for any system by building it on the
  destination system.
  The fpcsrc rpm will simply copy the files into /usr/share/fpcsrc. It does
  not contain any binaries, so the rpm is system independent. The lazarus
  IDE searches the fpc src automatically in /usr/share/fpcsrc and so the user
  does not need to setup this path.
  
  
Creating the lazarus rpm:

  Important:
  If you have created a new fpc RPM, then you should install it before you
  build the lazarus RPM. Otherwise the compiled lazarus RPM is not compatible
  to the fpc RPM.

  As a user of your choice:
  Create the lazarus-0.8.5.tgz of 'Creating the lazarus tgz' and put it into
  /usr/src/redhat/SOURCES/.

  As root:
  Run 'rpm -ba lazarus-0.8.5-1.spec'. This will
  create the src rpm and the rpm for the current system (e.g. redhat 7.3).
  The src rpm can be used to create rpms for any system by building it on the
  destination system (see 5.).
  The package depends on 'fpc >= 1.0.7' and 'fpcsrc >= 1.0.7'.


Creating other system specific rpms:

  rpm --rebuild lazarus-0.8.5-1.src.rpm


--------------------------------------------------------------------------------

Debian:

Creating the debian fpc packages:

  You need the debhelper, tetex-bin, tetex-extra, awk, dvipdfm, latex2html
  packages.
  See install/debian/README.debian for changing /etc/texmf/texmf.cnf.
  Install the latest fpc package you can get. You will need it to compile the
  compiler itself. Then download the fpc cvs of the FIXES_1_0_0 branch and
  compile the RTL and the compiler with 'make rtl' and 'make compiler'.
  The deb packages are created with 'make deb'. This will create a lot of debs
  in /usr/src. The lazarus debs are created by changing the version in
  Makefile.fpc, Makefile and prepending a message to install/debian/changelog.


Creating the debian fpcsrc package:

  You need the fakeroot package.
  Create the fpcsrc-1.0.7.tgz of 'Creating the fpcsrc tgz' and put it into
  tools/install. If you have no permissions for that, just copy the directory
  somewhere (e.g. cp -R <lazarusdir>/tools/install /tmp/fpcsrc).
  Then cd into the tools/install directory and execute the script
  create_fpcsrc_deb.sh. It will create /tmp/fpcsrc_temp/ and will build the
  deb there.
  
  
Creating the debian lazarus package:

  You need the X11 package:
  Create the lazarus-0.8.5.tgz of 'Creating the lazarus tgz' and put it into
  tools/install. If you have no permissions for that, just copy the directory
  somewhere (e.g. cp -R <lazarusdir>/tools/install /tmp/lazarus).
  Then cd into the tools/install directory and execute the script
  create_lazarus_deb.sh. It will create /tmp/lazarus_temp/ and will build the
  deb there.