From fa89652d579d152cd22ab518f5670cc592b031ba Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 22 Jul 2011 16:40:17 +0000 Subject: [PATCH] Work on packages --- build/deb/changelog | 4 +-- build/deb/control | 48 --------------------------- build/deb/control.DEBIAN | 48 ++++++++++++++------------- build/deb/control.debian | 46 +------------------------- build/deb/rules | 8 +---- build/makepack-dolibarr.pl | 66 ++++++++++++++++++++++++++------------ 6 files changed, 74 insertions(+), 146 deletions(-) delete mode 100644 build/deb/control diff --git a/build/deb/changelog b/build/deb/changelog index b035f18ae1d..fc8d0a81a84 100644 --- a/build/deb/changelog +++ b/build/deb/changelog @@ -4,6 +4,6 @@ dolibarr (3.1.0-1.1) unstable; urgency=low * New upstream release. closes: bug#634783 - -- Laurent Destailleur Mon, 30 Jul 2011 12:00:00 +0100 + -- Laurent Destailleur Mon, 18 Jul 2011 12:00:00 +0100 -# For a changelog file dedicated to users, see /usr/share/doc/dolibarr/UserChangeLog.gz file. \ No newline at end of file +# More information into /usr/share/dolibarr/ChangeLog file. \ No newline at end of file diff --git a/build/deb/control b/build/deb/control deleted file mode 100644 index 0c35d38d224..00000000000 --- a/build/deb/control +++ /dev/null @@ -1,48 +0,0 @@ -Package: dolibarr -Version: __VERSION__ -Architecture: all -Maintainer: Laurent Destailleur -Installed-Size: 61200 -Depends: debconf, apache2, libapache2-mod-php5, php5, php5-cli, php5-cgi, php5-curl, php5-gd, php5-ldap, php5-mysql, php-pear, php-mail-mime, mysql-server, perl -Section: web -Priority: optional -Recommends: firefox -Homepage: http://www.dolibarr.org -Description: Easy to use web based ERP & CRM software - Dolibarr ERP & CRM is an easy to use open source/free software for small - and medium companies, foundations or freelances. It includes different - features for Enterprise Resource Planning (ERP) and Customer Relationship - Management (CRM) but also for different other activities. - It's a web software you can install as a standalone program or on any web - hosting provider to use it from anywhere with any web browser. - Dolibarr was designed to provide only features you need and be easy to use. - . - Only features you need are visible, depending on which module were activated. - Most common used modules are: - . - Customers, Suppliers or Prospects directory - Contacts directory - Orders management - Commercial proposals management - Invoices management - Products and services catalog - Stock management - Foundations members management - Bank accounts management - Point of Sale - Payments management - Commercial actions management - Contracts management - Standing orders management - Shipping management - Donations management - Bookmarks management - Mass Emailings - Reports - Data export and import tools - LDAP connectivity - PDF exports - And a lot of more modules... - . - You can also add third parties external modules or develop yours. - \ No newline at end of file diff --git a/build/deb/control.DEBIAN b/build/deb/control.DEBIAN index 7c66775bdf1..41a2ba37d19 100755 --- a/build/deb/control.DEBIAN +++ b/build/deb/control.DEBIAN @@ -1,11 +1,13 @@ Package: dolibarr +Source: dolibarr Version: __VERSION__ Architecture: all Maintainer: Laurent Destailleur Installed-Size: 61200 -Depends: xdg-utils, apache2, libapache2-mod-php5, php5, php5-cli, php5-cgi, php5-curl, php5-gd, php5-ldap, php5-mysql, php-pear, php-mail-mime, mysql-server, perl +Depends: debconf, apache2, libapache2-mod-php5, php5, php5-cli, php5-cgi, php5-curl, php5-gd, php5-ldap, php5-mysql, php-pear, php-mail-mime, mysql-server, perl Section: web Priority: optional +Recommends: firefox Homepage: http://www.dolibarr.org Description: Easy to use web based ERP & CRM software Dolibarr ERP & CRM is an easy to use open source/free software for small @@ -19,28 +21,28 @@ Description: Easy to use web based ERP & CRM software Only features you need are visible, depending on which module were activated. Most common used modules are: . - Customers, Suppliers or Prospects directory, - Contacts directory, - Orders management, - Commercial proposals management, - Invoices management, - Products and services catalog, - Stock management, - Foundations members management, - Bank accounts management, - Point of Sale, - Payments management, - Commercial actions management, - Contracts management, - Standing orders management, - Shipping management, - Donations management, - Bookmarks management, - Mass Emailings, - Reports, - Wizards to export and import data, - LDAP connectivity, - PDF exports, + Customers, Suppliers or Prospects directory + Contacts directory + Orders management + Commercial proposals management + Invoices management + Products and services catalog + Stock management + Foundations members management + Bank accounts management + Point of Sale + Payments management + Commercial actions management + Contracts management + Standing orders management + Shipping management + Donations management + Bookmarks management + Mass Emailings + Reports + Data export and import tools + LDAP connectivity + PDF exports And a lot of more modules... . You can also add third parties external modules or develop yours. diff --git a/build/deb/control.debian b/build/deb/control.debian index 91f0705c001..38688b12e1b 100755 --- a/build/deb/control.debian +++ b/build/deb/control.debian @@ -4,48 +4,4 @@ Standards-Version: 3.9.1 Section: web Priority: optional Homepage: http://www.dolibarr.org -Build-Depends: debhelper, po-debconf - -Package: dolibarr -Depends: ${misc:Depends}, xdg-utils, apache2, libapache2-mod-php5, php5, php5-cli, php5-cgi, php5-curl, php5-gd, php5-ldap, php5-mysql, php-pear, php-mail-mime, mysql-server, perl -Architecture: all -Section: web -Priority: optional -Homepage: http://www.dolibarr.org -Description: Easy to use web based ERP & CRM software - Dolibarr ERP & CRM is an easy to use open source/free software for small - and medium companies, foundations or freelances. It includes different - features for Enterprise Resource Planning (ERP) and Customer Relationship - Management (CRM) but also for different other activities. - It's a web software you can install as a standalone program or on any web - hosting provider to use it from anywhere with any web browser. - Dolibarr was designed to provide only features you need and be easy to use. - . - Only features you need are visible, depending on which module were activated. - Most common used modules are: - . - Customers, Suppliers or Prospects directory, - Contacts directory, - Orders management, - Commercial proposals management, - Invoices management, - Products and services catalog, - Stock management, - Foundations members management, - Bank accounts management, - Point of Sale, - Payments management, - Commercial actions management, - Contracts management, - Standing orders management, - Shipping management, - Donations management, - Bookmarks management, - Mass Emailings, - Reports, - Wizards to export and import data, - LDAP connectivity, - PDF exports, - And a lot of more modules... - . - You can also add third parties external modules or develop yours. \ No newline at end of file +Build-Depends: \ No newline at end of file diff --git a/build/deb/rules b/build/deb/rules index 9a3f9a98c7a..b875626b494 100644 --- a/build/deb/rules +++ b/build/deb/rules @@ -1,10 +1,4 @@ #!/usr/bin/make -f -# Uncomment this to turn on verbose mode. -export DH_VERBOSE=1 -export DH_OPTIONS=-v - -#export DH_COMPAT=7 # This is the debhelper compatability version to use, now defined into compat file - %: - dh $@ \ No newline at end of file + dh $@ \ No newline at end of file diff --git a/build/makepack-dolibarr.pl b/build/makepack-dolibarr.pl index 6a2141bfee8..bc96628066f 100644 --- a/build/makepack-dolibarr.pl +++ b/build/makepack-dolibarr.pl @@ -2,7 +2,7 @@ #---------------------------------------------------------------------------- # \file build/makepack-dolibarr.pl # \brief Dolibarr package builder (tgz, zip, rpm, deb, exe, aps) -# \version $Id: makepack-dolibarr.pl,v 1.112 2011/07/21 22:11:30 eldy Exp $ +# \version $Id: makepack-dolibarr.pl,v 1.113 2011/07/22 16:40:18 eldy Exp $ # \author (c)2004-2011 Laurent Destailleur #---------------------------------------------------------------------------- @@ -48,7 +48,7 @@ if (-d "/usr/src/RPM") { use vars qw/ $REVISION $VERSION /; -$REVISION='$Revision: 1.112 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1; +$REVISION='$Revision: 1.113 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1; $VERSION="1.0 (build $REVISION)"; @@ -468,19 +468,30 @@ if ($nboftargetok) { print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\n"; $cmd="cp -pr \"$BUILDROOT/$PROJECT\" \"$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\""; $ret=`$cmd`; + + # Create DEBIAN directory print "Create directory $BUILDROOT/$PROJECT.tmp/DEBIAN\n"; $ret=`mkdir "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; - print "Copy $SOURCE/build/deb/* to $BUILDROOT/$PROJECT.tmp/DEBIAN\n"; - $ret=`cp -r "$SOURCE/build/deb/config" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; - $ret=`cp -r "$SOURCE/build/deb/control" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; - $ret=`cp -r "$SOURCE/build/deb/postinst" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; - $ret=`cp -r "$SOURCE/build/deb/postrm" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; - $ret=`cp -r "$SOURCE/build/deb/templates" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; - + print "Copy $SOURCE/build/deb/xxx to $BUILDROOT/$PROJECT.tmp/DEBIAN\n"; + $ret=`cp -f "$SOURCE/build/deb/config" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; + $ret=`cp -f "$SOURCE/build/deb/postinst" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; + $ret=`cp -f "$SOURCE/build/deb/postrm" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; + $ret=`cp -f "$SOURCE/build/deb/templates" "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; + print "Edit version in file $BUILDROOT/$PROJECT.tmp/DEBIAN/control\n"; + open (SPECFROM,"<$SOURCE/build/deb/control.DEBIAN") || die "Error"; + open (SPECTO,">$BUILDROOT/$PROJECT.tmp/DEBIAN/control") || die "Error"; + while () { + $_ =~ s/__VERSION__/$MAJOR.$MINOR.$newbuild/; + print SPECTO $_; + } + close SPECFROM; + close SPECTO; + print "Version set to $MAJOR.$MINOR.$newbuild\n"; + print "Remove other files\n"; $ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build/aps`; $ret=`rm -f $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build/deb/config`; - $ret=`rm -f $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build/deb/control`; + $ret=`rm -f $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build/deb/control.*`; $ret=`rm -f $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build/deb/postinst`; $ret=`rm -f $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build/deb/postrm`; $ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build/perl`; @@ -513,17 +524,6 @@ if ($nboftargetok) { # To remove once stable $ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/htdocs/htdocs/theme/bureau2crea`; - print "Edit version in file $BUILDROOT/$PROJECT.tmp/DEBIAN/control\n"; - open (SPECFROM,"<$SOURCE/build/deb/control") || die "Error"; - open (SPECTO,">$BUILDROOT/$PROJECT.tmp/DEBIAN/control") || die "Error"; - while () { - $_ =~ s/__VERSION__/$MAJOR.$MINOR.$newbuild/; - print SPECTO $_; - } - close SPECFROM; - close SPECTO; - print "Version set to $MAJOR.$MINOR.$newbuild\n"; - # dolibarr.desktop print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share/applications\n"; $ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/applications"`; @@ -581,10 +581,34 @@ if ($nboftargetok) { $olddir=getcwd(); chdir("$BUILDROOT"); + # Creation of binary package $cmd="dpkg -b $BUILDROOT/$PROJECT.tmp $BUILDROOT/${FILENAMEDEB}.deb"; print "Launch DEB build ($cmd)\n"; $ret=`$cmd`; print $ret."\n"; + + # Creation of source package + print "Create directory $BUILDROOT/$PROJECT.tmp/debian\n"; + $ret=`mkdir "$BUILDROOT/$PROJECT.tmp/debian"`; + $ret=`rm -fr "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; + print "Copy $SOURCE/build/deb/xxx to $BUILDROOT/$PROJECT.tmp/debian\n"; + $ret=`cp -f "$SOURCE/build/deb/changelog" "$BUILDROOT/$PROJECT.tmp/debian/changelog"`; + $ret=`cp -f "$SOURCE/build/deb/control.debian" "$BUILDROOT/$PROJECT.tmp/debian/control"`; + $ret=`cp -f "$SOURCE/build/deb/rules" "$BUILDROOT/$PROJECT.tmp/debian/rules"`; + $ret=`cp -f "$SOURCE/build/deb/copyright" "$BUILDROOT/$PROJECT.tmp/debian/copyright"`; + #$ret=`cp -f "$SOURCE/build/deb/postinst" "$BUILDROOT/$PROJECT.tmp/debian"`; + #$ret=`cp -f "$SOURCE/build/deb/postrm" "$BUILDROOT/$PROJECT.tmp/debian"`; + #$ret=`cp -f "$SOURCE/build/deb/templates" "$BUILDROOT/$PROJECT.tmp/debian"`; + + $build = $newbuild; + $build =~ s/-.*$//g; + $cmd="mv $BUILDROOT/$PROJECT.tmp $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build"; + $ret=`$cmd`; + $cmd="dpkg-source -b $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build"; + print "Launch DEB src build ($cmd)\n"; + $ret=`$cmd`; + print $ret."\n"; + chdir("$olddir"); if ($OS =~ /windows/i)