dolibarr/build
Raphaël Doursenaud bbe7498de6 Better Travis CI
NEW:
Cleaned up routines for better readability of both declaration and results.
PHP versions now really covered.
    The old code forced install of PHP and didn't use Travis provided versions.
    This resulted in the process not being executed with the declared PHP version.
Dropped MySQL in favor of MariaDB.
    This is now the FLOSS community standard.
    This should help avoid problems with buggy MySQL releases.
Fast finish enabled to show results faster.
Optimized tools installation with composer.
    The right version of the tool is installed for the PHP version under test.
New PHP linter to check for syntax errors.
    Parallelized for better speed.
Apache + PHP FPM for testing webservices.
    The previous mod_php configuration was not supported on Travis.
New global DEBUG environment variable to show verbose output with configuration files content.
IRC notification on #dolibarr@freenode for community awareness.

FIXES:
Bug in scripts preventing execution with environmentalized PHP.
Wrong detection of MAIN_URL_ROOT under specific circumstances.
    $_SERVER["DOCUMENT_ROOT"] empty and $_SERVER["SCRIPT_NAME"] populated.
Relative ignore directive in coding style ruleset to avoid bypassing test.
Unit test errors without an exit status.
    This prevented the CI from properly detecting and reporting the error.

TODOS:
PostgreSQL support.
    This one is tricky since we only have a MySQL dump and the syntax is not directly compatible.
SQLite support.
    Disabled in core at the moment.
Nginx + PHP FPM support.
    Test webservices on the second most popular webserver.
Run dev/* checks.
    We have a nice collection of scripts we could leverage.
Check Javascript.
Check CSS.
Check SQL.
2015-12-13 21:34:36 +01:00
..
aps Better Travis CI 2015-12-13 21:34:36 +01:00
debian Merge remote-tracking branch 'origin/3.8' into develop 2015-12-13 16:23:33 +01:00
dmg/dolimamp Qual: remove PHP closing tag (again) 2014-05-26 13:51:25 +02:00
doap Qual: Removed useless file 2011-10-13 17:49:25 +02:00
doxygen Merge remote-tracking branch 'origin/3.7' into 3.8 2015-12-13 16:09:09 +01:00
exe/doliwamp Fix Natural english 2015-09-17 00:48:10 +02:00
launchpad Make process to update launchpad easier. 2015-10-03 20:39:15 +02:00
live
obs Update doc 2014-12-06 14:05:51 +01:00
pad Fix typo 2015-10-04 14:08:32 +02:00
patch Fix: remove obsolete tags (in progress) 2011-08-27 14:24:16 +00:00
pdf Work on pdf doc generator 2014-02-10 00:25:16 +01:00
perl/virtualmin Fix: compatibility with dolibarr versions before and after 3.7.1 2015-10-14 12:09:51 +02:00
rpm Merge remote-tracking branch 'origin/3.7' into 3.8 2015-12-13 16:09:09 +01:00
sitemap natural search in list pages 2013-09-16 14:17:53 +02:00
tgz Fix: Solve problem of _source directory. 2014-04-13 01:28:44 +02:00
travis-ci Better Travis CI 2015-12-13 21:34:36 +01:00
zip Fix: Solve problem of _source directory. 2014-04-13 01:28:44 +02:00
.gitignore Fix #3930 Removed executable bit 2015-12-09 13:28:36 +01:00
generate_filecheck_xml.php Better Travis CI 2015-12-13 21:34:36 +01:00
makepack-dolibarr.pl Example mut be excluded of packages 2015-12-11 16:56:25 +01:00
makepack-dolibarrmodule.conf New: Trigger now have a priority to define sort execution order. 2012-01-31 20:32:26 +01:00
makepack-dolibarrmodule.pl Makepack is for version 3.5 2014-02-15 15:23:21 +01:00
makepack-dolibarrtheme.pl Remove hardcoded strings 2013-11-30 10:58:43 +01:00
makepack-howto.txt Update doc 2015-12-06 14:06:37 +01:00
README Update doc 2015-03-28 16:51:25 +01:00
README-FR Move script to build doxygen into build directory. 2009-12-28 12:57:36 +00:00

README (English)
##################################################
Building packages
##################################################

All sub-directories of "build" directory contains files required to build
automatically Dolibarr packages.
There are several tools:



- To build full Dolibarr packages, launch the script
> Launch command perl makepack-dolibarr.pl

Note: Prerequisites to build tgz, debian, rpm package
> apt-get install tar dpkg dpatch p7zip-full rpm zip

Note: Prerequisites to build autoexe DoliWamp package:
> Install InnoSetup
   For example by running isetup-5.3.9.exe (http://www.jrsoftware.org)
> Install WampServer into "C:\Program Files\Wamp"
   For example by running wampserver2.2e-php5.4.3-httpd-2.4.2-mysql5.5.24-x64.exe (http://www.wampserver.com)
> Install WampServer addon to have versions: Apache2.2.11, Mysql5.0.45, Php5.3.0
   For example by running WampServer2-APACHE2211.exe (http://www.wampserver.com)
   For example by running WampServer2-MYSQL5045.exe (http://www.wampserver.com)
   For example by running WampServer2-PHP530.exe (http://www.wampserver.com)
> To build from Windows (running from makepack-dolibarr.pl script is however
  recommanded), open file build/exe/doliwamp.iss and click on button "Compile".
  The .exe file will be build into directory build.

- To build a theme package, launch the script
> perl makepack-dolibarrtheme.pl

- To build a package for a module, launch the script
> perl makepack-dolibarrmodule.pl

- To build developper documentation, launch the script
> perl dolybarr-doxygen-build.pl


Note: 
The build directory and all its contents is absolutely not required to make
Dolibarr working. It is here only to build Dolibarr packages, and those
generated packages will not contains this "build" directory.


We can find in "build", following sub-directories:

* aps:
To build APS package.

* debian:
To build Debian package.

* dmg:
To build Mac OS package (not ready yet).

* doap:
To build Doap descriptor to promote/describe Dolibarr releases.

* doxygen:
Dir with config file to build doxygen documentation.

* exe:
To build exe package for Windows that distribute Dolibarr sources or
to build the complete DoliWamp package.

* launchpad:
Doc file to explain how to use launchpad.

* live:
Doc file to explain how to create a demo live CD.

* obs:
Doc file to explain how to push release onto OBS.

* pad:
To build a PAD file descriptor to promote/describe Dolibarr releases.

* patch:
Script file to generate a patch file to distribute a Dolibarr mod.

* perl:
Tool to install dolibarr when using virtualmin pro

* rpm:
To build Redhat, Opensuse or Mandriva package.

* tgz:
To build a tgz package.

* zip:
To build a zip package.