From 4f15029b133fd17f67cdaa23366b8437d090333a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 22 Oct 2012 20:34:02 +0200 Subject: [PATCH] Update spec --- build/rpm/README | 3 ++- build/rpm/dolibarr_fedora.spec | 20 +++++++++++++++++--- build/rpm/dolibarr_generic.spec | 4 ++-- build/rpm/dolibarr_mandriva.spec | 20 +++++++++++++++++--- build/rpm/dolibarr_opensuse.spec | 29 ++++++++++++++++++++++------- 5 files changed, 60 insertions(+), 16 deletions(-) diff --git a/build/rpm/README b/build/rpm/README index e1c73a42356..6f2e6634f4b 100644 --- a/build/rpm/README +++ b/build/rpm/README @@ -11,7 +11,8 @@ with format RPM (for Redhat, OpenSuse, Mandriva, ...). # This is standard command to work on RPM packaging: # # To install all packagers tools: -# yum -y install rpmlint fedora-packager mock koji hunspell-en hunspell-es hunspell-fr hunspell-it +# Fedora: yum -y install rpmlint fedora-packager mock koji hunspell-en hunspell-es hunspell-fr hunspell-it +# OpenSuse: yast --install update-desktop-files # # rpmlint file.rpm Test a package # mock -r fedora-15-i386 --rebuild ../SRPMS/hello-2.7-1.fc15.src.rpm diff --git a/build/rpm/dolibarr_fedora.spec b/build/rpm/dolibarr_fedora.spec index 714157d1f86..e1b8c27d0ed 100755 --- a/build/rpm/dolibarr_fedora.spec +++ b/build/rpm/dolibarr_fedora.spec @@ -108,12 +108,14 @@ cui hai bisogno ed essere facile da usare. %{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/includes/fonts # Lang -echo "%defattr(0644, root, root, 0644)" > %{name}.lang +echo "%defattr(0644, root, root, 0755)" > %{name}.lang +echo "%dir %{_datadir}/%{name}/htdocs/langs" >> %{name}.lang for i in $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/langs/*_* do lang=$(basename $i) lang1=`expr substr $lang 1 2`; lang2=`expr substr $lang 4 2 | tr "[:upper:]" "[:lower:]"`; + echo "%dir %{_datadir}/%{name}/htdocs/langs/${lang}" >> %{name}.lang if [ "$lang1" = "$lang2" ] ; then echo "%lang(${lang1}) %{_datadir}/%{name}/htdocs/langs/${lang}/*.lang" else @@ -132,6 +134,9 @@ done >>%{name}.lang %files -f %{name}.lang %defattr(0755, root, root, 0755) + +%dir %_datadir/dolibarr + %dir %_datadir/dolibarr/scripts %_datadir/dolibarr/scripts/* @@ -141,6 +146,8 @@ done >>%{name}.lang %_datadir/pixmaps/dolibarr.png %_datadir/applications/dolibarr.desktop +%dir %_datadir/dolibarr/build + %dir %_datadir/dolibarr/build/rpm %_datadir/dolibarr/build/rpm/* @@ -195,6 +202,8 @@ done >>%{name}.lang %_datadir/dolibarr/htdocs/*.php %_datadir/dolibarr/htdocs/*.txt +%dir %{_sysconfdir}/dolibarr + %defattr(0664, root, apache) %config(noreplace) %{_sysconfdir}/dolibarr/conf.php %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf @@ -252,8 +261,13 @@ restorecon -R -v /var/lib/dolibarr # Create a config link dolibarr.conf if [ ! -L $apachelink ]; then - echo Create dolibarr web server config link $apachelink - ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink + apachelinkdir=`dirname $apachelink` + if [ -d $apachelinkdir ]; then + echo Create dolibarr web server config link from %{_sysconfdir}/dolibarr/apache.conf to $apachelink + ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink + else + echo Do not create link $apachelink - web server conf dir $apachelinkdir not found. web server package may not be installed + fi fi echo Set permission to $apacheuser:$apachegroup on /var/lib/dolibarr diff --git a/build/rpm/dolibarr_generic.spec b/build/rpm/dolibarr_generic.spec index 2b284b6afb9..5ceb43bc781 100755 --- a/build/rpm/dolibarr_generic.spec +++ b/build/rpm/dolibarr_generic.spec @@ -54,7 +54,7 @@ Requires: mysql, mysql-client %if 0%{?suse_version} # Voir http://en.opensuse.org/openSUSE:Packaging_Conventions_RPM_Macros Group: Productivity/Office/Management -Requires: apache2, apache2-mod_php5, php5 >= 5.3.0, php5-gd, php5-ldap, php5-imap, php5-mysql, php5-openssl, fonts-ttf-dejavu +Requires: apache2, apache2-mod_php5, php5 >= 5.3.0, php5-gd, php5-ldap, php5-imap, php5-mysql, php5-openssl, dejavu Requires: mysql-community-server, mysql-community-server-client BuildRequires: update-desktop-files fdupes %else @@ -168,7 +168,7 @@ cui hai bisogno ed essere facile da usare. %endif # Lang -echo "%defattr(0644, root, root, 0644)" > %{name}.lang +echo "%defattr(0644, root, root, 0755)" > %{name}.lang echo "%dir %{_datadir}/%{name}/htdocs/langs" >> %{name}.lang for i in $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/langs/*_* do diff --git a/build/rpm/dolibarr_mandriva.spec b/build/rpm/dolibarr_mandriva.spec index e98a416b8dc..e52d4724dbb 100755 --- a/build/rpm/dolibarr_mandriva.spec +++ b/build/rpm/dolibarr_mandriva.spec @@ -105,12 +105,14 @@ cui hai bisogno ed essere facile da usare. %{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/includes/fonts # Lang -echo "%defattr(0644, root, root, 0644)" > %{name}.lang +echo "%defattr(0644, root, root, 0755)" > %{name}.lang +echo "%dir %{_datadir}/%{name}/htdocs/langs" >> %{name}.lang for i in $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/langs/*_* do lang=$(basename $i) lang1=`expr substr $lang 1 2`; lang2=`expr substr $lang 4 2 | tr "[:upper:]" "[:lower:]"`; + echo "%dir %{_datadir}/%{name}/htdocs/langs/${lang}" >> %{name}.lang if [ "$lang1" = "$lang2" ] ; then echo "%lang(${lang1}) %{_datadir}/%{name}/htdocs/langs/${lang}/*.lang" else @@ -129,6 +131,9 @@ done >>%{name}.lang %files -f %{name}.lang %defattr(0755, root, root, 0755) + +%dir %_datadir/dolibarr + %dir %_datadir/dolibarr/scripts %_datadir/dolibarr/scripts/* @@ -138,6 +143,8 @@ done >>%{name}.lang %_datadir/pixmaps/dolibarr.png %_datadir/applications/dolibarr.desktop +%dir %_datadir/dolibarr/build + %dir %_datadir/dolibarr/build/rpm %_datadir/dolibarr/build/rpm/* @@ -192,6 +199,8 @@ done >>%{name}.lang %_datadir/dolibarr/htdocs/*.php %_datadir/dolibarr/htdocs/*.txt +%dir %{_sysconfdir}/dolibarr + %defattr(0664, root, apache) %config(noreplace) %{_sysconfdir}/dolibarr/conf.php %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf @@ -241,8 +250,13 @@ fi # Create a config link dolibarr.conf if [ ! -L $apachelink ]; then - echo Create dolibarr web server config link $apachelink - ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink + apachelinkdir=`dirname $apachelink` + if [ -d $apachelinkdir ]; then + echo Create dolibarr web server config link from %{_sysconfdir}/dolibarr/apache.conf to $apachelink + ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink + else + echo Do not create link $apachelink - web server conf dir $apachelinkdir not found. web server package may not be installed + fi fi echo Set permission to $apacheuser:$apachegroup on /var/lib/dolibarr diff --git a/build/rpm/dolibarr_opensuse.spec b/build/rpm/dolibarr_opensuse.spec index 3d8062ae808..a4c4038e829 100755 --- a/build/rpm/dolibarr_opensuse.spec +++ b/build/rpm/dolibarr_opensuse.spec @@ -25,9 +25,9 @@ BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: Productivity/Office/Management -Requires: apache2, apache2-mod_php5, php5 >= 5.3.0, php5-gd, php5-ldap, php5-imap, php5-mysql, php5-openssl, fonts-ttf-dejavu +Requires: apache2, apache2-mod_php5, php5 >= 5.3.0, php5-gd, php5-ldap, php5-imap, php5-mysql, php5-openssl, dejavu Requires: mysql-community-server, mysql-community-server-client -#BuildRequires: update-desktop-files fdupes +BuildRequires: update-desktop-files fdupes # Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse) AutoReqProv: no @@ -104,12 +104,14 @@ cui hai bisogno ed essere facile da usare. %{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/includes/fonts # Lang -echo "%defattr(0644, root, root, 0644)" > %{name}.lang +echo "%defattr(0644, root, root, 0755)" > %{name}.lang +echo "%dir %{_datadir}/%{name}/htdocs/langs" >> %{name}.lang for i in $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/langs/*_* do lang=$(basename $i) lang1=`expr substr $lang 1 2`; lang2=`expr substr $lang 4 2 | tr "[:upper:]" "[:lower:]"`; + echo "%dir %{_datadir}/%{name}/htdocs/langs/${lang}" >> %{name}.lang if [ "$lang1" = "$lang2" ] ; then echo "%lang(${lang1}) %{_datadir}/%{name}/htdocs/langs/${lang}/*.lang" else @@ -117,11 +119,12 @@ do fi done >>%{name}.lang + # Enable this command to tag desktop file for suse -#%suse_update_desktop_file dolibarr +%suse_update_desktop_file dolibarr # Enable this command to allow suse detection of duplicate files and create hardlinks instead -#%fdupes $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs +%fdupes $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs #---- clean @@ -134,6 +137,9 @@ done >>%{name}.lang %files -f %{name}.lang %defattr(0755, root, root, 0755) + +%dir %_datadir/dolibarr + %dir %_datadir/dolibarr/scripts %_datadir/dolibarr/scripts/* @@ -143,6 +149,8 @@ done >>%{name}.lang %_datadir/pixmaps/dolibarr.png %_datadir/applications/dolibarr.desktop +%dir %_datadir/dolibarr/build + %dir %_datadir/dolibarr/build/rpm %_datadir/dolibarr/build/rpm/* @@ -197,6 +205,8 @@ done >>%{name}.lang %_datadir/dolibarr/htdocs/*.php %_datadir/dolibarr/htdocs/*.txt +%dir %{_sysconfdir}/dolibarr + %defattr(0664, root, www) %config(noreplace) %{_sysconfdir}/dolibarr/conf.php %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf @@ -246,8 +256,13 @@ fi # Create a config link dolibarr.conf if [ ! -L $apachelink ]; then - echo Create dolibarr web server config link $apachelink - ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink + apachelinkdir=`dirname $apachelink` + if [ -d $apachelinkdir ]; then + echo Create dolibarr web server config link from %{_sysconfdir}/dolibarr/apache.conf to $apachelink + ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink + else + echo Do not create link $apachelink - web server conf dir $apachelinkdir not found. web server package may not be installed + fi fi echo Set permission to $apacheuser:$apachegroup on /var/lib/dolibarr