[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Maybe a solution for ocaml-source and cameleon



On Thu, Jan 16, 2003 at 12:04:14AM +0100, Sylvain LE GALL wrote:
> Hello,
> 
> As i said, i have take a look at cameleon package... And i have made
> some dirty tricks to get the precise file listing of what .cm[oi] are
> accessed to build cameleon.
> 
> The list is attached.

BTW, would ocamldep not give the full list if you give it the right
directory argument ?

We have the list of directory who get -Ied, just pass them as argument
to ocamldep.

> My method :
> - upload cameleon-1.2
> - unpack 
> - modify debian/rules
> 	after the compilation of ocaml-source, i add : 
> 	touch BEFORE_CAMELEON
> 	after the compilation of cameleon :
> 	cd $(OCAMLBUILD) && find ./ -anewer BEFORE_CAMELEON -and -not
> 	-type d > $(CURDIR)/debian/cameleon-support.files
> - get cameleon-support.files which contains all the file accessed by
>   ocaml ( the compiler ) when building cameleon.
> 
> I think everybody knows the -anewer meaning... But i explain ( i like to
> exlain things ) : ocaml needs to read all the .cmo to compile it with
> epeire/* files. Every time a file is accessed it update the last
> accessed attribute of the files... So i can detect what has been used.
> 
> I have only a problem : the results said that ocamllex... are used. I
> don't understand why ? If someone could explain it to me...

Will need to check.

> I count the file required : 127. There is 3200 files in ocaml-source
> compiled, i think it is reasonable to say all the file mentioned are
> usefule to build cameleon...
> 
> Maybe, it is interesting to create a package cameleon-support from this list

I will give it a deeper look this WE.

> Kind regard
> Sylvain LE GALL
> 
> ps : the list still need to be purged from some files


BTW, you could try replacing debian/ocaml-source.files by this list, and
then rebuild the ocaml package, and see if the cameleon package builds
with it.

> ./boot/ocamllex
> ./boot/ocamlrun
> ./boot/ocamlyacc
> ./bytecomp/runtimedef.cmo
> ./bytecomp/meta.cmo
> ./bytecomp/instruct.cmi
> ./bytecomp/opcodes.cmo
> ./bytecomp/bytesections.cmi
> ./bytecomp/bytesections.cmo
> ./bytecomp/dll.cmo
> ./bytecomp/symtable.cmi
> ./bytecomp/symtable.cmo
> ./config/Makefile
> ./driver/errors.cmi
> ./otherlibs/dynlink/dynlink.cmi
> ./otherlibs/dynlink/dynlink.cmo
> ./otherlibs/unix/dllunix.so
> ./otherlibs/unix/unix.cmi
> ./otherlibs/unix/unix.cma
> ./parsing/longident.cmi
> ./parsing/longident.cmo
> ./parsing/parsetree.cmi
> ./stdlib/pervasives.cmi
> ./stdlib/array.cmi
> ./stdlib/list.cmi
> ./stdlib/char.cmi
> ./stdlib/string.cmi
> ./stdlib/sys.cmi
> ./stdlib/hashtbl.cmi
> ./stdlib/sort.cmi
> ./stdlib/obj.cmi
> ./stdlib/lexing.cmi
> ./stdlib/parsing.cmi
> ./stdlib/printf.cmi
> ./stdlib/format.cmi
> ./stdlib/arg.cmi
> ./stdlib/printexc.cmi
> ./stdlib/filename.cmi
> ./stdlib/stdlib.cma
> ./stdlib/std_exit.cmo
> ./stdlib/camlheader
> ./tools/ocamldep
> ./toplevel/genprintval.cmi
> ./toplevel/genprintval.cmo
> ./typing/ident.cmi
> ./typing/ident.cmo
> ./typing/path.cmi
> ./typing/path.cmo
> ./typing/primitive.cmi
> ./typing/primitive.cmo
> ./typing/types.cmi
> ./typing/types.cmo
> ./typing/btype.cmi
> ./typing/btype.cmo
> ./typing/outcometree.cmi
> ./typing/oprint.cmi
> ./typing/oprint.cmo
> ./typing/subst.cmo
> ./typing/predef.cmi
> ./typing/predef.cmo
> ./typing/datarepr.cmo
> ./typing/env.cmi
> ./typing/env.cmo
> ./typing/typedtree.cmo
> ./typing/ctype.cmi
> ./typing/ctype.cmo
> ./typing/printtyp.cmi
> ./typing/printtyp.cmo
> ./typing/mtype.cmi
> ./typing/mtype.cmo
> ./utils/misc.cmi
> ./utils/misc.cmo
> ./utils/tbl.cmo
> ./utils/config.cmi
> ./utils/config.cmo
> ./utils/clflags.cmo
> ./utils/clflags.cmi
> ./utils/warnings.cmi
> ./ocamlc
> ./ocamlcomp.sh

These two, we don't need.

Friendly,

Sven Luther



Reply to: