r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3 Extensions] REBOL 3 Extensions discussions

BrianH
9-Jul-2010
[803]
You are thinking about scale relative to the wrong number. It's not 
a matter of how many lines the parse rules have, it's a matter of 
how many additions there are in R3 parse, and there aren't that many. 
Make the compiler once, and it will compile quickly. It could even 
do so at runtime.
Carl
12-Jul-2010
[804x3]
R3 Host-Kit A100 has been uploaded to www.rebol.com.  This release 
can build CORE or VIEW (with externalized graphics lib.)


However, although the graphics lib is there, the DRAW commands are 
still in the process of conversion (Cyphre will be working on that 
part).


It's also an example (and a fairly simple one to learn from) of how 
to build a host-based extension module, including a few scripts that 
show how to process the module source to embed it in the boot.
Although Cyphre and I have both been able to build it using Mingw, 
other's have not been able to do so, and we're not sure why as of 
yet.


Therefore, we're not quite ready to distribute the host-kit to everyone, 
because we need more testing on it. However, if you want to actually 
test it (windows only), then ask Henrik for the download URL.
The host kit comes with all files necessary to build itself.  In 
theory, all you need to do is type "make" and it will produce R3/View 
(as r3.exe).  Also, make core will produce a core exe, w/o graphics.
Graham
12-Jul-2010
[807x2]
why not just post the url ??
more eyeballs is better
Carl
12-Jul-2010
[809]
The code includes some new host source files, for example to handle 
windowing and the related events.


Although this release comes with the AGG sources needed to do the 
build, note that these sources are pre-GNU versions, so are a bit 
older.


In addition, I suspect Maxim or someone may want to try creating 
an OpenGL version.


Soon, we plan to take a long look at making PAIR! into a float-based 
point, to allow better control with graphics. This somewhat non-trivial 
due to the assumptions in code that PAIR! is integer only with truncation 
for math operations.
Graham
12-Jul-2010
[810]
are better
Carl
12-Jul-2010
[811]
Ok by me, but someone will need to collect the comments and issues. 
 You want to do that?
Graham
12-Jul-2010
[812x3]
Can we include our own protocols now ?
Sure .. I'll just add it to my Jira tracker
This secrecy is really over the top ...
AdrianS
12-Jul-2010
[815]
so this host kit is only buildable under mingw, not VS?
Carl
12-Jul-2010
[816]
No, I mean someone needs to digest the issues and fixes, and submit 
them back.
Andreas
12-Jul-2010
[817]
Heck, even if no one digests the issues, nothing is lost.
Carl
12-Jul-2010
[818]
It's not secrecy...
Andreas
12-Jul-2010
[819]
If you don't post the URL, you'll simply not get the issues reported.
Carl
12-Jul-2010
[820]
The host-kit can be built by any reasonable C and C++ compiler/linker.
AdrianS
12-Jul-2010
[821]
k - I was able to build the a96 one - will give this one a go too
Carl
12-Jul-2010
[822x2]
I'm fine with posting it.  But, I don't have the bandwidth for the 
backchannel, so we need someone else to handle that.
www.rebol.com/r3/downloads/host-kit-a100.zip
Andreas
12-Jul-2010
[824x2]
Thanks.
Any timeline for a Linux libr3.so?
AdrianS
12-Jul-2010
[826]
also appreciate the link, Carl
Carl
12-Jul-2010
[827]
Pretty easy to do, but let's take this one step first.
Andreas
12-Jul-2010
[828]
Do you have an integrated cross-plattform build for the host-kit?
Carl
12-Jul-2010
[829]
Graham: I got the message on protocols and it's on the list.
Andreas
12-Jul-2010
[830]
If not, someone could write one, if you release a Linux hostkit as 
well. If you do, why not release a single cross-platform package?
Carl
12-Jul-2010
[831x3]
Andreas, no, but only because not yet tried that.  Only minor edits 
to the makefile required to build on Linux. If you get that to work, 
then can get you the r3lib to try it. Let me know.
(That's because we don't build view yet for Linux.)
(Only Core)
Andreas
12-Jul-2010
[834]
Yeah, I'd really appreciate if you could send libr3.so to me. I already 
wrote an integrated build for the A96 hostkit.
Carl
12-Jul-2010
[835]
What exactly do you mean "integrated build" -- you mean makefile?
Andreas
12-Jul-2010
[836]
A single source base which automatically builds correctly for the 
platform the build tool is invoked on.
Carl
12-Jul-2010
[837]
What have you tried it on?
Andreas
12-Jul-2010
[838x2]
A96 hostkit on Linux and Win32.
Yes, it basically boils down to an adapted Makefile along with an 
auto-generated header file (or defines) for platform-specific config.
Carl
12-Jul-2010
[840x4]
A few things on that...
The makefile is auto-generated and changes with each release. 


Also, there are big variations in make between target platforms (some 
are really horrible.) So, the makefile is kept very "dumb" to allow 
those builds.
So, we will want to get the makefile maker to do the right thing.
Second, the config controls are already part of R3, and are triggered 
by the reb-to.h file.
Andreas
12-Jul-2010
[844]
I used CMake, which is a cross-plattform tool that automatically 
generates "project" files for a variety of targets (such as GNU Make, 
Eclipse project files, Visual Studio project files). It works great 
on Linux, Win32, OSX and is used by several high-profile projects. 
But I'm well aware that third-party tools are most likely no-go for 
REBOL, so I'm fine with all that, and can easily look into it, as 
long as there' s at least a Linux hostkit available.
Carl
12-Jul-2010
[845]
So, what header files do you find a need to generate above?
AdrianS
12-Jul-2010
[846]
I would recommend cmake as well, seems to work well
Andreas
12-Jul-2010
[847]
I can only talk about A96.
Carl
12-Jul-2010
[848]
What is the input to cmake?
Graham
12-Jul-2010
[849]
http://203.97.234.193:8080/secure/project/ViewProject.jspa?pid=10020 
... I've added a hostkit tracker to my Jira instance.
Carl
12-Jul-2010
[850]
BTW, no, I'm fine with supporting as many target formats as possible!
Andreas
12-Jul-2010
[851]
CMake does basically the same thing your "makefile maker" tries do 
to.
Carl
12-Jul-2010
[852]
So far I've built it on about 5 different targets... but there are 
many more. For instance, we've talked about ARM, but the ARM tools 
are really crude (at least what I've got here.)