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
skal...@users.sourceforge.net
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
Felix-language@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to