When the Java bindings are compiled using a makefile, it can become tedious to build the makefile by hand. There are two arguments to the IDL-to-Java compiler that can help to build the makefile.
idlj -m My.idl
Besides the usual bindings, this command generates bfile My.u that contains the following lines:
MyHelper.java: My.idl My.java: My.idl MyHolder.java: My.idl MyPackage/E.java: Embedded.idl MyPackage/EHelper.java: Embedded.idl MyPackage/EHolder.java: Embedded.idl _MyStub.java: My.idl MyHelper.java \ My.java \ MyHolder.java \ MyPackage/E.java \ MyPackage/EHelper.java \ MyPackage/EHolder.java \ _MyStub.java
If you build a makefile that runs on multiple platforms, the slash (/) character is not necessarily the file separator character. The build environment might have a special variable for the file separator character. If this variable were $(Sep), then the compiler can place this in place of the slash in My.u with the following command:
idlj -m -sep \$\(Sep\) My.idl
Now My.u contains the following:
MyHelper.java: My.idl My.java: My.idl MyHolder.java: My.idl MyPackage$(Sep)E.java: Embedded.idl MyPackage$(Sep)EHelper.java: Embedded.idl MyPackage$(Sep)EHolder.java: Embedded.idl _MyStub.java: My.idl MyHelper.java \ My.java \ MyHolder.java \ MyPackage$(Sep)E.java \ MyPackage$(Sep)EHelper.java \ MyPackage$(Sep)EHolder.java \ _MyStub.java