diff --git a/.gitattributes b/.gitattributes index 26dbff3d69..0dd2a30f15 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1494,6 +1494,7 @@ debian/dirs svneol=native#text/plain debian/docs svneol=native#text/plain debian/install.sh svneol=native#text/plain debian/lazarus-doc.install svneol=native#text/plain +debian/lazarus-ide.conffiles svneol=native#text/plain debian/lazarus-ide.install svneol=native#text/plain debian/lazarus-ide.links svneol=native#text/plain debian/lazarus-ide.menu svneol=native#text/plain @@ -1503,6 +1504,7 @@ debian/links svneol=native#text/plain debian/menu svneol=native#text/plain debian/move-usr-lib.sh svneol=native#text/plain debian/orig-tar.sh svneol=native#text/plain +debian/overrides/lazarus-src svneol=native#text/plain debian/patches/00list svneol=native#text/plain debian/patches/01_topmakefile.dpatch svneol=native#text/plain debian/patches/02_components.dpatch svneol=native#text/plain diff --git a/debian/changelog b/debian/changelog index e76d6f0dc2..8f51d71396 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,26 +2,38 @@ lazarus (0.9.27-0) unstable; urgency=low * Snapshot building. - -- Mazen Neifer Fri, 26 Sep 2008 13:47:00 +0200 + -- Mazen Neifer Thu, 06 Nov 2008 13:45:00 +0100 -lazarus (0.9.26-0) unstable; urgency=low +lazarus (0.9.26-2) unstable; urgency=low + * Removed leading "Lazarus is a" from Description field. (Closes: #502786) + * Put system wide configuration file in conffiles to avoid loosing user's + customizations. + * Added svn2revision to packaged binaries needed by Lazarus when rebuilding + itself after installation of new components. (Closes: #501049) + * Added contributers list to lazarus-ide packages as they are needed by the + about dialog. + * Fixed dependencies in rules file speeding package generation by avoiding + rebuilding binaries up to four times. + + -- Mazen Neifer Sun, 04 Nov 2008 00:22:00 +0100 + +lazarus (0.9.26-1) unstable; urgency=low + + [ Mazen Neifer ] * New upstream version. - - -- Mazen Neifer Fri, 26 Sep 2008 13:47:00 +0200 - -lazarus (0.9.25-0) unstable; urgency=low - - * Merged debian rules with official debian svn. - - -- Mazen Neifer Fri, 09 May 2008 00:58:40 +0200 - -lazarus (0.9.24-0-13) unstable; urgency=low - - * Fixed linitian error due to initial sources containing debian/files. + * Fixed lintian error due to initial sources containing debian/files. * Fixed find expression precedence in clean target. + * About dialog box will display version with Debian build number and the + upstream svn revision. - -- Mazen Neifer Mon, 31 Aug 2008 16:29:00 +0200 + [ Torsten Werner ] + * Add Build-Depends: fp-utils (ships fpcmake). + * Bump up Standards-Version: 3.8.0 (no changes). + * Build orig tarball from subversion export because the files at sourceforge + are broken. + + -- Torsten Werner Sun, 12 Oct 2008 12:09:58 +0200 lazarus (0.9.24-0-12) unstable; urgency=low diff --git a/debian/control b/debian/control index ed9ac44f02..e3290a3f43 100644 --- a/debian/control +++ b/debian/control @@ -2,10 +2,10 @@ Source: lazarus Section: devel Priority: optional Maintainer: Carlos Laviola -Uploaders: Torsten Werner , Mazen Neifer -Standards-Version: 3.7.3 +Uploaders: Torsten Werner , Mazen Neifer +Standards-Version: 3.8.0 Build-Depends: debhelper (>= 5), dpatch, fpc (>= 2.2.2-3), fpc-source (>= 2.2.2-3), - fp-units-i386 [i386], imagemagick, libgdk-pixbuf-dev + fp-units-i386 [i386], fp-utils, imagemagick, libgdk-pixbuf-dev Vcs-Svn: https://bollin.googlecode.com/svn/lazarus/trunk Vcs-Browser: http://bollin.googlecode.com/svn/lazarus/trunk Homepage: http://www.lazarus.freepascal.org @@ -16,9 +16,10 @@ Pre-Depends: dpkg (>= 1.10.24) Depends: lazarus-ide, lazarus-src, lazarus-doc Recommends: fpc, fpc-source Suggests: fp-utils, fp-docs -Description: 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. +Description: IDE for Free Pascal to create (graphical and console) applications + 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. @@ -32,7 +33,7 @@ Description: Lazarus is an IDE to create (graphical and console) applications In short, Lazarus is a free RAD tool for Free Pascal using its Lazarus Component Library (LCL). . - This is a meta-package depending on all packages need to have a typical + This is a metapackage depending on all packages need to have a typical Lazarus installation. . Official: http://sourceforge.net/projects/lazarus/ @@ -44,9 +45,9 @@ Package: lazarus-src Section: devel Architecture: all Pre-Depends: dpkg (>= 1.10.24) -Description: 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. +Description: 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. @@ -72,9 +73,9 @@ Depends: ${shlibs:Depends}, fp-compiler (>= 2.2.2-3), fp-units-base, fp-units-rt Recommends: fp-units-db, fp-units-gfx, fp-units-gnome1, fp-units-misc, fp-units-net, fpc-source, gdb Suggests: fp-utils -Description: 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. +Description: 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. @@ -93,9 +94,9 @@ Description: Lazarus is an IDE to create (graphical and console) applications Package: lazarus-doc Section: doc Architecture: all -Description: 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. +Description: 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. diff --git a/debian/lazarus-ide.conffiles b/debian/lazarus-ide.conffiles new file mode 100644 index 0000000000..1b4782ee0b --- /dev/null +++ b/debian/lazarus-ide.conffiles @@ -0,0 +1 @@ +/etc/lazarus/environmentoptions.xml diff --git a/debian/lazarus-ide.install b/debian/lazarus-ide.install index 1b4e37df19..fb6dcbbaeb 100644 --- a/debian/lazarus-ide.install +++ b/debian/lazarus-ide.install @@ -40,6 +40,9 @@ #/usr/lib/lazarus/converter #/usr/lib/lazarus/debugger /usr/lib/lazarus/designer +/usr/lib/lazarus/docs/Contributors.txt +/usr/lib/lazarus/docs/contributors.utf8 +/usr/lib/lazarus/docs/acknowledgements.txt #/usr/lib/lazarus/doceditor /usr/lib/lazarus/examples #/usr/lib/lazarus/ide @@ -49,6 +52,6 @@ /usr/lib/lazarus/packager /usr/lib/lazarus/tools /usr/lib/lazarus/units -/usr/share/pixmaps /usr/share/applications +/usr/share/pixmaps /usr/share/man diff --git a/debian/lazarus-ide.links b/debian/lazarus-ide.links index 374c00205d..ef4eec5db8 100644 --- a/debian/lazarus-ide.links +++ b/debian/lazarus-ide.links @@ -2,3 +2,7 @@ /usr/lib/lazarus/startlazarus /usr/bin/lazarus-ide /usr/lib/lazarus/lazarus /usr/lib/lazarus/lazarus-ide /usr/lib/lazarus/lazbuild /usr/bin/lazbuild +/usr/lib/lazarus/tools/lazres /usr/bin/lazres +/usr/lib/lazarus/tools/lrstolfm /usr/bin/lrstolfm +/usr/lib/lazarus/tools/svn2revisioninc /usr/bin/svn2revisioninc +/usr/lib/lazarus/tools/updatepofiles /usr/bin/updatepofiles diff --git a/debian/lazarus-src.install b/debian/lazarus-src.install index 9963df5267..86ee213d85 100644 --- a/debian/lazarus-src.install +++ b/debian/lazarus-src.install @@ -1,10 +1,5 @@ -/usr/lib/lazarus/COPYING.GPL.txt -/usr/lib/lazarus/COPYING.LGPL.txt -/usr/lib/lazarus/COPYING.modifiedLGPL.txt -/usr/lib/lazarus/COPYING.txt /usr/lib/lazarus/Makefile /usr/lib/lazarus/Makefile.fpc -/usr/lib/lazarus/README.txt /usr/lib/lazarus/components /usr/lib/lazarus/debugger /usr/lib/lazarus/examples diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh index 371f2776ef..4aad5707e6 100644 --- a/debian/orig-tar.sh +++ b/debian/orig-tar.sh @@ -1,18 +1,24 @@ #!/bin/sh -e -# called by uscan with '--upstream-version' -DIR=lazarus +VERSION=$1 +SEDSCRIPT="s/Last Changed Rev: \([0-9]\+\)/const RevisionStr = '\1';/p" -# clean up the upstream tarball -tar xzf $3 -rm -f $DIR/debian/*.ex $DIR/debian/*.EX $DIR/debian/files -tar czf $3 $DIR +SVNVER=$(echo $VERSION | tr . _) +SVNURL=http://svn.freepascal.org/svn/lazarus/tags/lazarus_$SVNVER + +DIR=lazarus-$VERSION +TAR=../lazarus_$VERSION.orig.tar.gz + +svn export $SVNURL $DIR +# Add revision.inc +svn info $SVNURL | sed -ne "$SEDSCRIPT" > $DIR/ide/revision.inc +tar czf $TAR $DIR rm -rf $DIR # move to directory 'tarballs' if [ -r .svn/deb-layout ]; then . .svn/deb-layout - mv $3 $origDir - echo "moved $3 to $origDir" + mv $TAR $origDir + echo "moved $TAR to $origDir" fi diff --git a/debian/overrides/lazarus-src b/debian/overrides/lazarus-src new file mode 100644 index 0000000000..da803fd7cc --- /dev/null +++ b/debian/overrides/lazarus-src @@ -0,0 +1,2 @@ +# Lazarus needs to have the architecture independent file in /usr/lib. +lazarus-src binary: image-file-in-usr-lib diff --git a/debian/rules b/debian/rules index 8bceb3fdff..169108e042 100755 --- a/debian/rules +++ b/debian/rules @@ -2,6 +2,12 @@ # debian/rules for Lazarus DEB_DH_BUILDDEB_ARGS := -- -Z bzip2 +export LANG:=C + +# copied from cdbs: +DEB_VERSION := $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ') +DEB_NOEPOCH_VERSION := $(shell echo $(DEB_VERSION) | cut -d: -f2-) +DEB_UPSTREAM_VERSION := $(shell echo $(DEB_NOEPOCH_VERSION) | sed 's/-[^-]*$$//') # Define FPC ifndef FPC @@ -69,8 +75,8 @@ unpatch: # Debian files # -debian-files: debian-files-stamp -debian-files-stamp: patch +debian-files: patch debian-files-stamp +debian-files-stamp: @echo "--- Creating/fixing *.install files" #/bin/bash debian/fixdeb debian $(FPCTARGET) $(PPNEW) touch debian-files-stamp @@ -86,10 +92,13 @@ configure-stamp: find -name Makefile.fpc -execdir 'sh' '-c' '${RM} $$(basename {} .fpc)' ';' # Regenrate make files using fpcmake. ${FPCMAKE} -r -Tall + # Add version.inc: + ${RM} ide/version.inc + echo \'$(DEB_VERSION)\' > ide/version.inc touch configure-stamp -build-arch: build-arch-stamp -build-arch-stamp: debian-files-stamp configure-stamp +build-arch: debian-files configure build-arch-stamp +build-arch-stamp: @echo "--- Building" dh_testdir $(MAKE) lcl packager/registration ideintf bigidecomponents examples $(BUILDOPTS) @@ -99,8 +108,8 @@ build-arch-stamp: debian-files-stamp configure-stamp $(MAKE) tools $(BUILDOPTS) touch build-arch-stamp -install-arch: install-arch-stamp -install-arch-stamp: build-arch-stamp debian-files-stamp +install-arch: build-arch install-arch-stamp +install-arch-stamp: @echo "--- Installing" dh_testdir dh_testroot @@ -108,11 +117,18 @@ install-arch-stamp: build-arch-stamp debian-files-stamp dh_installdirs # create all necessary directories install -d $(INSTALL_DIR)/usr/bin - install -d $(INSTALL_DIR)/usr/lib/lazarus + install -d $(INSTALL_DIR)/usr/lib/lazarus/tools # Install the IDE & its accessories cp -Rfpl -t $(INSTALL_DIR)/usr/lib/lazarus \ - lazarus lazbuild startlazarus \ + $(CURDIR)/lazarus \ + $(CURDIR)/lazbuild \ + $(CURDIR)/startlazarus \ $(CURDIR)/languages + cp -Rfpl -t $(INSTALL_DIR)/usr/lib/lazarus/tools \ + $(CURDIR)/tools/lazres \ + $(CURDIR)/tools/lrstolfm \ + $(CURDIR)/tools/svn2revisioninc \ + $(CURDIR)/tools/updatepofiles # Install the library files find -name '*.ppu' -or -name '*.[oa]' -or -name '*.so*' | xargs cp -Rfpl --parents -t $(INSTALL_DIR)/usr/lib/lazarus # copy icons and menu entries for the GNOME menu @@ -123,17 +139,22 @@ install-arch-stamp: build-arch-stamp debian-files-stamp install -m 644 $(CURDIR)/install/lazarus.desktop $(INSTALL_DIR)/usr/share/applications/lazarus.desktop # Install man pages $(MAKE) -C install/man installman $(INSTALLOPTS) INSTALL_PREFIX=$(INSTALL_DIR)/usr/share - touch install-arch-stamp # Install configuration files ${MKDIR} $(INSTALL_DIR)/etc/lazarus fpcsubst -d FPCVER=${FPCVER} -i ${CURDIR}/tools/install/linux/environmentoptions.xml -o $(INSTALL_DIR)/etc/lazarus/environmentoptions.xml + # Install contributer list + install -d $(INSTALL_DIR)/usr/lib/lazarus/docs + cp -Rfpl -t $(INSTALL_DIR)/usr/lib/lazarus/docs \ + $(CURDIR)/docs/Contributors.txt \ + $(CURDIR)/docs/contributors.utf8 \ + $(CURDIR)/docs/acknowledgements.txt + touch install-arch-stamp -arrange-arch: arrange-arch-stamp -arrange-arch-stamp: install-arch-stamp debian-files-stamp +arrange-arch: install-arch arrange-arch-stamp +arrange-arch-stamp: dh_testdir dh_testroot dh_install -s --sourcedir=debian/tmp --list-missing - touch arrange-arch-stamp build-indep: patch @@ -144,15 +165,15 @@ install-indep: # Documentation # -build-doc: patch build-doc-stamp -build-doc-stamp: debian-files-stamp +build-doc: patch debian-files build-doc-stamp +build-doc-stamp: @echo "--- Building Documentation" dh_testdir #$(MAKE) -C docs $(CONVERTER) $(BUILDOPTS) FPDOC=$(NEWFPDOC) touch build-indep-stamp -install-doc: install-doc-stamp -install-doc-stamp: build-doc-stamp debian-files-stamp +install-doc: build-doc install-doc-stamp +install-doc-stamp: @echo "--- Installing Documentation" dh_testdir dh_testroot @@ -172,9 +193,7 @@ install-source-stamp: dh_testroot install -d $(INSTALL_DIR)/usr/lib/lazarus/ cp -Rfpl -t $(INSTALL_DIR)/usr/lib/lazarus \ - $(CURDIR)/COPYING* \ $(CURDIR)/Makefile* \ - $(CURDIR)/README* \ $(CURDIR)/components \ $(CURDIR)/converter \ $(CURDIR)/debugger \ @@ -212,8 +231,8 @@ binary-indep: clean-patched build-doc install-doc install-source debian-files dh_installdocs -i dh_installchangelogs -i dh_install -i --sourcedir=debian/tmp --list-missing -# install -m644 -D debian/overrides/lazarus-src \ -# debian/lazarus-src/usr/share/lintian/overrides/lazarus-src + install -m644 -D debian/overrides/lazarus-src \ + debian/lazarus-src/usr/share/lintian/overrides/lazarus-src dh_compress -i -X.pdf dh_fixperms -i dh_installdeb -i @@ -221,7 +240,7 @@ binary-indep: clean-patched build-doc install-doc install-source debian-files dh_md5sums -i dh_builddeb -i $(DEB_DH_BUILDDEB_ARGS) -binary-arch: build-arch arrange-arch debian-files +binary-arch: arrange-arch @echo "--- Building: arch packages" dh_testdir dh_testroot @@ -247,4 +266,4 @@ binary-arch: build-arch arrange-arch debian-files configure get-orig-source: - -uscan --upstream-version=0 --rename + sh debian/orig-tar.sh $(DEB_UPSTREAM_VERSION)