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

