Work on package

This commit is contained in:
Laurent Destailleur 2011-08-07 15:07:44 +00:00
parent 79b3f41849
commit 90adcd5440
5 changed files with 103 additions and 77 deletions

View File

@ -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.139 2011/08/07 23:44:55 eldy Exp $
# \version $Id: makepack-dolibarr.pl,v 1.136 2011/08/07 15:07:44 eldy Exp $
# \author (c)2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
#----------------------------------------------------------------------------
@ -45,7 +45,7 @@ if (-d "/usr/src/RPM") { $RPMDIR="/usr/src/RPM"; } # mandrake
use vars qw/ $REVISION $VERSION /;
$REVISION='$Revision: 1.139 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1;
$REVISION='$Revision: 1.136 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1;
$VERSION="3.1 (build $REVISION)";
@ -125,7 +125,7 @@ else {
my $NUM_SCRIPT;
while (! $found) {
my $cpt=0;
printf(" %2d - %-12s (%s)\n",$cpt,"All (Except SNAPSHOT)","Need ".join(",",values %REQUIREMENTTARGET));
printf(" %2d - %-12s (%s)\n",$cpt,"All","Need ".join(",",values %REQUIREMENTTARGET));
foreach my $target (@LISTETARGET) {
$cpt++;
printf(" %2d - %-12s (%s)\n",$cpt,$target,"Need ".$REQUIREMENTTARGET{$target});
@ -157,7 +157,7 @@ else {
}
else {
foreach my $key (@LISTETARGET) {
if ($key ne 'SNAPSHOT') { $CHOOSEDTARGET{$key}=1; }
$CHOOSEDTARGET{$key}=1;
}
}
}
@ -408,7 +408,7 @@ if ($nboftargetok) {
if ($target =~ /RPM/) { # Linux only
$NEWDESTI=$DESTI;
$subdir="package_rpm_generic";
if ($target =~ /FEDO/i) { $subdir="package_rpm_redhat-fedora"; }
if ($target =~ /FEDO/i) { $subdir="package_rpm_fedora"; }
if ($target =~ /MAND/i) { $subdir="package_rpm_mandriva"; }
if ($target =~ /OPEN/i) { $subdir="package_rpm_opensuse"; }
if (-d $DESTI.'/'.$subdir) { $NEWDESTI=$DESTI.'/'.$subdir; }
@ -510,7 +510,7 @@ if ($nboftargetok) {
# To remove once stable
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/htdocs/theme/bureau2crea`;
# Conf files
# Apache conf files
print "Copy apache.conf file into $BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/httpd-dolibarr.conf\n";
$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT"`;
$ret=`cp "$SOURCE/build/rpm/httpd-dolibarr.conf" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/apache.conf"`;
@ -518,6 +518,21 @@ if ($nboftargetok) {
$ret=`cp "$SOURCE/build/rpm/conf.php" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/conf.php"`;
$ret=`cp "$SOURCE/build/rpm/install.forced.php.install" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/install.forced.php"`;
# Dolibarr conf files
# TODO
# dolibarr.desktop
#print "Create directory $BUILDROOT/$FILENAMETGZ2/usr/share/applications\n";
#$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/usr/share/applications"`;
#print "Copy desktop file into $BUILDROOT/$FILENAMETGZ2/usr/share/applications/dolibarr.desktop\n";
#$ret=`cp "$SOURCE/build/rpm/dolibarr.desktop" "$BUILDROOT/$FILENAMETGZ2/usr/share/applications/dolibarr.desktop"`;
# pixmap
#print "Create directory $BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps\n";
#$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps"`;
#print "Copy pixmap file into $BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps/dolibarr.xpm\n";
#$ret=`cp "$SOURCE/doc/images/dolibarr.xpm" "$BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps/dolibarr.xpm"`;
# Set owners
print "Set owners on files/dir\n";
$ret=`chown -R root.root $BUILDROOT/$FILENAMETGZ2`;
@ -579,9 +594,6 @@ if ($nboftargetok) {
$ret=`$cmd`;
print "Move $RPMDIR/SRPMS/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm into $NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\n";
$cmd="mv \"$RPMDIR/SRPMS/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\" \"$NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\"";
$ret=`$cmd`;
print "Move $RPMDIR/SOURCES/".$FILENAMETGZ2.".tgz into $NEWDESTI/".$FILENAMETGZ2.".tgz\n";
$cmd="mv \"$RPMDIR/SOURCES/".$FILENAMETGZ2.".tgz\" \"$NEWDESTI/".$FILENAMETGZ2.".tgz\"";
$ret=`$cmd`;
next;
}
@ -615,8 +627,6 @@ if ($nboftargetok) {
#rmdir "$BUILDROOT/$PROJECT.tmp";
$ret=`rm -fr $BUILDROOT/$PROJECT.tmp`;
$ret=`rm -fr $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build`;
print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share\n";
$ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share"`;
print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\n";
@ -824,7 +834,7 @@ if ($nboftargetok) {
$ret=`$cmd`;
# Creation of source package
print "Go to directory $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build\n";
print "Go to directory $BUILDROOT\n";
chdir("$BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build");
#$cmd="dpkg-source -b $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build";
$cmd="dpkg-buildpackage -us -uc";

View File

@ -6,8 +6,10 @@
# edit it if you need to match your rules.
# --------------------------------------------------------
%define version __VERSION__
Name: dolibarr
Version: __VERSION__
Version: %{version}
Release: __RELEASE__%{?dist}
Summary: ERP and CRM software for small and medium companies or foundations
Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos
@ -19,14 +21,16 @@ License: GPLv2+
Vendor: Dolibarr dev team
URL: http://www.dolibarr.org
Source0: http://www.dolibarr.org/files/fedora/%{name}-%{version}.tgz
Source0: http://www.dolibarr.org/files/fedora/dolibarr-%{version}.tgz
BuildArch: noarch
#BuildArchitectures: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRoot: %{_tmppath}/dolibarr-%{version}-build
Group: Applications/Internet
Requires: mysql-server mysql httpd php php-cli php-gd php-ldap php-imap php-mysql
# Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse)
AutoReqProv: no
@ -90,7 +94,7 @@ cui hai bisogno ed essere facile da usare.
%{__install} -m 644 usr/share/dolibarr/doc/images/dolibarr_48x48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/dolibarr.png
%{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/applications
#desktop-file-install -m 644 usr/share/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop
%{__install} -m 644 usr/share/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop
%{install} -m 644 usr/share/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs
@ -113,15 +117,15 @@ cui hai bisogno ed essere facile da usare.
%files
%defattr(-, root, root, 0755)
%doc %_datadir/doc/dolibarr
%dir %_datadir/dolibarr/build
%dir %_datadir/dolibarr/htdocs
%dir %_datadir/dolibarr/scripts
%doc /usr/share/doc/dolibarr
%dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts
%_datadir/pixmaps/dolibarr.png
%_datadir/applications/dolibarr.desktop
%_datadir/dolibarr/build/*
%_datadir/dolibarr/htdocs/*
%_datadir/dolibarr/scripts/*
/usr/share/dolibarr/build/*
/usr/share/dolibarr/htdocs/*
/usr/share/dolibarr/scripts/*
%defattr(0664, -, -)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php

View File

@ -6,8 +6,10 @@
# edit it if you need to match your rules.
# --------------------------------------------------------
%define version __VERSION__
Name: dolibarr
Version: __VERSION__
Version: %{version}
Release: __RELEASE__
Summary: ERP and CRM software for small and medium companies or foundations
Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos
@ -19,18 +21,18 @@ License: GPLv2+
Vendor: Dolibarr dev team
URL: http://www.dolibarr.org
Source0: http://www.dolibarr.org/files/fedora/%{name}-%{version}.tgz
Source0: http://www.dolibarr.org/files/fedora/dolibarr-%{version}.tgz
BuildArch: noarch
#BuildArchitectures: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRoot: %{_tmppath}/dolibarr-%{version}-build
# For Mandriva-Mageia
Group: Networking/WWW
# For all other distrib
Group: Applications/Internet
# Requires for Fedora-Redhat
Requires: mysql-server mysql httpd php php-cli php-gd php-ldap php-imap
Requires: php-mysql >= 4.1.0
Requires: mysql-server mysql httpd php php-cli php-gd php-ldap php-imap php-mysql
# Requires for OpenSuse
#Requires: mysql-community-server mysql-community-server-client apache2 apache2-mod_php5 php5 php5-gd php5-ldap php5-imap php5-mysql php5-openssl
# Requires for Mandriva-Mageia
@ -122,37 +124,37 @@ cui hai bisogno ed essere facile da usare.
%files
%defattr(-, root, root, 0755)
%doc %_datadir/doc/dolibarr
%dir %_datadir/dolibarr/build
%dir %_datadir/dolibarr/htdocs
%dir %_datadir/dolibarr/scripts
%doc /usr/share/doc/dolibarr
%dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts
%_datadir/pixmaps/dolibarr.png
%_datadir/applications/dolibarr.desktop
%_datadir/dolibarr/build/*
%_datadir/dolibarr/htdocs/*
%_datadir/dolibarr/scripts/*
#lang(ar_SA) %_datadir/dolibarr/htdocs/langs/ar_SA
#lang(ca_ES) %_datadir/dolibarr/htdocs/langs/ca_ES
#lang(da_DK) %_datadir/dolibarr/htdocs/langs/da_DK
#lang(de_AT) %_datadir/dolibarr/htdocs/langs/de_AT
#lang(de_DE) %_datadir/dolibarr/htdocs/langs/de_DE
#lang(el_GR) %_datadir/dolibarr/htdocs/langs/el_GR
#lang(en_AU) %_datadir/dolibarr/htdocs/langs/el_AU
#lang(en_GB) %_datadir/dolibarr/htdocs/langs/el_GB
#lang(en_IN) %_datadir/dolibarr/htdocs/langs/el_IN
#lang(en_NZ) %_datadir/dolibarr/htdocs/langs/el_NZ
#lang(en) %_datadir/dolibarr/htdocs/langs/en_US
#lang(es_AR) %_datadir/dolibarr/htdocs/langs/es_AR
#lang(es) %_datadir/dolibarr/htdocs/langs/es_ES
#lang(es_HN) %_datadir/dolibarr/htdocs/langs/es_HN
#lang(es_MX) %_datadir/dolibarr/htdocs/langs/en_MX
#lang(es_PR) %_datadir/dolibarr/htdocs/langs/en_PR
#lang(fa_IR) %_datadir/dolibarr/htdocs/langs/fa_IR
#lang(fi_FI) %_datadir/dolibarr/htdocs/langs/fi_FI
#lang(fr_BE) %_datadir/dolibarr/htdocs/langs/fr_BE
#lang(fr_CA) %_datadir/dolibarr/htdocs/langs/fr_CA
#lang(fr_CH) %_datadir/dolibarr/htdocs/langs/fr_CH
#lang(fr) %_datadir/dolibarr/htdocs/langs/fr_FR
/usr/share/dolibarr/build/*
/usr/share/dolibarr/htdocs/*
/usr/share/dolibarr/scripts/*
#lang(ar_SA) /usr/share/dolibarr/htdocs/langs/ar_SA
#lang(ca_ES) /usr/share/dolibarr/htdocs/langs/ca_ES
#lang(da_DK) /usr/share/dolibarr/htdocs/langs/da_DK
#lang(de_AT) /usr/share/dolibarr/htdocs/langs/de_AT
#lang(de_DE) /usr/share/dolibarr/htdocs/langs/de_DE
#lang(el_GR) /usr/share/dolibarr/htdocs/langs/el_GR
#lang(en_AU) /usr/share/dolibarr/htdocs/langs/el_AU
#lang(en_GB) /usr/share/dolibarr/htdocs/langs/el_GB
#lang(en_IN) /usr/share/dolibarr/htdocs/langs/el_IN
#lang(en_NZ) /usr/share/dolibarr/htdocs/langs/el_NZ
#lang(en) /usr/share/dolibarr/htdocs/langs/en_US
#lang(es_AR) /usr/share/dolibarr/htdocs/langs/es_AR
#lang(es) /usr/share/dolibarr/htdocs/langs/es_ES
#lang(es_HN) /usr/share/dolibarr/htdocs/langs/es_HN
#lang(es_MX) /usr/share/dolibarr/htdocs/langs/en_MX
#lang(es_PR) /usr/share/dolibarr/htdocs/langs/en_PR
#lang(fa_IR) /usr/share/dolibarr/htdocs/langs/fa_IR
#lang(fi_FI) /usr/share/dolibarr/htdocs/langs/fi_FI
#lang(fr_BE) /usr/share/dolibarr/htdocs/langs/fr_BE
#lang(fr_CA) /usr/share/dolibarr/htdocs/langs/fr_CA
#lang(fr_CH) /usr/share/dolibarr/htdocs/langs/fr_CH
#lang(fr) /usr/share/dolibarr/htdocs/langs/fr_FR
%defattr(0664, -, -)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php
@ -227,8 +229,10 @@ if [ "x$os" = "xfedora-redhat" -a -s /sbin/restorecon ]; then
echo Add SE Linux permissions for dolibarr
# semanage add records into /etc/selinux/targeted/contexts/files/file_contexts.local
semanage fcontext -a -t httpd_sys_script_rw_t "/etc/dolibarr(/.*?)"
#semanage fcontext -a -t httpd_sys_script_rw_t "/usr/share/dolibarr(/.*?)"
semanage fcontext -a -t httpd_sys_script_rw_t "/var/lib/dolibarr(/.*?)"
restorecon -R -v /etc/dolibarr
#restorecon -R -v /usr/share/dolibarr
restorecon -R -v /var/lib/dolibarr
fi

View File

@ -6,8 +6,10 @@
# edit it if you need to match your rules.
# --------------------------------------------------------
%define version __VERSION__
Name: dolibarr
Version: __VERSION__
Version: %{version}
Release: __RELEASE__
Summary: ERP and CRM software for small and medium companies or foundations
Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos
@ -19,14 +21,16 @@ License: GPLv2+
Vendor: Dolibarr dev team
URL: http://www.dolibarr.org
Source0: http://www.dolibarr.org/files/mandriva/%{name}-%{version}.tgz
Source0: http://www.dolibarr.org/files/mandriva/dolibarr-%{version}.tgz
BuildArch: noarch
#BuildArchitectures: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRoot: %{_tmppath}/dolibarr-%{version}-build
Group: Networking/WWW
Requires: mysql mysql-client apache-base apache-mod_php php-cgi php-cli php-bz2 php-gd php-ldap php-imap php-mysqli php-openssl
# Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse)
AutoReqProv: no
@ -112,15 +116,15 @@ cui hai bisogno ed essere facile da usare.
%files
%defattr(-, root, root, 0755)
%doc %_datadir/doc/dolibarr
%dir %_datadir/dolibarr/build
%dir %_datadir/dolibarr/htdocs
%dir %_datadir/dolibarr/scripts
%doc /usr/share/doc/dolibarr
%dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts
%_datadir/pixmaps/dolibarr.png
%_datadir/applications/dolibarr.desktop
%_datadir/dolibarr/build/*
%_datadir/dolibarr/htdocs/*
%_datadir/dolibarr/scripts/*
/usr/share/dolibarr/build/*
/usr/share/dolibarr/htdocs/*
/usr/share/dolibarr/scripts/*
%defattr(0664, -, -)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php

View File

@ -6,8 +6,10 @@
# edit it if you need to match your rules.
# --------------------------------------------------------
%define version __VERSION__
Name: dolibarr
Version: __VERSION__
Version: %{version}
Release: __RELEASE__
Summary: ERP and CRM software for small and medium companies or foundations
Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos
@ -19,14 +21,16 @@ License: GPLv2+
Vendor: Dolibarr dev team
URL: http://www.dolibarr.org
Source0: http://www.dolibarr.org/files/opensuse/%{name}-%{version}.tgz
Source0: http://www.dolibarr.org/files/opensuse/dolibarr-%{version}.tgz
BuildArch: noarch
#BuildArchitectures: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRoot: %{_tmppath}/dolibarr-%{version}-build
Group: Applications/Internet
Requires: mysql-community-server mysql-community-server-client apache2 apache2-mod_php5 php5 php5-gd php5-ldap php5-imap php5-mysql php5-openssl
# Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse)
AutoReqProv: no
@ -111,15 +115,15 @@ cui hai bisogno ed essere facile da usare.
%files
%defattr(-, root, root, 0755)
%doc %_datadir/doc/dolibarr
%dir %_datadir/dolibarr/build
%dir %_datadir/dolibarr/htdocs
%dir %_datadir/dolibarr/scripts
%doc /usr/share/doc/dolibarr
%dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts
%_datadir/pixmaps/dolibarr.png
%_datadir/applications/dolibarr.desktop
%_datadir/dolibarr/build/*
%_datadir/dolibarr/htdocs/*
%_datadir/dolibarr/scripts/*
/usr/share/dolibarr/build/*
/usr/share/dolibarr/htdocs/*
/usr/share/dolibarr/scripts/*
%defattr(0664, -, -)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php