From 72c7cf9cf5bf9d874dc3d9774566a835fa0a5474 Mon Sep 17 00:00:00 2001 From: Frederic Peters Date: Tue, 29 Apr 2008 12:03:44 +0000 Subject: [project @ fpeters@0d.be-20071031124903-z1k8ywuk1qgrl5gm] added lasso extension dynamic loading, aborting if it fails Original author: Frederic Peters Date: 2007-10-31 13:49:03.384000+01:00 --- bindings/lang_php5_helpers/php_code.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'bindings/lang_php5_helpers/php_code.py') diff --git a/bindings/lang_php5_helpers/php_code.py b/bindings/lang_php5_helpers/php_code.py index 28f9f77c..a0b7b73f 100644 --- a/bindings/lang_php5_helpers/php_code.py +++ b/bindings/lang_php5_helpers/php_code.py @@ -45,6 +45,24 @@ class PhpCode: /* this file has been generated automatically; do not edit */ +// Try to load Lasso extension if it's not already loaded. +if (!extension_loaded('lasso')) { + if (strtolower(substr(PHP_OS, 0, 3)) === 'win') { + $extension_module = 'lasso.dll'; + } else { + // PHP_SHLIB_SUFFIX is available as of PHP 4.3.0, for older PHP assume 'so'. + // It gives 'dylib' on MacOS X which is for libraries, modules are 'so'. + if (PHP_SHLIB_SUFFIX === 'PHP_SHLIB_SUFFIX' || PHP_SHLIB_SUFFIX === 'dylib') { + $extension_module = 'lasso.so'; + } else { + $extension_module = 'lasso.'.PHP_SHLIB_SUFFIX; + } + } + if (!dl($extension_module)) { + die('E: Could not load Lasso extension module.\n'); + } +} + function cptrToPhp ($cptr) { $typename = lasso_get_object_typename($cptr); $class_name = $typename . "NoInit"; -- cgit