-
Notifications
You must be signed in to change notification settings - Fork 4
/
index.html
248 lines (198 loc) · 6.23 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>OCaml EFL</title>
<style>
* {
word-wrap: break-word;
max-width: 500px;
margin-left: auto;
margin-right: auto;
}
</style>
</head>
<body>
<h1>OCaml EFL</h1>
<p>
This is the homepage of the OCaml EFL.
An OCaml interface to the Enlightenment Foundation Libraries (EFL).
</p>
<p>
<a href=https://github.com/axiles/ocaml-efl> Github page</a>
</p>
<p>
<a href=https://forge.ocamlcore.org/projects/ocaml-efl/> Old Homepage</a>
</p>
<p>
<a href="#Download">Download</a>
</p>
<h2>What is OCaml ?</h1>
<p>
OCaml, originally known as Objective Caml, is the main implementation of the
Caml programming language, created by Xavier Leroy, Jérôme Vouillon, Damien
Doligez, Didier Rémy and others in 1996. OCaml extends the core Caml
language with object-oriented constructs.
</p>
<p>
OCaml's toolset includes an interactive top level interpreter, a bytecode
compiler, and an optimizing native code compiler. It has a large standard
library that makes it useful for many of the same applications as Python or
Perl, as well as robust modular and object-oriented programming constructs
that make it applicable for large-scale software engineering. OCaml is the
successor to Caml Light. The acronym CAML originally stood for Categorical
Abstract Machine Language, although OCaml abandons this abstract machine.
</p>
<p>
OCaml is a free open source project managed and principally maintained by
INRIA.
</p>
<p>
<a href=http://caml.inria.fr/index.en.html> OCaml Homepage</a>
</p>
<h2> What are the Enlightenment Foundation Libraries (EFL) ?</h1>
<p>
The Enlightenment Foundation Libraries (EFL) are a set of free and open source
graphics libraries that grew out of the development of the Enlightenment window
manager and Wayland compositor. EFL is developed by Enlightenment.org with some
sponsorship from Samsung, ProFUSION and Free.fr. The project's focus is to make
the EFL a flexible yet powerful and easy to use set of tools to extend the
capabilities of both the Enlightenment window manager and other software
projects based on the EFL. The libraries were created for version 0.17 of the
window manager. The libraries are meant to be portable and optimized to be
functional even on mobile devices such as smart phones and tablets.
</p>
<p>
<a href=http://www.enlightenment.org/>Enlightenment Homepage</a>
</p>
<p>
Elementary is a widget set based on the EFL that makes heavy use of Evas and
Edje to provide a fast, stable, and scalable library that can be used to create
both rich and fast applications that can be used on anything from every day
desktop computers to small PDA's and set-top boxes. It is designed to fully
expose the capability of the EFL.
</p>
<h2>Installing</h1>
<p>
This package uses a configure script created with autoconf/automake
(although ocamlbuild is used in the backstage).
You can find more detailed instructions in the INSTALL file.
</p>
<h2>License</h1>
<p>
This is a free software licensed under the LGPLv2.1+ with Ocaml linking
exception. More information is available in the COPYING file.
Most of the examples are directly inspired by the official examples distributed
with the EFL and Elementary.
</p>
<h2>Current state of the interface</h1>
<p>
Currently the interfacing of Elementary (the high-level widget part of the
EFL) is more or less complete. However, lots of functions have not been tested.
</p>
<p>
Only a small portion of the rest of the EFL (ecore, evas, edje, ...) has been
interfaced : only the minimum necessary to develop an Elementary application
has been done.
</p>
<p>
The next priority is interfacing Evas (canvas library).
</p>
<p>
It is already possible to write some GUI applications. However, ocaml-efl is
still in alpha stage and some (minor) API breaks may occured.
</p>
<p>
The last version can be obtained here:
<p>
<p>
<a href="#Download">Official releases</a>
<p>
<a href="https://github.com/axiles/ocaml-efl">Official git repo</a>
</p>
<p>
You may also want to contribute by adding missing functions that you want. The
following pages might give you information about how to do it:
</p>
<p>
<a href="http://www.linux-nantes.org/~fmonnier/ocaml/ocaml-wrapping-c.html">
Florent Monnier's tutorial</a>
</p>
<p>
<a href="http://caml.inria.fr/pub/docs/manual-ocaml-4.00/manual033.html">
Official description about interfacing C and OCaml</a>
</p>
<h2>Using this library</h1>
<p>
This library can easily be used with the findlib (ocamlfind) package 'efl'.
</p>
<p>
For example, if you have a single-file program main.ml, you can build it by
entering:
</p>
<p>
'ocamlbuild -use-ocamlfind -pkg efl main.byte'
</p>
And then, you can execute it by entering:
<p>
'./main.byte'
</p>
<p>
If you want to compile to native code, just replace 'main.byte' by
'main.native'.
</p>
<p>
<a href="http://projects.camlcity.org/projects/findlib.html">
Findlib Homepage</a>
</p>
<p>
<a href="https://ocaml.org/learn/tutorials/ocamlbuild/">
Ocamlbuild Homepage</a>
</p>
Lots of examples are available in the directory "example". In particular,
you might want to look at getting_started_01.ml and getting_started_02.ml.
<h2><a id="Download">Download</a></h2>
<p>
The last version should work if you have EFL version 1.21 or newer installed.
</p>
<p>
<a href=
"https://github.com/axiles/ocaml-efl/releases/download/v1.24.0/ocaml-efl-1.24.0.tar.gz"
>Last version</a>
</p>
<a href=
"https://github.com/axiles/ocaml-efl/releases/">Older versions (starting 1.19)</a>
</p>
<p>
<a href="https://forge.ocamlcore.org/frs/?group_id=329">Older versions (until 1.20)</a>
</p>
<h2>Documentation</h1>
<p>
The INSTALL file indicates how to generate the documentation.
</p>
<p>
However, it is possible to access the documentation online:
</p>
<p>
<a href="https://axiles.github.io/ocaml-efl/www">OCaml EFL API Documentation</a>
</p>
<p>
<a href="https://axiles.github.io/ocaml-efl/www/Start.html">Getting started</a>
</p>
<p>
Online documentation for specific versions of the EFL are also available:
</p>
<p>
<a href=https://axiles.github.io/ocaml-efl/www/1.21/>Version 1.21</a>
</p>
<p>
<a href=https://axiles.github.io/ocaml-efl/www/1.22/>Version 1.22</a>
</p>
<p>
<a href=https://axiles.github.io/ocaml-efl/www/1.23/>Version 1.23</a>
</p>
<p>
<a href=https://axiles.github.io/ocaml-efl/www/1.24/>Version 1.24</a>
</p>
</body>
</html>