* Support multiple version installation by adding ability for Debian packages to get their names suffixed. For example, export PACKAGESUFFIX=-0.9.29 to build trunk.

git-svn-id: trunk@28493 -
This commit is contained in:
mazen 2010-11-26 09:51:16 +00:00
parent 21fcb42321
commit 1907de9e03
22 changed files with 513 additions and 154 deletions

5
.gitattributes vendored
View File

@ -2438,10 +2438,10 @@ debian/README.source svneol=native#text/plain
debian/changelog svneol=native#text/plain
debian/compat svneol=native#text/plain
debian/control svneol=native#text/plain
debian/control.in svneol=native#text/plain
debian/copyright svneol=native#text/plain
debian/docs svneol=native#text/plain
debian/fixdeb svneol=native#text/plain
debian/install.sh svneol=native#text/plain
debian/lazarus-doc.doc-base.in svneol=native#text/plain
debian/lazarus-doc.install.in svneol=native#text/plain
debian/lazarus-ide-gtk2.install.in svneol=native#text/plain
@ -2450,6 +2450,7 @@ debian/lazarus-ide-gtk2.prerm.in svneol=native#text/plain
debian/lazarus-ide.install.in svneol=native#text/plain
debian/lazarus-ide.links.in svneol=native#text/plain
debian/lazarus-ide.menu svneol=native#text/plain
debian/lazarus-ide.postinst.in svneol=native#text/plain
debian/lazarus-src.install.in svneol=native#text/plain
debian/lcl-gtk2.install.in svneol=native#text/plain
debian/lcl-nogui.install.in svneol=native#text/plain
@ -2457,6 +2458,8 @@ debian/lcl-qt4.install.in svneol=native#text/plain
debian/lcl-units.install.in svneol=native#text/plain
debian/lcl-utils.install.in svneol=native#text/plain
debian/lcl-utils.links.in svneol=native#text/plain
debian/lcl-utils.postinst.in svneol=native#text/plain
debian/lcl-utils.prerm.in svneol=native#text/plain
debian/orig-tar.sh svneol=native#text/plain
debian/overrides/lazarus svneol=native#text/plain
debian/overrides/lazarus-doc svneol=native#text/plain

328
debian/control.in vendored Normal file
View File

@ -0,0 +1,328 @@
Source: lazarus
Section: devel
Priority: optional
Maintainer: Carlos Laviola <claviola@debian.org>
Uploaders: Torsten Werner <twerner@debian.org>, Abou Al Montacir <abou.almontacir@sfr.fr>
DM-Upload-Allowed: yes
Standards-Version: 3.9.1
Build-Depends: debhelper (>= 7), quilt, fpc (>= 2.2.4-3), fpc-source (>= 2.2.4-3), fp-utils, imagemagick
Vcs-Svn: https://bollin.googlecode.com/svn/lazarus/trunk
Vcs-Browser: http://bollin.googlecode.com/svn/lazarus/trunk
Homepage: http://www.lazarus.freepascal.org
Package: lazarus${PACKAGESUFFIX}
Architecture: all
Depends: ${misc:Depends}, lazarus-ide${PACKAGESUFFIX} (>= ${source:Version}), lazarus-src${PACKAGESUFFIX} (>= ${source:Version}), lazarus-doc${PACKAGESUFFIX} (>= ${source:Version})
Recommends: fpc, fpc-source
Suggests: fp-utils, fp-docs
Description: IDE for Free Pascal - Meta Package
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This is a metapackage depending on all packages need to have a typical
Lazarus installation.
.
Official: http://sourceforge.net/projects/lazarus/
.
Tutorials: http://lazarus-ccr.sourceforge.net
Package: lazarus-src${PACKAGESUFFIX}
Architecture: all
Depends: ${misc:Depends}
Suggests: lazarus-ide${PACKAGESUFFIX}
Description: IDE for Free Pascal - LCL Sources Code
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains lazarus source code necessary for the IDE code tool to
run (retrieving declarations and navigating in code).
Package: lazarus-ide${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, fp-compiler, lazarus-src${PACKAGESUFFIX}, lazarus-ide-gtk${PACKAGESUFFIX} | lazarus-ide-qt${PACKAGESUFFIX}
Recommends: fpc, lcl${PACKAGESUFFIX}, gdb
Suggests: fp-utils
Description: IDE for Free Pascal - Common IDE files
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains the commons files required to run lazarus IDE.
Package: lazarus-ide-gtk2${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, lazarus-ide${PACKAGESUFFIX}
Recommends: fpc, lcl${PACKAGESUFFIX}, gdb
Suggests: fp-utils
Provides: lazarus-ide-gtk${PACKAGESUFFIX}
Breaks: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Replaces: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Description: IDE for Free Pascal - IDE build on top of GTK+ backend
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains the lazarus IDE build on top of GTK+ backend.
Package: lazarus-ide-qt4${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, lazarus-ide${PACKAGESUFFIX}, lazarus-ide-gtk${PACKAGESUFFIX}
Recommends: fpc, lcl${PACKAGESUFFIX}, gdb
Suggests: fp-utils
Provides: lazarus-ide-qt${PACKAGESUFFIX}
Breaks: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Replaces: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Description: IDE for Free Pascal - IDE build on top of QT backend
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package will contain the lazarus IDE build on top of QT backend, however
for now it just depends on gtk based IDE.
Package: lcl${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, lcl-units${PACKAGESUFFIX}, lcl-utils${PACKAGESUFFIX}
Recommends: fpc, lazarus-ide${PACKAGESUFFIX}
Suggests: gdb
Breaks: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Replaces: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Description: Lazarus Components Library - LCL metapackage
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This is a metapackage to ease installing the LCL and components.
Package: lcl-utils${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, fp-compiler
Recommends: lcl${PACKAGESUFFIX}, lazarus-ide${PACKAGESUFFIX}
Breaks: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Replaces: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Description: Lazarus Components Library - Command Line build tools
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains command line tools to ease building LCL applications.
Package: lcl-units${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, ${fpc-abi:Depends}, lcl-gtk2${PACKAGESUFFIX} | lcl-gtk${PACKAGESUFFIX} | lcl-qt${PACKAGESUFFIX}
Recommends: lazarus-ide${PACKAGESUFFIX}, fpc
Suggests: gdb
Provides: lcl-${source:Upstream-Version}${PACKAGESUFFIX}, lcl-${source:Version}${PACKAGESUFFIX}
Breaks: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Replaces: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Description: Lazarus Components Library - Backend independent components
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains the LCL and components.
Package: lcl-nogui${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, ${fpc-abi:Depends}, fp-units-rtl, fp-units-base, fp-units-fcl
Recommends: lazarus-ide${PACKAGESUFFIX}, fpc
Suggests: gdb
Breaks: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Replaces: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Description: Lazarus Components Library - No GUI backend
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains the LCL and components no GUI based backend for command
line tools and non graphical applications.
Package: lcl-gtk2${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, ${fpc-abi:Depends}, fp-units-rtl, fp-units-base, fp-units-fcl, fp-units-gtk2
Recommends: lazarus-ide${PACKAGESUFFIX}, fpc
Suggests: gdb
Provides: lcl-gtk${PACKAGESUFFIX}
Breaks: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Replaces: lazarus-ide${PACKAGESUFFIX} (<= 0.9.28.2-2)
Description: Lazarus Components Library - GTK+ backend
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains the LCL and components GTK+ based backend.
Package: lcl-qt4${PACKAGESUFFIX}
Architecture: i386 powerpc sparc amd64 armel
Depends: ${misc:Depends}, ${shlibs:Depends}, ${fpc-abi:Depends}, fp-units-rtl, fp-units-base, fp-units-fcl, libqt4pas-dev
Recommends: lazarus-ide${PACKAGESUFFIX}, fpc
Suggests: gdb
Provides: lcl-qt${PACKAGESUFFIX}
Description: Lazarus Components Library - QT backend
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains the LCL and components Qt based backend. Actually this is
an empty package but will not be in the future.
Package: lazarus-doc${PACKAGESUFFIX}
Section: doc
Architecture: all
Depends: ${misc:Depends}
Suggests: lazarus-ide${PACKAGESUFFIX}
Description: IDE for Free Pascal - Documentation
Lazarus is an IDE to create (graphical and console) applications with Free
Pascal. Free Pascal is a (L)GPL'ed Pascal and Object Pascal compiler that runs
on Windows, Linux, Mac OS X, FreeBSD and more.
.
Lazarus is the missing part of the puzzle that will allow you to develop
programs for all of the above platforms in a Delphi like environment.
The IDE is a RAD tool that includes a form designer.
.
Unlike Java's "write once, run anywhere" motto, Lazarus and Free Pascal
strive for "write once, compile anywhere". Since the exact same compiler
is available on all of the above platforms you don't need to do any recoding
to produce identical products for different platforms.
.
In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus
Component Library (LCL).
.
This package contains documentation of the lazarus IDE and components. It can
be viewed separately with any HTML browser or used by the IDE to as an
integrated help (pressing <F1> on any LCL identifier will browse the help of
that identifier).

24
debian/fixdeb vendored
View File

@ -6,25 +6,23 @@
# $2 = fpc target (i386-linux)
# $3 = ppcXXX binary name (ppc386)
#
#set -x
if [ $# != 2 ]; then
echo 'Usage : fixdeb path fpctarget'
echo 'Usage : fixdeb <path> <fpctarget>'
exit 1
fi
PACKAGEVERSION=`dpkg-parsechangelog | sed -ne's,^Version: \(.*\),\1,p'`
LAZARUSVERSION=`echo $PACKAGEVERSION | sed -ne's,^\([0-9.]*\).*,\1,p'`
DEBVERSION=`echo $PACKAGEVERSION | awk -F '-' '{ print $NF }'`
FPCSVNPATH=`echo $FPCVERSION | awk -F '.' '{ print "release_"$1"_"$2"_"$3 }'`
FPCTARGET="$2"
DEB_SUBST_PACKAGEVERSION=`dpkg-parsechangelog | sed -ne's,^Version: \(.*\),\1,p'`
DEB_SUBST_VERSION=`echo $DEB_SUBST_PACKAGEVERSION | sed -ne's,^\([0-9.]*\).*,\1,p'`
DEB_SUBST_DEBVERSION=`echo $DEB_SUBST_PACKAGEVERSION | awk -F '-' '{ print $NF }'`
DEB_SUBST_SVNPATH=`echo $DEB_SUBST_VERSION | awk -F '.' '{ print "release_"$1"_"$2"_"$3 }'`
DEB_SUBST_TARGET="$2"
DEB_SUBST_PACKAGESUFFIX=${PACKAGESUFFIX}
echo 'PackageVersion: ' $PACKAGEVERSION
echo 'FPCVersion : ' $FPCVERSION
echo 'FPCTarget : ' $FPCTARGET
echo 'DebVersion : ' $DEBVERSION
echo 'SVNPath : ' $FPCSVNPATH
SUBST_CMD=`set | sed -n -e 's/^DEB_SUBST_\([A-Z_]\+\)=\(.*\)/-e s@\${\1}@\2@g/p'`
for i in $1/*.in
do
j=$1/$(basename $i .in)
sed -e 's/%{lazarusversion}/'$LAZARUSVERSION'/g;s/%{packageversion}/'$PACKAGEVERSION'/g;s/%{fpctarget}/'$FPCTARGET'/g;s/%{fpcsvnpath}/'$FPCSVNPATH'/g' $i > $j
j=`basename ${i} .in`
sed ${SUBST_CMD} ${i} > $1/${j/./${PACKAGESUFFIX}.}
done

18
debian/install.sh vendored
View File

@ -1,18 +0,0 @@
#!/bin/bash
LazDebDir=$(pwd)/debian/lazarus/
#Copy Lazarus to /usr/share
mkdir -p $LazDebDir/usr/share/lazarus
cp -R $(pwd)/* $LazDebDir/usr/share/lazarus
#Make icons and menu-entries for the gnome menu
mkdir -p $LazDebDir/usr/share/pixmaps/
mkdir -p $LazDebDir/usr/share/gnome/apps/Development/
mkdir -p $LazDebDir/usr/bin/
install -m 644 $(pwd)/images/ide_icon48x48.png $LazDebDir/usr/share/pixmaps/lazarus.png
install -m 644 $(pwd)/gnome.ide.desktop $LazDebDir/usr/share/gnome/apps/Development/lazarus.desktop
#Make a symlink to /usr/bin
cd $LazDebDir
ln usr/share/lazarus/lazarus usr/bin/lazarus

View File

@ -1,4 +1,4 @@
Document: lazarus-doc
Document: lazarus-doc${PACKAGESUFFIX}
Title: Lazarus Components Library (LCL) Documentation
Author: Michael van Canneyt
Abstract: Documentation for the Lazarus Components Library (LCL).
@ -6,5 +6,5 @@ Abstract: Documentation for the Lazarus Components Library (LCL).
Section: Programming
Format: html
Files: /usr/share/doc/lazarus/*
Index: /usr/share/doc/lazarus/%{lazarusversion}/index.html
Files: /usr/share/doc/lazarus/${VERSION}/*
Index: /usr/share/doc/lazarus/${VERSION}/index.html

View File

@ -1,3 +1,3 @@
/usr/share/doc/lazarus/%{lazarusversion}/index.html
/usr/share/doc/lazarus/%{lazarusversion}/images
/usr/share/doc/lazarus/%{lazarusversion}/lcl
/usr/share/doc/lazarus/${VERSION}/index.html
/usr/share/doc/lazarus/${VERSION}/images
/usr/share/doc/lazarus/${VERSION}/lcl

View File

@ -1 +1 @@
/usr/lib/lazarus/%{lazarusversion}/lazarus-gtk2
/usr/lib/lazarus/${VERSION}/lazarus-gtk2

View File

@ -2,11 +2,11 @@
set -e
LAZARUS_DIR=/usr/lib/lazarus/%{lazarusversion}
LAZARUS_DIR=/usr/lib/lazarus/${VERSION}
# add alternative
# Add alternatives
update-alternatives \
--install ${LAZARUS_DIR}/lazarus lazarus ${LAZARUS_DIR}/lazarus-gtk2 20 \
--install ${LAZARUS_DIR}/lazarus lazarus-${VERSION} ${LAZARUS_DIR}/lazarus-gtk2 20
# Debhelper code
#DEBHELPER#

View File

@ -2,9 +2,9 @@
set -e
LAZARUS_DIR=/usr/lib/lazarus/%{lazarusversion}
LAZARUS_DIR=/usr/lib/lazarus/${VERSION}
# remove alternative
# Remove alternatives
update-alternatives --remove lazarus ${LAZARUS_DIR}/lazarus-gtk2
# Debhelper code

View File

@ -1,10 +1,10 @@
/usr/lib/lazarus/%{lazarusversion}/docs/Contributors.txt
/usr/lib/lazarus/%{lazarusversion}/docs/contributors.utf8
/usr/lib/lazarus/%{lazarusversion}/docs/acknowledgements.txt
/usr/lib/lazarus/%{lazarusversion}/examples
/usr/lib/lazarus/%{lazarusversion}/languages
/usr/lib/lazarus/%{lazarusversion}/startlazarus
/usr/lib/lazarus/${VERSION}/docs/Contributors.txt
/usr/lib/lazarus/${VERSION}/docs/contributors.utf8
/usr/lib/lazarus/${VERSION}/docs/acknowledgements.txt
/usr/lib/lazarus/${VERSION}/examples
/usr/lib/lazarus/${VERSION}/languages
/usr/lib/lazarus/${VERSION}/startlazarus
/usr/share/applications
/usr/share/man/man1/lazarus-ide.1
/usr/share/man/man1/startlazarus.1
/usr/share/man/man1/lazarus-ide-${VERSION}.1
/usr/share/man/man1/startlazarus-${VERSION}.1
/usr/share/pixmaps

View File

@ -1,2 +1,2 @@
/usr/lib/lazarus/%{lazarusversion}/startlazarus /usr/bin/startlazarus
/usr/lib/lazarus/%{lazarusversion}/startlazarus /usr/bin/lazarus-ide
/usr/lib/lazarus/${VERSION}/startlazarus /usr/bin/startlazarus-${VERSION}
/usr/lib/lazarus/${VERSION}/startlazarus /usr/bin/lazarus-ide-${VERSION}

12
debian/lazarus-ide.postinst.in vendored Normal file
View File

@ -0,0 +1,12 @@
#! /bin/sh
set -e
LAZARUS_DIR=/usr/lib/lazarus/${VERSION}
# Add alternatives
update-alternatives \
--install /usr/share/pixmaps/lazarus.xpm lazarus.xpm /usr/share/pixmaps/lazarus-${VERSION}.xpm 20
# Debhelper code
#DEBHELPER#

View File

@ -1,16 +1,16 @@
/usr/lib/lazarus/%{lazarusversion}/Makefile
/usr/lib/lazarus/%{lazarusversion}/Makefile.fpc
/usr/lib/lazarus/%{lazarusversion}/components
/usr/lib/lazarus/%{lazarusversion}/debugger
/usr/lib/lazarus/%{lazarusversion}/examples
/usr/lib/lazarus/%{lazarusversion}/ide
/usr/lib/lazarus/%{lazarusversion}/images
/usr/lib/lazarus/%{lazarusversion}/lcl
/usr/lib/lazarus/%{lazarusversion}/designer
/usr/lib/lazarus/%{lazarusversion}/packager
/usr/lib/lazarus/%{lazarusversion}/test
/usr/lib/lazarus/%{lazarusversion}/doceditor
/usr/lib/lazarus/%{lazarusversion}/ideintf
/usr/lib/lazarus/%{lazarusversion}/tools
/usr/lib/lazarus/%{lazarusversion}/converter
/usr/lib/lazarus/${VERSION}/Makefile
/usr/lib/lazarus/${VERSION}/Makefile.fpc
/usr/lib/lazarus/${VERSION}/components
/usr/lib/lazarus/${VERSION}/debugger
/usr/lib/lazarus/${VERSION}/examples
/usr/lib/lazarus/${VERSION}/ide
/usr/lib/lazarus/${VERSION}/images
/usr/lib/lazarus/${VERSION}/lcl
/usr/lib/lazarus/${VERSION}/designer
/usr/lib/lazarus/${VERSION}/packager
/usr/lib/lazarus/${VERSION}/test
/usr/lib/lazarus/${VERSION}/doceditor
/usr/lib/lazarus/${VERSION}/ideintf
/usr/lib/lazarus/${VERSION}/tools
/usr/lib/lazarus/${VERSION}/converter

View File

@ -1 +1 @@
/usr/lib/lazarus/%{lazarusversion}/lcl/units/*/gtk2
/usr/lib/lazarus/${VERSION}/lcl/units/*/gtk2

View File

@ -1 +1 @@
/usr/lib/lazarus/%{lazarusversion}/lcl/units/*/nogui
/usr/lib/lazarus/${VERSION}/lcl/units/*/nogui

View File

@ -1 +1 @@
#/usr/lib/lazarus/%{lazarusversion}/lcl/units/*/qt
#/usr/lib/lazarus/${VERSION}/lcl/units/*/qt

View File

@ -1,46 +1,45 @@
/usr/lib/lazarus/%{lazarusversion}/components/codetools
#/usr/lib/lazarus/%{lazarusversion}/components/custom
/usr/lib/lazarus/%{lazarusversion}/components/jcf2
#/usr/lib/lazarus/%{lazarusversion}/components/rx
#/usr/lib/lazarus/%{lazarusversion}/components/sqlite
/usr/lib/lazarus/%{lazarusversion}/components/fpcunit
/usr/lib/lazarus/%{lazarusversion}/components/memds
/usr/lib/lazarus/%{lazarusversion}/components/sqldb
/usr/lib/lazarus/%{lazarusversion}/components/printers
/usr/lib/lazarus/%{lazarusversion}/components/projecttemplates
/usr/lib/lazarus/%{lazarusversion}/components/rtticontrols
/usr/lib/lazarus/%{lazarusversion}/components/sdf
/usr/lib/lazarus/%{lazarusversion}/components/synedit
#/usr/lib/lazarus/%{lazarusversion}/components/synunihighlighter
/usr/lib/lazarus/%{lazarusversion}/components/tachart
/usr/lib/lazarus/%{lazarusversion}/components/tdbf
/usr/lib/lazarus/%{lazarusversion}/components/turbopower_ipro
#/usr/lib/lazarus/%{lazarusversion}/components/lazreport
/usr/lib/lazarus/%{lazarusversion}/components/lazcontrols
#/usr/lib/lazarus/%{lazarusversion}/components/chmhelp
#/usr/lib/lazarus/%{lazarusversion}/components/macfiles
#/usr/lib/lazarus/%{lazarusversion}/components/mpaslex
#/usr/lib/lazarus/%{lazarusversion}/components/opengl
#/usr/lib/lazarus/%{lazarusversion}/components/dbexport
#/usr/lib/lazarus/%{lazarusversion}/components/popupnotifier
#/usr/lib/lazarus/%{lazarusversion}/components/simpleideintf
#/usr/lib/lazarus/%{lazarusversion}/components/daemon
#/usr/lib/lazarus/%{lazarusversion}/components/fpweb
#/usr/lib/lazarus/%{lazarusversion}/components/editortoolbar
#/usr/lib/lazarus/%{lazarusversion}/components/prettymessages
#/usr/lib/lazarus/%{lazarusversion}/components/lazthread
#/usr/lib/lazarus/%{lazarusversion}/components/datadict
#/usr/lib/lazarus/%{lazarusversion}/components/customform
#/usr/lib/lazarus/%{lazarusversion}/components/prettyformat
#/usr/lib/lazarus/%{lazarusversion}/components/h2pas
#/usr/lib/lazarus/%{lazarusversion}/components/images
#/usr/lib/lazarus/%{lazarusversion}/converter
#/usr/lib/lazarus/%{lazarusversion}/debugger
#/usr/lib/lazarus/%{lazarusversion}/doceditor
#/usr/lib/lazarus/%{lazarusversion}/ide
/usr/lib/lazarus/%{lazarusversion}/ideintf
/usr/lib/lazarus/%{lazarusversion}/lcl/units/*/*.ppu
/usr/lib/lazarus/%{lazarusversion}/lcl/units/*/*.o
/usr/lib/lazarus/%{lazarusversion}/lcl/units/*/*.lfm
/usr/lib/lazarus/%{lazarusversion}/packager
/usr/lib/lazarus/%{lazarusversion}/units
/usr/lib/lazarus/${VERSION}/components/codetools
#/usr/lib/lazarus/${VERSION}/components/custom
/usr/lib/lazarus/${VERSION}/components/jcf2
#/usr/lib/lazarus/${VERSION}/components/rx
#/usr/lib/lazarus/${VERSION}/components/sqlite
/usr/lib/lazarus/${VERSION}/components/fpcunit
/usr/lib/lazarus/${VERSION}/components/memds
/usr/lib/lazarus/${VERSION}/components/sqldb
/usr/lib/lazarus/${VERSION}/components/printers
/usr/lib/lazarus/${VERSION}/components/projecttemplates
/usr/lib/lazarus/${VERSION}/components/rtticontrols
/usr/lib/lazarus/${VERSION}/components/sdf
/usr/lib/lazarus/${VERSION}/components/synedit
#/usr/lib/lazarus/${VERSION}/components/synunihighlighter
/usr/lib/lazarus/${VERSION}/components/tachart
/usr/lib/lazarus/${VERSION}/components/tdbf
/usr/lib/lazarus/${VERSION}/components/turbopower_ipro
#/usr/lib/lazarus/${VERSION}/components/lazreport
/usr/lib/lazarus/${VERSION}/components/lazcontrols
#/usr/lib/lazarus/${VERSION}/components/chmhelp
#/usr/lib/lazarus/${VERSION}/components/macfiles
#/usr/lib/lazarus/${VERSION}/components/mpaslex
#/usr/lib/lazarus/${VERSION}/components/opengl
#/usr/lib/lazarus/${VERSION}/components/dbexport
#/usr/lib/lazarus/${VERSION}/components/popupnotifier
#/usr/lib/lazarus/${VERSION}/components/simpleideintf
#/usr/lib/lazarus/${VERSION}/components/daemon
#/usr/lib/lazarus/${VERSION}/components/fpweb
#/usr/lib/lazarus/${VERSION}/components/editortoolbar
#/usr/lib/lazarus/${VERSION}/components/prettymessages
#/usr/lib/lazarus/${VERSION}/components/lazthread
#/usr/lib/lazarus/${VERSION}/components/datadict
#/usr/lib/lazarus/${VERSION}/components/customform
#/usr/lib/lazarus/${VERSION}/components/prettyformat
#/usr/lib/lazarus/${VERSION}/components/h2pas
#/usr/lib/lazarus/${VERSION}/components/images
#/usr/lib/lazarus/${VERSION}/converter
#/usr/lib/lazarus/${VERSION}/debugger
#/usr/lib/lazarus/${VERSION}/doceditor
#/usr/lib/lazarus/${VERSION}/ide
/usr/lib/lazarus/${VERSION}/ideintf
/usr/lib/lazarus/${VERSION}/lcl/units/*/*.ppu
/usr/lib/lazarus/${VERSION}/lcl/units/*/*.o
/usr/lib/lazarus/${VERSION}/packager
/usr/lib/lazarus/${VERSION}/units

View File

@ -1,8 +1,8 @@
/etc/lazarus
/usr/lib/lazarus/%{lazarusversion}/lazbuild
/usr/lib/lazarus/%{lazarusversion}/tools
/usr/share/man/man1/lazbuild.1
/usr/share/man/man1/lazres.1
/usr/share/man/man1/lrstolfm.1
/usr/share/man/man1/svn2revisioninc.1
/usr/share/man/man1/updatepofiles.1
/etc/lazarus-${VERSION}
/usr/lib/lazarus/${VERSION}/lazbuild
/usr/lib/lazarus/${VERSION}/tools
/usr/share/man/man1/lazbuild-${VERSION}.1
/usr/share/man/man1/lazres-${VERSION}.1
/usr/share/man/man1/lrstolfm-${VERSION}.1
/usr/share/man/man1/svn2revisioninc-${VERSION}.1
/usr/share/man/man1/updatepofiles-${VERSION}.1

View File

@ -1,5 +1,5 @@
/usr/lib/lazarus/%{lazarusversion}/lazbuild /usr/bin/lazbuild
/usr/lib/lazarus/%{lazarusversion}/tools/lazres /usr/bin/lazres
/usr/lib/lazarus/%{lazarusversion}/tools/lrstolfm /usr/bin/lrstolfm
/usr/lib/lazarus/%{lazarusversion}/tools/svn2revisioninc /usr/bin/svn2revisioninc
/usr/lib/lazarus/%{lazarusversion}/tools/updatepofiles /usr/bin/updatepofiles
/usr/lib/lazarus/${VERSION}/lazbuild /usr/bin/lazbuild-${VERSION}
/usr/lib/lazarus/${VERSION}/tools/lazres /usr/bin/lazres-${VERSION}
/usr/lib/lazarus/${VERSION}/tools/lrstolfm /usr/bin/lrstolfm-${VERSION}
/usr/lib/lazarus/${VERSION}/tools/svn2revisioninc /usr/bin/svn2revisioninc-${VERSION}
/usr/lib/lazarus/${VERSION}/tools/updatepofiles /usr/bin/updatepofiles-${VERSION}

24
debian/lcl-utils.postinst.in vendored Normal file
View File

@ -0,0 +1,24 @@
#! /bin/sh
set -e
LAZARUS_DIR=/usr/lib/lazarus/${VERSION}
MAN_DIR=/usr/share/man/man1
# Add alternatives
update-alternatives \
--install /usr/lib/lazarus/default lazarus ${LAZARUS_DIR} 20 \
--slave /etc/lazarus lazarus.cfg /etc/lazarus-${VERSION} \
--slave /usr/bin/lazbuild lazbuild ${LAZARUS_DIR}/lazbuild \
--slave ${MAN_DIR}/lazbuild.1.gz lazbuild.1.gz ${MAN_DIR}/lazbuild-${VERSION}.1.gz \
--slave /usr/bin/lazres lazres ${LAZARUS_DIR}/tools/lazres \
--slave ${MAN_DIR}/lazre.1.gzs lazres.1.gz ${MAN_DIR}/lazres-${VERSION}.1.gz \
--slave /usr/bin/lrstolfm lrstolfm ${LAZARUS_DIR}/tools/lrstolfm \
--slave ${MAN_DIR}/lrstolfm.1.gz lrstolfm.1.gz ${MAN_DIR}/lrstolfm-${VERSION}.1.gz \
--slave /usr/bin/svn2revisioninc svn2revisioninc ${LAZARUS_DIR}/tools/svn2revisioninc \
--slave ${MAN_DIR}/svn2revisioninc.1.gz svn2revisioninc.1.gz ${MAN_DIR}/svn2revisioninc-${VERSION}.1.gz \
--slave /usr/bin/updatepofiles updatepofiles ${LAZARUS_DIR}/tools/updatepofiles \
--slave ${MAN_DIR}/updatepofiles.1.gz updatepofiles.1.gz ${MAN_DIR}/updatepofiles-${VERSION}.1.gz
# Debhelper code
#DEBHELPER#

11
debian/lcl-utils.prerm.in vendored Normal file
View File

@ -0,0 +1,11 @@
#! /bin/sh
set -e
LAZARUS_DIR=/usr/lib/lazarus/${VERSION}
# Remove alternatives
update-alternatives --remove lazbuild ${LAZARUS_DIR}/lazbuild
# Debhelper code
#DEBHELPER#

48
debian/rules vendored
View File

@ -39,13 +39,10 @@ endif
ifndef CP
CP=cp -Rfpl
endif
RM:=rm -rf
ifndef LAZBUILD
LAZBUILD=${CURDIR}/lazbuild
ifndef MV
MV=mv
endif
# Set default compilation options
BUILDOPTS=
INSTALLOPTS=INSTALL_PREFIX=$(INSTALL_DIR)/usr
RM:=rm -rf
# Get fpcmake from path if none is specified.
ifndef FPCMAKE
FPCMAKE=fpcmake
@ -54,6 +51,12 @@ endif
ifndef FPCDIR
export FPCDIR=/usr/share/fpcsrc/${FPCVER}
endif
ifndef LAZBUILD
LAZBUILD=${CURDIR}/lazbuild
endif
# Set default compilation options
BUILDOPTS=
INSTALLOPTS=INSTALL_PREFIX=$(INSTALL_DIR)/usr
# Configure patch system
include /usr/share/quilt/quilt.make
@ -83,7 +86,7 @@ clean-patched:
$(MAKE) distclean ${BUILDOPTS}
$(MAKE) -C docs/html clean
find -regex '.*\.\(a\|or?\|so\.*\|ppu\)' -delete
dh_prep
###################
# Debian files
@ -118,7 +121,7 @@ build-arch-stamp:
dh_testdir
$(MAKE) lcl packager/registration ideintf bigidecomponents examples $(BUILDOPTS)
$(MAKE) bigide USESVN2REVISIONINC=0 $(BUILDOPTS)
mv $(CURDIR)/lazarus $(CURDIR)/lazarus-gtk2
${MV} $(CURDIR)/lazarus $(CURDIR)/lazarus-gtk2
$(MAKE) lazbuilder $(BUILDOPTS)
$(MAKE) tools $(BUILDOPTS)
touch build-arch-stamp
@ -128,7 +131,6 @@ install-arch-stamp:
@echo "--- Installing"
dh_testdir
dh_testroot
dh_prep
dh_installdirs
# create all necessary directories
install -d $(INSTALL_DIR)/usr/bin
@ -152,15 +154,16 @@ install-arch-stamp:
# copy icons and menu entries for the GNOME menu
install -d $(INSTALL_DIR)/usr/share/pixmaps
install -d $(INSTALL_DIR)/usr/share/applications
convert -geometry 32x32 $(CURDIR)/images/ide_icon48x48.png $(INSTALL_DIR)/usr/share/pixmaps/lazarus.xpm
convert -geometry 32x32 $(CURDIR)/images/ide_icon48x48.png $(INSTALL_DIR)/usr/share/pixmaps/lazarus-${DEB_UPSTREAM_MAIN_VERSION}.xpm
chmod 644 $(INSTALL_DIR)/usr/share/pixmaps/*.xpm
install -m 644 $(CURDIR)/install/lazarus.desktop $(INSTALL_DIR)/usr/share/applications/lazarus.desktop
install -m 644 $(CURDIR)/install/lazarus.desktop $(INSTALL_DIR)/usr/share/applications/lazarus-${DEB_UPSTREAM_MAIN_VERSION}.desktop
# Install man pages
$(MAKE) -C install/man installman $(INSTALLOPTS) INSTALL_PREFIX=$(INSTALL_DIR)/usr/share
test -z ${PACKAGESUFFIX} || for s in 1 2 3 4 5 6 7 8 9 ; do test -d ${INSTALL_DIR}/usr/share/man/man$${s} && for f in ${INSTALL_DIR}/usr/share/man/man$${s}/*.? ; do n=`basename $${f}` ; ${MV} $${f} `dirname $${f}`/$${n%%.*}${PACKAGESUFFIX}."$${n#*.}" ; done ; done || true
# Install configuration files
${MKDIR} $(INSTALL_DIR)/etc/lazarus
fpcsubst -d LazarusVersion=${DEB_UPSTREAM_MAIN_VERSION} -i ${CURDIR}/tools/install/linux/environmentoptions.xml -o $(INSTALL_DIR)/etc/lazarus/environmentoptions.xml
fpcsubst -d LazarusVersion=${DEB_UPSTREAM_MAIN_VERSION} -i ${CURDIR}/tools/install/linux/helpoptions.xml -o $(INSTALL_DIR)/etc/lazarus/helpoptions.xml
${MKDIR} $(INSTALL_DIR)/etc/lazarus-${DEB_UPSTREAM_MAIN_VERSION}
fpcsubst -d LazarusVersion=${DEB_UPSTREAM_MAIN_VERSION} -i ${CURDIR}/tools/install/linux/environmentoptions.xml -o $(INSTALL_DIR)/etc/lazarus-${DEB_UPSTREAM_MAIN_VERSION}/environmentoptions.xml
fpcsubst -d LazarusVersion=${DEB_UPSTREAM_MAIN_VERSION} -i ${CURDIR}/tools/install/linux/helpoptions.xml -o $(INSTALL_DIR)/etc/lazarus-${DEB_UPSTREAM_MAIN_VERSION}/helpoptions.xml
# Install contributer list
install -d $(INSTALL_DIR)/usr/lib/lazarus/${DEB_UPSTREAM_MAIN_VERSION}/docs
${CP} -t $(INSTALL_DIR)/usr/lib/lazarus/${DEB_UPSTREAM_MAIN_VERSION}/docs \
@ -168,11 +171,11 @@ install-arch-stamp:
$(CURDIR)/docs/contributors.utf8 \
$(CURDIR)/docs/acknowledgements.txt
# Install lintian override files
set -x; cd debian/overrides ; for PACKAGE in * ; do \
if [ -d ../$${PACKAGE} ] ; \
set -x -e ; cd debian/overrides ; for PACKAGE in * ; do \
if [ -d ../$${PACKAGE}${PACKAGESUFFIX} ] ; \
then \
install -m644 -D $${PACKAGE} \
../$${PACKAGE}/usr/share/lintian/overrides/$${PACKAGE} ; \
${MKDIR} ../$${PACKAGE}${PACKAGESUFFIX}/usr/share/lintian/overrides ; \
sed -e "s/$${PACKAGE}/&${PACKAGESUFFIX}/g" $${PACKAGE} > ../$${PACKAGE}${PACKAGESUFFIX}/usr/share/lintian/overrides/$${PACKAGE}${PACKAGESUFFIX} ; \
fi ; \
done
find ${INSTALL_DIR} -empty -delete
@ -205,7 +208,6 @@ install-doc-stamp:
@echo "--- Installing Documentation"
dh_testdir
dh_testroot
dh_prep
${MAKE} -C docs/html ${DOCTYPE}install INSTALL_PREFIX=${INSTALL_DIR}/usr INSTALL_DOCDIR=${DOC_DIR}
cd docs ; ${CP} --parents -t ${DOC_DIR} \
index.html \
@ -264,11 +266,11 @@ binary-indep: clean-patched build-doc install-doc install-source debian-files
dh_installchangelogs -i
dh_install -i --sourcedir=debian/tmp --list-missing
# Install lintian override files
set -x; cd debian/overrides ; for PACKAGE in * ; do \
if [ -d ../$${PACKAGE} ] ; \
set -x -e ; cd debian/overrides ; for PACKAGE in * ; do \
if [ -d ../$${PACKAGE}${PACKAGESUFFIX} ] ; \
then \
install -m644 -D $${PACKAGE} \
../$${PACKAGE}/usr/share/lintian/overrides/$${PACKAGE} ; \
${MKDIR} ../$${PACKAGE}${PACKAGESUFFIX}/usr/share/lintian/overrides ; \
sed -e "s/$${PACKAGE}/&${PACKAGESUFFIX}/g" $${PACKAGE} > ../$${PACKAGE}${PACKAGESUFFIX}/usr/share/lintian/overrides/$${PACKAGE}${PACKAGESUFFIX} ; \
fi ; \
done
dh_compress -i -X.pdf