Fix mode on files
[civicrm-core.git] / xml / GenCode.php
CommitLineData
6a488035 1<?php
e06b5e14
TO
2
3if (PHP_SAPI !== 'cli') {
4 die("GenCode can only be run from command line.");
5}
6
6a488035 7ini_set('include_path', '.' . PATH_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'packages' . PATH_SEPARATOR . '..');
0d035206 8// make sure the memory_limit is at least 512 MB
9$memLimitString = trim(ini_get('memory_limit'));
56fdfc52
TO
10$memLimitUnit = strtolower(substr($memLimitString, -1));
11$memLimit = (int) $memLimitString;
0d035206 12switch ($memLimitUnit) {
56fdfc52
TO
13 case 'g':
14 $memLimit *= 1024;
15 case 'm':
16 $memLimit *= 1024;
17 case 'k':
18 $memLimit *= 1024;
0d035206 19}
20
21if ($memLimit >= 0 and $memLimit < 536870912) {
8652384e
TO
22 // Note: When processing all locales, CRM_Core_I18n::singleton() eats a lot of RAM.
23 ini_set('memory_limit', -1);
0d035206 24}
6a488035
TO
25date_default_timezone_set('UTC'); // avoid php warnings if timezone is not set - CRM-10844
26
27define('CIVICRM_UF', 'Drupal');
2a8330d8 28define('CIVICRM_UF_BASEURL', '/');
6a488035
TO
29
30require_once 'CRM/Core/ClassLoader.php';
31CRM_Core_ClassLoader::singleton()->register();
32
e39816b5
ARW
33# TODO: pull these settings from configuration
34$genCode = new CRM_Core_CodeGen_Main(
c59c0e21
TO
35 '../CRM/Core/DAO/', // $CoreDAOCodePath
36 '../sql/', // $sqlCodePath
37 '../', // $phpCodePath
38 '../templates/', // $tplCodePath
90b9cb2c 39 NULL, // IGNORE
c59c0e21
TO
40 @$argv[3], // cms
41 empty($argv[2]) ? NULL : $argv[2], // db version
42 empty($argv[1]) ? 'schema/Schema.xml' : $argv[1], // schema file
2469a0dd 43 getenv('CIVICRM_GENCODE_DIGEST') ? getenv('CIVICRM_GENCODE_DIGEST') : NULL // path to digest file
6a488035 44);
c59c0e21 45$genCode->main();