mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Remove support code to load qof backend in autotools based build environment
This commit is contained in:
parent
00396db560
commit
18feaa16a7
@ -83,44 +83,6 @@ QofBackend::get_message ()
|
|||||||
return std::move(m_error_msg);
|
return std::move(m_error_msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Helper function that returns a directory from which the requested module
|
|
||||||
* can be loaded. This is needed because the location of the modules
|
|
||||||
* depends on
|
|
||||||
* - whether we're running in an installed environment or the build environment
|
|
||||||
* - the operating system
|
|
||||||
* - (in the build environment) which build system is used
|
|
||||||
*
|
|
||||||
* Note parameter rel_path is only used when invoked in the build environment
|
|
||||||
* and even then only for autotools builds because each backend module is likely
|
|
||||||
* to reside in its own directory in that configuration. At install time or in a
|
|
||||||
* cmake build it is assumed all backend modules reside in one single directory.
|
|
||||||
*/
|
|
||||||
static char* get_default_module_dir(const char* rel_path)
|
|
||||||
{
|
|
||||||
gchar *pkglibdir;
|
|
||||||
const gchar *builddir = g_getenv ("GNC_BUILDDIR");
|
|
||||||
gboolean uninstalled = (g_getenv ("GNC_UNINSTALLED") != NULL
|
|
||||||
&& builddir != NULL);
|
|
||||||
|
|
||||||
if (uninstalled)
|
|
||||||
{
|
|
||||||
#ifdef CMAKE_BUILD
|
|
||||||
pkglibdir = gnc_path_get_pkglibdir ();
|
|
||||||
#else
|
|
||||||
if (rel_path)
|
|
||||||
pkglibdir = g_build_path (G_DIR_SEPARATOR_S, builddir,
|
|
||||||
"libgnucash", "backend", rel_path, ".libs", NULL);
|
|
||||||
else
|
|
||||||
pkglibdir = g_build_path (G_DIR_SEPARATOR_S, builddir,
|
|
||||||
"libgnucash", "backend", ".libs", NULL);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else
|
|
||||||
pkglibdir = gnc_path_get_pkglibdir ();
|
|
||||||
|
|
||||||
return pkglibdir;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
QofBackend::register_backend(const char* directory, const char* module_name)
|
QofBackend::register_backend(const char* directory, const char* module_name)
|
||||||
{
|
{
|
||||||
@ -130,9 +92,9 @@ QofBackend::register_backend(const char* directory, const char* module_name)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto absdir = g_strdup(directory);
|
auto absdir = directory;
|
||||||
if (!absdir || !g_path_is_absolute(absdir))
|
if (!absdir || !g_path_is_absolute(absdir))
|
||||||
absdir = get_default_module_dir(directory);
|
absdir = gnc_path_get_pkglibdir ();
|
||||||
auto fullpath = g_module_build_path (absdir, module_name);
|
auto fullpath = g_module_build_path (absdir, module_name);
|
||||||
/* Darwin modules can have either .so or .dylib for a suffix */
|
/* Darwin modules can have either .so or .dylib for a suffix */
|
||||||
if (!g_file_test (fullpath, G_FILE_TEST_EXISTS) &&
|
if (!g_file_test (fullpath, G_FILE_TEST_EXISTS) &&
|
||||||
@ -143,7 +105,6 @@ QofBackend::register_backend(const char* directory, const char* module_name)
|
|||||||
fullpath = g_build_filename (absdir, modname, NULL);
|
fullpath = g_build_filename (absdir, modname, NULL);
|
||||||
g_free (modname);
|
g_free (modname);
|
||||||
}
|
}
|
||||||
g_free (absdir);
|
|
||||||
auto backend = g_module_open (fullpath, G_MODULE_BIND_LAZY);
|
auto backend = g_module_open (fullpath, G_MODULE_BIND_LAZY);
|
||||||
g_free (fullpath);
|
g_free (fullpath);
|
||||||
if (!backend)
|
if (!backend)
|
||||||
|
Loading…
Reference in New Issue
Block a user