If you say
flx -ox fred joe
then flx will create a file
fred.so
fred.dylib
fred.dll
from joe.flx. Similarly for executables, static archives etc. The -ox option
is the same as the -o option except the filename is specified with
an extension.
The reason for this option is to allow scripts (such as in the Makefile)
to work on both Unix and OSX.
BTW: There's a nasty problem now with plugins. Well, an ugliness anyhow.
Previously, a plugin was just a DLL. So the generated object file had to be
suitable code: on the x86_64 on unices (Linux, OSX) this means specifying
the flag -fPIC to get position independent code. Since there's an overhead with
this we don't do it for static linkage.
But now, plugins can also be statically linked. So as well as making
plugin.dylib (on OSX)
we have to make
plugin.o
for static linkage. The problem is this will work if we're linking the plugin
into
an executable but NOT if we're linking it into a DLL (because to do that the
code has to be position independent). So we have to have ANOTHER file as well:
plugin.os
which is position independent, the same as the RTL. Grrrr.
(Note the RTL actually adds _static and _dynamic suffices to the libraries
as well as .so vs .a (.dylib vs .a on OSX or .DLL vs .LIB on Win32).
--
john skaller
[email protected]
http://felix-lang.org
------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr
_______________________________________________
Felix-language mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/felix-language