I have generated mock_foo.h and mock_foo.c from my foo.h header using Ceedling. The problem is that in generated file there are function names the same as in foo.c. For example, foo_function() is now in both foo.c and mock_foo.c, and I have to manually add __wrap prefix so that linker doesn't complain about multiple definitions.
Is it possible to add some option in project.yml in order to generate function which already have that prefix, ie. __wrap_foo_function()?
CMock has currently no option to add a user-defined prefix (like
__wrap) to function names. Such a feature has been discussed twice back in 2014 (see Issue #32) and 2017 (Issue #137), but unfortunately the discussion dried out too early to add the feature to the project.Issue #32 even proposed a patch but I guess this will not be easily applicable anymore to the current code basis.
A possible workaround might be to write a script that generates a modified version of the modules header file
foo.hby adding the__wrapprefix to all function declarations within the file. With such a modified header CMock would generate amock_foo.cwith the appropriate function names.For Python exists the pycparser project which might be helpful for this task. Especially the func_defs.py example looks like a promising starting point.