In general, the 'bsdl dump' command implements the same functionality like bsdl2jtag.c Everything should be available to replace bsdl2jtag as a standalone application.
It should be enough to have a wrapper bash script that calls jtag with the appropriate settings.
Since '[ 1858913 ] Allow commands on command line' is not yet implemented, the script could deploy the following technique:
echo "bsdl dump some_file.bsd" | jtag > some_file.jtag
bsdl2jtag.c replaced by shell wrapper that calls jtag shell with 'bsdl dump ...'
Applied to SVN r1467.