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

Cleaning the lurette git repository by massive deleting, git-adding, git-ignoring, etc.

parent 3704bfee
......@@ -5,13 +5,123 @@
src/TAGS
*log
*.diff
src/._bcdi/*
src/._d/*
src/._ncdi/*
._bcdi
._d
._ncdi
src/lus2lic
src/parser.ml
src/parser.mli
src/lexer.ml
src/lexer.mli
*.exe
*exe
*.dll
*.tgz
bin
*.lnk
camlidl-*
*.hide
*.zip
*.rif*
objs
*.plot
*.gp
*/Data
*.data
*.ps
*.eps
*.pdf
*.pstex*
*.bak
*.save
*.res
*.exp-ocaml7
*luc
*.ec
*.cm*
*.err
*.so
*.zi
*.zo
*.c
*.h
*.dot
*.top
source/mli_save
*.aux
*.waux
xlurette/xlurette_glade_interface.ml
xlurette/xlurette_glade_interface.ml0
xlurette/xlurette_glade_callbacks.ml
*toto*
xlurette/Scade/
up_and_down_macro
version.tex
lurette.d
examples/xlurette/HS*
*.nodes_info
*.lustre_files
*.dro
.dummy
test
*.depend
stock
tmp
strtop
save
parser.ml*
lexer.ml*
ocaml2c.*
lurettetop
lucky
luc2luciole
luc2c
liblutin.ml*
hide
gnuplot-socket
gnuplot-rif
gen_fake_lucky
TAGS
VERSION
._d/
._ncdi/
.odbrc
.emacs.*
html
*.jpg
*.xpm
old
obsolete
win32
mac
lib
include
i386-linux-gcc3
dll
crazy-rabbit-cstva
CruiseControl
AUDI
CruiseControl_4.3
LURETTE-Renault
MSU
Pilot
RENAULT-CLD
RENAULT-FINAL
SSMoutput
Try
ascenseur
essai
exemple-pascal
AUBANEL/
EZDL/
OcamlMakefile.orig
demo-hs/
demo-lutin/
mlglade/
obf/
poub/
renault/
sim2chrogtk
source/examples/
source_save
" coloration syntaxique des théorèmes BOOST (*.prop)
au BufRead,BufNewFile *.prop so ~/.vim/syntax/theorem.vim
au BufRead,BufNewFile *.luc so ~/.vim/syntax/lucky.vim
" Pour vim >= 6: les fichier de coloration sont recherchés automatiquement
" dans ~/.vim/syntax
"au BufRead,BufNewFile *.prop set ft=theorem
"au BufRead,BufNewFile *.luc set ft=lucky
"au BufRead,BufNewFile *.saofd set ft=lustre
syntax on " activation de la coloration syntaxique
set ruler " affichage de la règle en bas
set visualbell " bip visuel
#------------------------------------------------------------------
# wrappeur ocaml pour gbdd
#------------------------------------------------------------------
# n.b. on recompile gbdd.o plutot que d'utiliser la librairie standard
# du LUSTRE_INSTALL (pour tre sur d'utiliser des compilos
# caml et gcc compatibles)
#------------------------------------------------------------------
# Pour utiliser la librairie, il faut linker avec une commande du style :
#
# pour gcc > 3.* !
# ocamlopt bdd.cmx $(MES_CMX) gbdd_cml.o gbdd.o -cclib -lstdc++ -o $(MON_PRG)
#
#------------------------------------------------------------------
# SOURCES
#------------
# * bdd.ml => bdd.cmi et bdd.cmx
# (interface + qq utils en ocaml)
#
# * gbdd_cml.cc => gbdd_cml.o
# (le gros de l'implementation de bdd.ml
# en C++ compatible C via macro extern "C")
#
# * gbdd.cc/gbdd.h => gbdd.o
# (le source du module C++ originel)
#
# * test.ml => un test pour voir ...
#
#------------------------------------------------------------------
#OCAML_INSTALL=$OCAMLLIB
ifeq ($(HOST_TYPE),win32)
# windows
OCAML_LIB="c:\TEMP\ocaml\lib"
OCAMLOPT = /cygdrive/c/TEMP/ocaml/bin/ocamlopt
OCAMLC = /cygdrive/c/TEMP/ocaml/bin/ocamlc
OCAML = /cygdrive/c/TEMP/ocaml/bin/ocaml
CPP_COMPILER=g++ -mno-cygwin
CPP_LINKER=g++ -mno-cygwin
else
ifeq ($(HOST_TYPE),sparc-sun)
OCAML_LIB=ocaml
OCAMLOPT =ocamlopt
OCAMLC = ocamlc
CPP_COMPILER=g++
CPP_LINKER=g++
else
ifeq ($(HOST_TYPE),mac)
OCAML_LIB=/private/var/automount/import/macos/ocaml/3.09.3/lib/ocaml
OCAMLOPT =ocamlopt -cc g++
OCAMLC = ocamlc
CPP_COMPILER=g++
OCAMLFLAGS= -cc g++
CPP_LINKER=g++
else
OCAML_LIB=ocaml
OCAMLOPT =ocamlopt
OCAMLC = ocamlc
CPP_COMPILER=g++ # -DGBDD_CML_PARANO -DGBDD_CML_DBG
CPP_LINKER=g++
endif
endif
endif
#OCAMLOPT = ocamlopt
CPP_FLAGS=-g -O0 -fno-operator-names
LFLAGS = -cclib -lstdc++
# bdd.cmi : bdd.mli
# ocamlopt -c bdd.mli
bdd.cmx : bdd.ml
$(OCAMLOPT) -c bdd.ml
test.cmx : test.ml
$(OCAMLOPT) -c test.ml
gbdd_cml.o : gbdd.h gbdd_cml.cc
$(CPP_COMPILER) -c $(CPP_FLAGS) gbdd_cml.cc -o gbdd_cml.o
gbdd.o : gbdd.h gbdd.cc
$(CPP_COMPILER) -c $(CPP_FLAGS) gbdd.cc -o gbdd.o
test : bdd.cmx gbdd_cml.o gbdd.o test.cmx
$(OCAMLOPT) bdd.cmx test.cmx gbdd_cml.o gbdd.o $(LFLAGS) -o test
libbdd_stubs.a : gbdd_cml.o gbdd.o
ar rc libbdd_stubs.a gbdd_cml.o gbdd.o
ranlib libbdd_stubs.a
%.cmo: %.ml %.cmi
$(OCAMLC) -c $<
bdd.cma: bdd.cmo
$(OCAMLC) -a -o bdd.cma bdd.cmo
bdd.cmxa : bdd.ml libbdd_stubs.a bdd.cmx
$(OCAMLOPT) -a -verbose -cclib -lstdc++ -cclib -lbdd_stubs \
-o bdd.cmxa bdd.cmx
bdd.a: bdd.cmx
ar rc bdd.a bdd.o
ranlib bdd.a
all : bdd.a libbdd_stubs.a bdd.cmxa bdd.cma
clean:
rm -f *.o *.cmo *.cmi *.cmx *.a *.cma *.cmxa
cp:
cp libbdd_stubs.a ../$(HOSTTYPE)/lib/
cp bdd.a ../$(HOSTTYPE)/lib/
cp bdd.a ../$(HOSTTYPE)/lib/libbdd.a
cp bdd.cm* ../$(HOSTTYPE)/lib/
VERIMAG_INSTALL_DIR=`ocamlc -where`/lucky
cp-verimag:
cp libbdd_stubs.a $(VERIMAG_INSTALL_DIR)
cp bdd.a $(VERIMAG_INSTALL_DIR)
cp bdd.a $(VERIMAG_INSTALL_DIR)/libbdd.a
cp bdd.cm* $(VERIMAG_INSTALL_DIR)
-include ../Makefile.version
# to run after a checkout in a fresh WS, or a change in the ocaml version
......@@ -16,18 +17,6 @@ clean:
VERSION:=$(shell E=`git log --oneline | wc -l` ; echo "$$E-166" | bc )
VERSION:="1.$(VERSION)"
VERSION:="1.50"
SHA:=`git log -1 --pretty=format:"%h"`
gen_version:
rm -f source/version.ml
echo "let str=\"$(VERSION)\"" > source/version.ml
echo "let sha=\"$(SHA)\"" >> source/version.ml
rm version.tex
date +VERSION_DATE=%d-%m-%y > version.tex
echo "\\newcommand{\\version}{$(VERSION)}" > version.tex
echo "\\newcommand{\\versiondate}{`date +%d-%m-%y`}" >> version.tex
# \newcommand{\version}{unstable.3}
......@@ -35,9 +24,13 @@ gen_version:
cia:
test:
cd example ; make test
cia: test
git commit -a -F log
ci:
ci: test
git commit -F log
......
#
#
#
# Where to find libs
INCDIRS = @LURETTEPATH@/@HOST_TYPE@/lib @MORE_INCLUDE@
LIBDIRS = @LURETTEPATH@/@HOST_TYPE@/lib @MORE_LIB@
HOST_TYPE=@HOST_TYPE@
LURETTE_PATH = @LURETTEPATH@
#
# Makefile.common for building binaries
#
#
OCAMLMAKEFILE = $(HOME)/lurette/OcamlMakefile
LURETTE_PATH = $(HOME)/lurette
ifeq ($(HOST_TYPE),win32)
OCAML_LIB="c:\TEMP\ocaml\lib"
OCAMLOPT = /cygdrive/c/TEMP/ocaml/bin/ocamlopt
OCAMLC = /cygdrive/c/TEMP/ocaml/bin/ocamlc
OCAML = /cygdrive/c/TEMP/ocaml/bin/ocaml
CPP_COMPILER=g++ -mno-cygwin
CPP_LINKER=g++ -mno-cygwin
CC=gcc -mno-cygwin -Wall -g -DWIN32 -I "c:\TEMP\ocaml\lib"
OCAMLLIB = "c:\TEMP\ocaml\lib"
INCDIRS = u:\\cygwin\\lib c:\\TEMP\\ocaml\\lib
LIBDIRS = u:\\cygwin\\lib c:\\TEMP\\ocaml\\lib
CAML_INSTALL_DIR=/cygdrive/c/TEMP/ocaml
SYNCHRONE_DIR=//ARPONT/www-verimag/SYNCHRONE
SYNCHRONE_LURETTE_DIR=//ARPONT/www-verimag/SYNCHRONE/lurette/
EXE := .exe
HOSTTYPE32=win32
DWIN32 = -DWIN32 -mno-cygwin -I "c:\TEMP\ocaml\lib" -L "c:\TEMP\ocaml\lib"
else
ifeq ($(HOST_TYPE),sparc-sun)
EXE :=
INCDIRS = $(HOME)/$(HOSTTYPE)/lib $(SCADE_INSTALL_DIR)/lib /usr/local/soft/ocaml/3.08/lib/ocaml
LIBDIRS = $(HOME)/$(HOSTTYPE)/lib $(SCADE_INSTALL_DIR)/lib /usr/local/soft/ocaml/3.08/lib/ocaml
OCAMLLIB = /usr/local/soft/ocaml/3.08/lib/ocaml
CAML_INSTALL_DIR=/usr/local/soft/ocaml/current
SYNCHRONE_DIR=/usr/local/www/DIST-TOOLS/SYNCHRONE
SYNCHRONE_LURETTE_DIR=$(SYNCHRONE_DIR)/lurette/
EXE := #
HOSTTYPE32=$(HOST_TYPE)
DWIN32 =
else
ifeq ($(HOST_TYPE),mac)
CC=g++ -g
HOSTTYPE=mac
HOST_TYPE=mac
EXE :=
PREFIX =$(HOME)/lurette
LURETTE_PATH = $(PREFIX)
INCDIRS = $(PREFIX)/$(HOSTTYPE)/lib
LIBDIRS = $(PREFIX)/$(HOSTTYPE)/lib
OCAMLLIB = `ocamlc -where`
CAML_INSTALL_DIR=`ocamlc -where`
SYNCHRONE_DIR=/usr/local/www/DIST-TOOLS/SYNCHRONE
SYNCHRONE_LURETTE_DIR=$(SYNCHRONE_DIR)/lurette/
HOSTTYPE32=$(HOST_TYPE)
DWIN32 =
else
# LINUX quoi ...
CC=gcc -g -O2 -fpic
EXE :=
# XXX si je met des choses la, elles se retrouvent dans les .cmxa gnrs, ce qui n'est pas de bonne augure...
PREFIX =$(HOME)/lurette
LURETTE_PATH = $(PREFIX)
INCDIRS = $(PREFIX)/$(HOSTTYPE)/lib
LIBDIRS = $(PREFIX)/$(HOSTTYPE)/lib
OCAMLLIB = `ocamlc -where`
OCAMLC=$(shell which ocamlc)
CAML_INSTALL_DIR=`dirname $(OCAMLC)`
CAML_INSTALL_DIR=`ocamlc -where`
SYNCHRONE_DIR=/usr/local/www/DIST-TOOLS/SYNCHRONE
SYNCHRONE_LURETTE_DIR=$(SYNCHRONE_DIR)/lurette/
HOSTTYPE32=$(HOST_TYPE)
DWIN32 =
endif
endif
endif
OCAMLMAKEFILE = ../OcamlMakefile
#
# Makefile.common for building binaries
#
#
OCAMLMAKEFILE = $(HOME)/lurette/OcamlMakefile
LURETTE_PATH = $(HOME)/lurette
ifeq ($(HOST_TYPE),win32)
OCAML_LIB="c:\TEMP\ocaml\lib"
OCAMLOPT = /cygdrive/c/TEMP/ocaml/bin/ocamlopt
OCAMLC = /cygdrive/c/TEMP/ocaml/bin/ocamlc
OCAML = /cygdrive/c/TEMP/ocaml/bin/ocaml
CPP_COMPILER=g++ -mno-cygwin
CPP_LINKER=g++ -mno-cygwin
CC=gcc -mno-cygwin -Wall -g -DWIN32 -I "c:\TEMP\ocaml\lib"
OCAMLLIB = "c:\TEMP\ocaml\lib"
INCDIRS = u:\\cygwin\\lib c:\\TEMP\\ocaml\\lib
LIBDIRS = u:\\cygwin\\lib c:\\TEMP\\ocaml\\lib
CAML_INSTALL_DIR=/cygdrive/c/TEMP/ocaml
SYNCHRONE_DIR=//ARPONT/www-verimag/SYNCHRONE
SYNCHRONE_LURETTE_DIR=//ARPONT/www-verimag/SYNCHRONE/lurette/
EXE := .exe
HOSTTYPE32=win32
DWIN32 = -DWIN32 -mno-cygwin -I "c:\TEMP\ocaml\lib" -L "c:\TEMP\ocaml\lib"
else
ifeq ($(HOST_TYPE),sparc-sun)
EXE :=
INCDIRS = $(HOME)/$(HOSTTYPE)/lib $(SCADE_INSTALL_DIR)/lib /usr/local/soft/ocaml/3.08/lib/ocaml
LIBDIRS = $(HOME)/$(HOSTTYPE)/lib $(SCADE_INSTALL_DIR)/lib /usr/local/soft/ocaml/3.08/lib/ocaml
OCAMLLIB = /usr/local/soft/ocaml/3.08/lib/ocaml
CAML_INSTALL_DIR=/usr/local/soft/ocaml/current
SYNCHRONE_DIR=/usr/local/www/SYNCHRONE
SYNCHRONE_LURETTE_DIR=/usr/local/www/SYNCHRONE/lurette/
EXE := #
HOSTTYPE32=$(HOST_TYPE)
DWIN32 =
else
ifeq ($(HOST_TYPE),mac)
CC=g++ -g
HOSTTYPE=mac
HOST_TYPE=mac
EXE :=
PREFIX =$(HOME)/lurette
LURETTE_PATH = $(PREFIX)
INCDIRS = $(PREFIX)/$(HOSTTYPE)/lib
LIBDIRS = $(PREFIX)/$(HOSTTYPE)/lib
OCAMLLIB = `ocamlc -where`
CAML_INSTALL_DIR=`ocamlc -where`
SYNCHRONE_DIR=/usr/local/www/SYNCHRONE
SYNCHRONE_LURETTE_DIR=/usr/local/www/SYNCHRONE/lurette/
HOSTTYPE32=$(HOST_TYPE)
DWIN32 =
else
# LINUX quoi ...
CC=gcc -g -O2
EXE :=
# XXX si je met des choses la, elles se retrouvent dans les .cmxa gnrs, ce qui n'est pas de bonne augure...
PREFIX =$(HOME)/lurette
LURETTE_PATH = $(PREFIX)
INCDIRS = $(PREFIX)/$(HOSTTYPE)/lib
LIBDIRS = $(PREFIX)/$(HOSTTYPE)/lib
OCAMLLIB = `ocamlc -where`
OCAMLC=$(shell which ocamlc)
CAML_INSTALL_DIR=`dirname $(OCAMLC)`
CAML_INSTALL_DIR=`ocamlc -where`
SYNCHRONE_DIR=/usr/local/www/DIST-TOOLS/SYNCHRONE
SYNCHRONE_LURETTE_DIR=$(SYNCHRONE_DIR)/lurette/
HOSTTYPE32=$(HOST_TYPE)
DWIN32 =
endif
endif
endif
OCAMLMAKEFILE = ../OcamlMakefile
VERSION:=$(shell E=`git log --oneline | wc -l` ; echo "$$E-166" | bc )
VERSION:="1.$(VERSION)"
VERSION:="1.50"
SHA:=`git log -1 --pretty=format:"%h"`
gen_version:
rm -f source/version.ml
echo "let str=\"$(VERSION)\"" > source/version.ml
echo "let sha=\"$(SHA)\"" >> source/version.ml
rm version.tex
date +VERSION_DATE=%d-%m-%y > version.tex
echo "\\newcommand{\\version}{$(VERSION)}" > version.tex
echo "\\newcommand{\\versiondate}{`date +%d-%m-%y`}" >> version.tex
Je note ici toutes les choses que je remarque au sujet de win32...
- ZZZ attention, les binaires ne sont plus mis sous $LURETTE_PATH/$HOST_TYPE/bin
mais sous $LURETTE_PATH/bin
- liens symboliques : je n'ai pas besoin de lancer le script ~/script/lnsw, car
les liens unix et les liens win32 ne se chevauchent pas. sous win32, un fichier
toto.lnk est créé, et utilisé, bien qu'on ne voit que le fichier toto.
s'il existe un lien unix appelé toto, win32 l'ignore et point bien vers toto.lnk.
- pour pouvoir utiliser lurette depuis scade, il faut lancer scade depuis une console
apres avoir lancé un "win.bat" qui positionne les chemins comme il faut.
Par contre, pour construire les binaires win32, je le fais depuis un shell cygwin.
- xlurette/verimag est cassé parce que je n'arrive pas a trouver les bonnes
conventions d'appels. Que ce soit sour dos ou sous cygwin, lutettetop ne
trouve jamais gen_stubs (alors que ce meme lurettetop trouve tout ce qui lui
quand il est appele depuis scade...).
#################################################################################
#
# win32 = windows natif ( = mingw)
- a priori, il vaut mieux utiliser une version mingw de ocaml, ca simplifie
l'utilisation depuis scade. Il en existe des versions pre-compilées sur le site
de l'inria.
- extrait du README de ocaml :
Do *not* install the standalone distribution of MinGW, nor the
companion MSYS tools: these have problems with long command lines.
Instead, use the version of MinGW that is installed along with Cygwin.
en revanche, il faut quand même utiliser le mingw32-make, car ocamldep genere
des dependances suivants la convention windows, et du coup ocamlmakefile se viande.
arg... c'est vicieux leur conseil !
- via cygwin, il faut aussi
gmp (Math), install,
- les messages du style "undefined reference to __assert/__imp___iob" signifient
que je suis en train de melanger mingw et cygwin (typiquement, j'utilise "gcc -mno-cygwin"
avec un compilo caml compilé avec mingw).
- Quand on compile avec un ocaml/mingw, les chemins (-I, OCAMLLIB, etc) doivent
etre de la forme "c:/path_to_ocaml/lib" et non "/cygdrive/c/path_to_ocaml/lib"
- camlidl a besoin de libole32.a ???
c'est un bug : probablement que dans l'une des lib avec lesquelles je
me link a du etre compile sans -mno-cygwin (je suspecte gmp). En effet,
cette lib est une lib cygwin. Je ne devrait pas en avoir besoin.
- pour camlidl, prendre le Makefile.unix
#################################################################################
#
# cygwin
- pour installer godi sur cygwin, il faut
fileutils, gawk, gdbm, m4, sh-utils, tcltk, bzip2, diffutils, file, bc,
binutils, patch, patchutils, ncurses, make, wget, grep, sed, tar, gzip, findutils, gcc
- pour camlidl, prendre le Makefile.unix
luc4c is a C library that makes it possible to call Lucky programs
from C.
*************************************************************************
* INSTALLATION of the libraries
Just copy the files of the ./lib directory wherever it is convenient for you.
*************************************************************************
* binaries
The bin directory contains one standalone executable:
- luc2c: an experimental tool that generates C file wrappers that makes it
possible to Call Lucky programs from C (cf examples/lucky/C/Makefile).
*************************************************************************
* DOCUMENTATION
cf the "luc4c_stubs.h" that ougth to be documented enough.
Confere also the Makefile in the example directory.
......@@ -8,9 +8,6 @@ values among those.
* New feature: when some SUT or some environment inputs are missing,
use luciole to generate them.
When a SUT or an environment input is missing, call luciole to
generate it.
V1.49 (8/04/2010)
* Add support to compile Lustre V6 programs.
......
* Description de l'environement (boite 3)
Pour l'instant, on a Lustre.
Lutin est un langage à la lustre avec en plus la séquence,
l'indéterminisme plus des probas.