Source directory restructuring complete

Geert Janssens geert.gnucash at kobaltwit.be
Thu Aug 17 04:06:44 EDT 2017


On donderdag 17 augustus 2017 10:02:02 CEST John Ralls wrote:
> Nope, the problem is at
> https://github.com/Gnucash/gnucash/blob/master/libgnucash/engine/qof-backen
> d.cpp#L141:
> <https://github.com/Gnucash/gnucash/blob/master/libgnucash/engine/qof-backe
> nd.cpp#L141:> /* Darwin modules can have either .so or .dylib for a suffix
> */
>     if (!g_file_test (fullpath, G_FILE_TEST_EXISTS) &&
>         g_strcmp0 (G_MODULE_SUFFIX, "so") == 0)
>     {
>         auto modname = g_strdup_printf ("lib%s.dylib", module_name);
>         g_free (fullpath);
>         fullpath = g_build_filename (directory, modname, NULL);
>         g_free (modname);
>     }
>     auto backend = g_module_open (fullpath, G_MODULE_BIND_LAZY);
> 
> follpath was "dbi/libgncmod-backend-dbi.dylib which exists only in an
> autotools build and only before installation. Having directory="gnucash" is
> correct after installation and always in a Cmake build. This will probably
> break tests on an autotools build on Macs. I may decide I don't care and
> that only CMake is supported there.

Ah, I missed that. So the solution is simple IMO: fix the second creation of 
fullpath. Have it use absdir instead of directory. Of course that means absdir 
can only be freed after the Darwin test. I'll add push a change for you to 
test in a minute.

Geert


More information about the gnucash-devel mailing list