Commit f7ea162e authored by Erwan Jahier's avatar Erwan Jahier
Browse files

Add a LICENCE file, a README-source file, and a lutin.el file.

Also, make sure that a git clone result in a working (build, test) setup.
parent 252aa781
......@@ -176,3 +176,4 @@ install/xlurette.sh
install/Makefile.lurette
install/autom4te.cache/
install/configure
i*86-linux*
\ No newline at end of file
Copyright (c) 2005, VERIMAG LABORATORY, GIERES, FRANCE
Permission to install, copy, and use this software and associated
documentation for any purpose other than its incorporation into a
commercial product is hereby granted without fee. Permission to
distribute this Software and its documentation only for
non-commercial use is also granted without fee. This permission is
subject to the following conditions:
THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
EXPRESS, IMPLIED OR OTHERWISE, INCLUDING BUT NOT LIMITED TO THE
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS, VERIMAG LABORATORY, OR ANY PERSON OR
INSTITUTION RELATED TO VERIMAG LABORATORY, BE LIABLE FOR ANY CLAIM OR
OTHER LIABILITY, OR ANY SPECIAL, INCIDENTAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED
OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING
OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
\ No newline at end of file
......@@ -19,11 +19,11 @@ build: gen_version
mkdir -p $(BIN_INSTALL_DIR)
mkdir -p $(LIB_INSTALL_DIR)
mkdir -p $(INC_INSTALL_DIR)
cd install && autoconf && cd .. &&\
cd polka && make clean && make all && make install&& cd .. &&\
cd GBDDML && make clean && make && make all && make cp && cd ..&&\
cd source && make clean && make install&& cd ..&&\
cd install && autoconf && cd ..&&\
ln -sf pre_release/$(HOSTTYPE) && \
cd install && autoconf && cd .. &&\
./RUN_ME
......
*** Pour installer et compiler la version sous git
Pré-requis pour les tests de non-regression :
- lus2lic, ocaml* doivent être dans le PATH
- LUSTRE_INSTALL doit être correctement positionné
1 - Le clonage
$ git clone ~jahier/lurette
2 - La construction des libraries utiles (bdd, polyedres, etc).
$ export LURETTE_PATH=<le rep d'ou le git clone a été fait>/lurette
$ cd lurette
$ make camlidl # *si* camlidl n'est pas dans le path (nécessite les droits sur le rep. du compilo caml utilisé)
$ make build
then a
$ make test
should finish with a 0 exit code
3 - recompilation des sources
$ cd sources
$ make all
install des source dans le rep pre_release pour pouvoir lancer les tests de non-regression
$ make cp
% make test
......@@ -177,8 +177,8 @@ let launch_demo () =
if (Graphics.read_key ()) = 'g' then
(
main_loop
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-dir-line.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-dir-line.luc"])
i
"0.0";
ignore (Graphics.read_key ())
......@@ -192,8 +192,8 @@ let launch_demo () =
if (Graphics.read_key ()) = 'g' then
(
main_loop
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-dir-line.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-dir-line.luc"])
i
delay;
ignore (Graphics.read_key ())
......@@ -207,8 +207,8 @@ let launch_demo () =
if (Graphics.read_key ()) = 'g' then
(
main_loop
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-dir.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-dir.luc"])
i
"0.0";
ignore (Graphics.read_key ())
......@@ -222,9 +222,9 @@ let launch_demo () =
if (Graphics.read_key ()) = 'g' then
(
main_loop_obstacle
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["obstacle.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["obstacle.luc"])
i
"0.0";
ignore (Graphics.read_key ())
......@@ -238,9 +238,9 @@ let launch_demo () =
if (Graphics.read_key ()) = 'g' then
(
main_loop_obstacle
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["moving-obstacle.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["moving-obstacle.luc"])
(i*10)
"0.0";
ignore (Graphics.read_key ())
......@@ -254,9 +254,9 @@ let launch_demo () =
if (Graphics.read_key ()) = 'g' then
(
main_loop_obstacle
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~pp:"lucky_cpp" ["moving-obstacle3.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~pp:"../../../bin/lucky_cpp" ["moving-obstacle3.luc"])
(i*10)
"0.0";
ignore (Graphics.read_key ())
......@@ -272,9 +272,9 @@ let _ =
Graphics.moveto 100 100;
main_loop_obstacle
(Luc4ocaml.make ~seed:1 ~pp:"lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~seed:1 ~pp:"lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~seed:1 ~pp:"lucky_cpp" ["moving-obstacle3.luc"])
(Luc4ocaml.make ~seed:1 ~pp:"../../../bin/lucky_cpp" ["rabbit-speed.luc"])
(Luc4ocaml.make ~seed:1 ~pp:"../../../bin/lucky_cpp" ["rabbit-dir-obstacle.luc"])
(Luc4ocaml.make ~seed:1 ~pp:"../../../bin/lucky_cpp" ["moving-obstacle3.luc"])
(int_of_string Sys.argv.(1))
Sys.argv.(2);
print_string "that'all folks!\n"
......
-- Automatically generated from node heater_control.
inputs {
Heat_on : bool;
dummy:int}
outputs {
T : real;
-- T1 : real;
T2 : real;
T3 : real
}
locals {
downR : real ~alias -100.0;
upR : real ~alias 100.0;
downI : int ~alias -100;
upI : int ~alias 100;
}
states { 0 : stable }
start_state { 0 }
transitions {
0 -> 0 ~cond (downR < T) and (T < upR)
-- and (downR < T1) and (T1 < upR)
and (downR < T2) and (T2 < upR)
and (downR < T3) and (T3 < upR)
;
}
......@@ -5,7 +5,7 @@ case $HOSTTYPE in
if [ "lib" -ef "$HOSTTYPE/lib" ]; then
echo "Je pointe deja vers $HOSTTYPE!"
else
echo "Je fais pointer lib/bin/include vers i386-linux-gcc3"
echo "Je fais pointer lib (resp bin, include) vers $HOSTTYPE/lib "
rm -f ./lib
rm -f ./bin
rm -f ./include
......
......@@ -67,6 +67,7 @@ lurette-scade-rel: strip
cp $(LURETTE_PATH)/xlurette/Scade/lucky.ini lurette-scade-$(VERSION)/Scade/ &&\
cp $(LURETTE_PATH)/xlurette/Scade/rif.ini lurette-scade-$(VERSION)/Scade/ &&\
cp -rf $(LURETTE_PATH)/xlurette/Scade/Images/ lurette-scade-$(VERSION)/Scade/ &&\
cp $(LURETTE_PATH)/LICENCE lurette-scade-$(VERSION)/Scade/
\
tar cvfz lurette-$(VERSION)-scade.tgz lurette-scade-$(VERSION) && \
"c:\TEMP\UnixUtils\usr\local\wbin\zip" -r $(SYNCHRONE_LURETTE_DIR)/lurette-$(VERSION)-scade.zip lurette-scade-$(VERSION)/
......@@ -134,6 +135,7 @@ lurette-rel: strip
cp -rf $(LURETTE_PATH)/examples/xlurette/Sildex /tmp/$(LURETTE_RELEASE_NAME)/examples/xlurette
\
cp -rf $(LURETTE_PATH)/utils /tmp/$(LURETTE_RELEASE_NAME)/
cp $(LURETTE_PATH)/LICENCE /tmp/$(LURETTE_RELEASE_NAME)/
\
cd /tmp && tar cvfz $(LURETTE_RELEASE_NAME).tgz $(LURETTE_RELEASE_NAME)
mv /tmp/$(LURETTE_RELEASE_NAME).tgz $(SYNCHRONE_DIR)/lurette
......@@ -201,6 +203,7 @@ lutin-rel:strip
cp -rf $(LURETTE_PATH)/examples/lucky /tmp/$(LUCKY_RELEASE_NAME)/examples/
cp -rf $(LURETTE_PATH)/examples/lutin /tmp/$(LUCKY_RELEASE_NAME)/examples/
cp -rf $(LURETTE_PATH)/utils /tmp/$(LUCKY_RELEASE_NAME)/
cp $(LURETTE_PATH)/LICENCE /tmp/$(LUCKY_RELEASE_NAME)/
cd /tmp && tar cvfz $(LUCKY_RELEASE_NAME).tgz $(LUCKY_RELEASE_NAME)/
......
;;; lutin.el - Major mode for editing lustre source in Emacs
(require 'font-lock)
; version of lutin-mode
(defconst lutin-mode-version "0.0")
;;; Hooks
(defvar lutin-mode-hook nil
"functions called when entering Lutin Mode.")
;;; Key-map for Lutin-mode
(defvar lutin-mode-map nil
"Keymap for lutin major mode.")
;;; Font-lock -----------------------------------------------------
(defvar lutin-font-lock-keywords nil
"Regular expression used by Font-lock mode.")
(setq lutin-font-lock-keywords
'(("--.*$" . font-lock-comment-face)
("\\<\\(const\\|function\\|include\\|system\\|returns\\|type\\)\\>" . font-lock-string-face)
("\\<\\(loop\\|fby\\|let\\|exist\\|in\\|if\\|then\\|else\\)\\>" . font-lock-keyword-face)
("\\<\\(true\\|and\\|or\\|not\\|false\\)\\>" . font-lock-reference-face)
("\\<\\(trace\\|bool\\|int\\|real\\)\\(\\^.+\\)?\\>" . font-lock-variable-name-face)
("\\(\\<\\(assert\\|pre\\)\\>\\|->\\)" . font-lock-function-name-face)))
(defun lutin-font-mode ()
"Initialisation of font-lock for Lutin mode."
(make-local-variable 'font-lock-defaults)
(setq font-lock-defaults
'(lutin-font-lock-keywords t)))
; font-lock isn't used if in a console
(if window-system
(prog2
(add-hook 'lutin-mode-hook
'turn-on-font-lock)
(add-hook 'lutin-mode-hook
'lutin-font-mode)))
(defun lutin-line-is-comment (&optional arg)
"non-nil means line is only a commentary."
(interactive)
(save-excursion
(beginning-of-line arg)
(skip-chars-forward " \t")
(looking-at "--")))
;;; Major-mode
(defun lutin-mode ()
"Major mode for editing Lutin files.
Only keywords colaraition for the moment...
"
(interactive)
(kill-all-local-variables)
(setq major-mode 'lutin-mode)
(setq mode-name "Lutin")
(use-local-map lutin-mode-map)
(run-hooks 'lutin-mode-hook))
(setq comment-start "-- ")
(setq comment-end "")
(provide 'lutin)
;;; lutin .el ends here...
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment