ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] rpm-build-ocaml [3]
@ 2008-04-02  6:47 Alexey Tourbin
  0 siblings, 0 replies; only message in thread
From: Alexey Tourbin @ 2008-04-02  6:47 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 2065 bytes --]

Я сделал почти всё, что хотел сделать с окамлем и его зависимостями.
Резюмирую.

1) Зависимости между байткод-юнитами окамля будут осуществляться через
виртуальные зависимости вида
	ocaml-cmi(...) = V-hash
2) Зависимости между native-юнитами окамля будут осуществляться через
виртуальные зависимости вида
	ocaml-cmx(...) = V-hash

Суффиксы -cmi и -cmx выбраны after asmcomp/compilenv.ml:
    42      mutable ui_imports_cmi: (string * Digest.t) list; (* Interfaces imported *)
    43      mutable ui_imports_cmx: (string * Digest.t) list; (* Infos imported *)

3) Зависимости на ELF-плагины, подгружаемые из байткода, будут
осуществляться через виртуальные зависимости вида
	ocaml-dll(...)

4) Для "!#/usr/bin/ocamlrun" байткода будет выставляться зависимость
вида
	ocaml-runtime = V

5) Линковочные зависимости на сишные *-devel пакеты выставляются
автоматически.

Пример 1.

$ /usr/lib/rpm/ocaml.req -v /usr/lib/ocaml/dbm.cmxa 
ocaml-cmi(Dbm) = 3.10-6AB42DFA                                                                                                               ocaml-cmi(Pervasives) = 3.10-8BA3D1FA
ocaml-cmi(Callback) = 3.10-E5CA1FB5
ocaml-cmx(Callback) = 3.10-A3F42724
ocaml-cmx(Pervasives) = 3.10-B5D0210C
ocaml.req: /usr/lib/ocaml/dbm.cmxa: -ldb -> /usr/lib/libdb.so -> libdb4.4-devel
libdb4.4-devel
ocaml.req: /usr/lib/ocaml/dbm.cmxa: -lmldbm -> /usr/lib/ocaml/libmldbm.a -> ocaml
ocaml
$

Пример 2.

$ /usr/lib/rpm/ocaml.req /usr/bin/ocamlbrowser     
ocaml-runtime = 3.10
ocaml-dll(unix)
ocaml-dll(str)
ocaml-dll(labltk)
$

Я локально пересобрал несколько пакетов и убедился, что зависимости
проставляются правильно, и анметов нету.

Специалисты по окамлю благоволят смотреть gear-репозитарии
/people/at/packages/rpm-build-ocaml.git
/people/at/packages/ocaml.git

Если квалифицированных мнений не поступт, то завтра я залью всё это
в incoming и буду уповать на высшие инстанции!  (Минимальные набор
пакетов, который я собираюсь залить -- rpm-build-ocaml, ocaml, and
findlib, in that order).

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-04-02  6:47 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-02  6:47 [devel] rpm-build-ocaml [3] Alexey Tourbin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git