With delay, I've updated FreeBSD port of uniconvertor I maintain ([1]). It compiles and works with most formats pretty well, however I've ran into some issues with specific filetypes on FreeBSD - in a quick test I've made, uniconvertor was unable to process SVG, CGM and PDF files. Test script, source and resulting files as well as error log are here: [2].

The cause of SVG and CGM failures is that UC was unable to find any fonts via freetype on my system. This is fixed by adding support for FreeBSD into sk1libs, two patches for that are here: [3]. But the real issue is that UC won't work with these file types if it doesn't find any fonts. This should be properly fixed by either checking whether sk1libs.ft2engine.fontlist contain any fonts before accessing it or by stating that some/any fonts are required for the UC to work (and fixing packages correspondingly). The former would be the preferred solution.

These two patches are enough to fix SVG, but not enough to fix CGM though - I'm not a python pro, so I only have a hacky solution for it. The problem is that for CGM files, scan_fonts_dirs is never called, thus font list is still empty. I've fixed that by adding explicit scan_fonts_dirs() can into ft2engine()/__init__.py, but I guess that's not the expected solution and that Subscribe() thingy should be made to work.

I didn't dig deep with PDF, but it seem to be a pdf loader issue - pdf created by UC may be opened in other apps without problems, but UC itself could not convert any of pdf's I've tried it on, including that one it itself produced.