World: r3wp
[!REBOL3 Extensions] REBOL 3 Extensions discussions
older newer | first last |
Andreas 29-Jan-2010 [615x2] | Yeah, but who cares? |
They even might, if someone wrote a dylib loader for windows | |
BrianH 29-Jan-2010 [617] | We do. Simplifying the code would be to just support .rx and have the LOAD-EXTENSION native in the host code do the translation. |
Andreas 29-Jan-2010 [618x5] | Go for it, then |
I'd add some nice magic for .rx | |
And keep .dll .so and .dylib as they are now | |
If some use desperately wants to use .dylibs on Linux, I don't care | |
some user* | |
BrianH 29-Jan-2010 [623] | I want to keep .dll, .so and .dylib files as they are now. That is what we write .rx extensions to wrap. |
Andreas 29-Jan-2010 [624] | But a .rx is nothing but a .so |
BrianH 29-Jan-2010 [625] | No, it's a .so with a really specific set of exported functions. |
Andreas 29-Jan-2010 [626x3] | Yes, the definition of a dynamic library |
If you want a single platform extension: name it foo.so, use it with import %foo.so; if you want a multiplatform extension: create libraries foo.so, foo.dll, foo.dylib, import with %foo.rx | |
Sounds reasonable and simple to me | |
BrianH 29-Jan-2010 [629] | It's the same as .ocx or .exe files on Windows - what matters is the specific functions they export. All .rx files export the same functions. |
Andreas 29-Jan-2010 [630x2] | That's fine, but they will still be platform specific binaries |
But whatever | |
BrianH 29-Jan-2010 [632] | So what? There's no reason why dynamic libraries should be called .dll on Windows and .so on Linux, none at all. |
Andreas 29-Jan-2010 [633x3] | Go for .rx, fine with me |
If you add a capability to ship multiple libraries easily, that would be great as well | |
I.e. that i can ship linux, windows and osx extensions along with a simple script, and use the proper extension on the proper platform | |
BrianH 29-Jan-2010 [636] | Universal Binaries or some such? |
Andreas 29-Jan-2010 [637x2] | nope, just simple namespacing issues |
if all three extensions ought to be called foo.rx, shipping them side by side will be tough :) | |
BrianH 29-Jan-2010 [639] | There are many platforms that use incompatible .so or .dll files, so a packaging/installer format would be good. |
Andreas 29-Jan-2010 [640x3] | yes |
the nice thing about my patch: it would enable linux extensions _right now_ | |
letting people play with them | |
BrianH 29-Jan-2010 [643] | We aren't just supporting 3 platforms. |
Andreas 29-Jan-2010 [644x2] | currently you the hostkit supports only 2 |
i like small, incremental changes | |
BrianH 29-Jan-2010 [646] | No, it wouldn't because LOAD-EXTENSION doesn't work on Linux yet. |
Andreas 29-Jan-2010 [647] | load extension works great on linux |
BrianH 29-Jan-2010 [648] | Check if it works with .rx named files, I'm curious. |
Andreas 29-Jan-2010 [649x4] | $ file ext/sample.so ext/sample.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped |
that's the sample extension from the R3 extension zip released some months back | |
$ ./r3 -sq System object protected >> append system/options/file-types [%.so extension] == [%.bmp bmp %.gif gif %.png png %.jpg %.jpeg jpeg %.dll extension %.so extension] >> import %ext/sample.so >> add-mul 10 20 30 == 900 | |
and that's a hostkit compiled with my posix loading patch | |
BrianH 29-Jan-2010 [653] | And have you tested by adding .so to system/options/file-types at runtime and then using IMPORT on an extension? |
Andreas 29-Jan-2010 [654] | ... |
BrianH 29-Jan-2010 [655] | Never mind, it was an AltME delay. |
Andreas 29-Jan-2010 [656x4] | thought so :) |
>> append system/options/file-types [%.rx extension] == [%.bmp bmp %.gif gif %.png png %.jpg %.jpeg jpeg %.dll extension %.rx extension] >> import %ext/sample.rx >> add-mul 10 20 30 == 900 | |
works with whatever extension you like | |
don't get me wrong, i really like the .rx idea | |
BrianH 29-Jan-2010 [660] | Cool, like Windows. I can make a mezzanine patch for the platform file-types that would work for all supported platforms if you like. |
Andreas 29-Jan-2010 [661x4] | but this minimal change of adding two lines would get things started for now |
yes, please | |
but wouldn't that exactly be what i did in rebdev#6258? | |
heck, osx is not even supported right now :) | |
older newer | first last |