Steps to follow for building a GDA provider are straightforward:
generate server skeletons: this is done by invoking the gda-buildserver script with the --skels option. This will generate a set of C source code files:
gda-srv-connection.[ch]: GDA Connection object implementation
gda-srv-command.[ch]: GDA Command object implementation
gda-srv-recordset.[ch]: GDA Recordset object implementation
gda-srv-error.[ch]: GDA Error object implementation
gda-srv-field.[ch]: GDA Field object implementation
gda-srv.[ch]: ORBit/CORBA server implementation. DO NOT EDIT THESE FILES UNLESS YOU KNOW WHAT YOU ARE DOING!!
main-srv.c: server main() function
Implement all of the GDA objects, using your specific data source calls. You must pay attention to what you do and where you do it. See following section for a concise explanation of each of the things to implement.
Build the executable: this is done again with the gda-buildserver script, to which you pass the list of object modules that conform your provider (mainly the gda-srv-* files as well as any other source file you may have added for any purpose), and, optionally, a set of options. This script then takes care of re-generating and compiling all the CORBA-related files (the gda-srv.[ch] files) and calls your compiler to build the shared library containing the provider implementation and a small driver program to act as an interface to the shared library.
Add an entry to the gnome_db.gnorba file to reflect the new server's location, and create a new data source for client applications to be able to connect to the newly created server.