I wanted to modify backend that comes with ORBit2-cpp so that it honours
the --noskels, --nostubs, and --nocommon command line arguments for
orbit-idl-2. However, it seems that the context that is passed to the
backend isn't set up properly.
I created the following little backend:
-------------------------------------------------------
#include <stdio.h>
#include <orbit-idl/orbit-idl-backend.h>
gboolean orbit_idl_backend_func(ORBitIDLBackendContext *context);
gboolean
orbit_idl_backend_func(ORBitIDLBackendContext *context)
{
printf("Filename: %s\n", context->filename);
printf("\tStubs: %s\n", context->do_stubs ? "yes" : "no");
printf("\tSkels: %s\n", context->do_skels ? "yes" : "no");
printf("\tCommon: %s\n", context->do_common ? "yes" : "no");
return TRUE;
}
-------------------------------------------------------
and compiled into a shared object (libORBit-idl-backend-mt.so). This is
the rather surprising output I get:
$ ./orbit-idl-2 --backenddir=${PWD}/backend -l mt test.idl orbit-idl-2 2.11.1 compiling
mode, show preprocessor errors, passes: stubs skels common headers
skel_impl imodule
Filename: test.idl
Stubs: yes
Skels: no
Common: no
$ ./orbit-idl-2 --backenddir=${PWD}/backend --noskels -l mt test.idl orbit-idl-2 2.11.1 compiling
mode, show preprocessor errors, passes: stubs common headers skel_impl
imodule
Filename: test.idl
Stubs: yes
Skels: no
Common: no
.$ ./orbit-idl-2 --backenddir=${PWD}/backend --nostubs -l mt test.idl orbit-idl-2 2.11.1 compiling
mode, show preprocessor errors, passes: skels common headers skel_impl
imodule
Filename: test.idl
Stubs: no
Skels: no
Common: no
Is this indeed a bug, or am I just using the API wrongly?
If it's a bug I'd be more than grateful for any pointers of were the
source of it might be so I can try to fix it more easily.
/M
P.S. I am using the latest sources out of CVS (just did a cvs -qn up to
check).
--
Magnus Therning (OpenPGP: 0xAB4DFBA4)
magnus therning org
http://magnus.therning.org/
Maturity is when you quit blaming other people for your problems
-- Craig Burton
Attachment:
signature.asc
Description: Digital signature