Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 424541 - dev-ml/ocaml-sqlite3 does not generate sqlite3.cmxs
Summary: dev-ml/ocaml-sqlite3 does not generate sqlite3.cmxs
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Gentoo Team for the ML programming language family
URL:
Whiteboard:
Keywords: PATCH
Depends on: 426862
Blocks:
  Show dependency tree
 
Reported: 2012-07-02 18:04 UTC by Jacques-Pascal Deplaix
Modified: 2012-07-19 23:16 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
ocaml-sqlite3.patch (ocaml-sqlite3.patch,402 bytes, patch)
2012-07-02 18:04 UTC, Jacques-Pascal Deplaix
Details | Diff
ocaml-sqlite3-1.6.1-cmxs.patch (ocaml-sqlite3-1.6.1-cmxs.patch,745 bytes, patch)
2012-07-05 08:52 UTC, Jacques-Pascal Deplaix
Details | Diff
ocaml-sqlite3-1.6.1.ebuild.patch (ocaml-sqlite3-1.6.1.ebuild.patch,405 bytes, patch)
2012-07-05 08:52 UTC, Jacques-Pascal Deplaix
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jacques-Pascal Deplaix 2012-07-02 18:04:01 UTC
As an ocaml lib, ocaml-sqlite3 should have a .cmxs

Reproducible: Always
Comment 1 Jacques-Pascal Deplaix 2012-07-02 18:04:38 UTC
Created attachment 316995 [details, diff]
ocaml-sqlite3.patch
Comment 2 Alexis Ballier gentoo-dev 2012-07-05 02:00:20 UTC
Comment on attachment 316995 [details, diff]
ocaml-sqlite3.patch

that patch does not change anything on the installed package so is certainly wrong.

anyway, imho, installing a new file is something that should be sent upstream first.
Comment 3 Jacques-Pascal Deplaix 2012-07-05 08:52:20 UTC
Created attachment 317260 [details, diff]
ocaml-sqlite3-1.6.1-cmxs.patch
Comment 4 Jacques-Pascal Deplaix 2012-07-05 08:52:49 UTC
Created attachment 317262 [details, diff]
ocaml-sqlite3-1.6.1.ebuild.patch
Comment 5 Jacques-Pascal Deplaix 2012-07-05 08:57:04 UTC
I'm sorry, I've missed it. I had not tested this patch.
These patchs are tested.

BTW: I will send an upstream patch. But for the moment can you apply these patchs ?
Comment 6 Alexis Ballier gentoo-dev 2012-07-05 18:40:51 UTC
what does need it ?
Comment 7 Jacques-Pascal Deplaix 2012-07-05 18:53:28 UTC
What ? What are you talking about ?
The patchs or the upstream team ?
Comment 8 Alexis Ballier gentoo-dev 2012-07-05 19:04:15 UTC
the cmxs :=)
Comment 9 Jacques-Pascal Deplaix 2012-07-05 19:25:37 UTC
You want to know which apps requires the cmxs ?

It is used by any applications that is compiled natively with shared lib instead of static one.

See: http://alain.frisch.fr/natdynlink.html for more informations.
For instance, it's require by www-servers/ocsigen and www-servers/ocsigenserver when launching the server with the sqlite plugin.
Comment 10 Alexis Ballier gentoo-dev 2012-07-05 20:09:55 UTC
so they require anyone wanting sqlite in ocsigen to use a patched version of ocaml-sqlite3 ? that sounds weird to me, could you please check with both upstreams ?
Comment 11 Alexis Ballier gentoo-dev 2012-07-05 20:13:32 UTC
moreover, does your patch respect this (from your link):

The new ocamlopt option -dlcode must be used when compiling a unit so that it can be put into a plugin. It can still be linked statically. Currently, -dlcode is only necessary for the Linux AMD64 port, but it is a good idea to always use it. There is theoretically a chance that -dlcode degrades performances, but it has never never been observed in practice. 


?
Comment 12 Alexis Ballier gentoo-dev 2012-07-05 20:19:06 UTC
(In reply to comment #11)
> moreover, does your patch respect this (from your link):
> 
> The new ocamlopt option -dlcode must be used when compiling a unit so that
> it can be put into a plugin. It can still be linked statically. Currently,
> -dlcode is only necessary for the Linux AMD64 port, but it is a good idea to
> always use it. There is theoretically a chance that -dlcode degrades
> performances, but it has never never been observed in practice. 
> 
> 
> ?

scratch that, it is the default now (-nodynlink disables it)
Comment 13 Jacques-Pascal Deplaix 2012-07-05 20:28:40 UTC
(In reply to comment #10)
> so they require anyone wanting sqlite in ocsigen to use a patched version of
> ocaml-sqlite3 ? that sounds weird to me, could you please check with both
> upstreams ?

https://bitbucket.org/mmottl/sqlite3-ocaml/issue/1/sqlite3cmxs-is-not-generated
Comment 14 Jacques-Pascal Deplaix 2012-07-05 20:40:25 UTC
All other distros include the .cmxs.
For instance: http://packages.debian.org/sid/i386/libsqlite3-ocaml/filelist
You can see: /usr/lib/ocaml/sqlite3/sqlite3.cmxs
Comment 15 Alexis Ballier gentoo-dev 2012-07-05 20:44:33 UTC
because they patched it locally...

i dont want to add a new abi without upstream doing it also for exactly this reason: developers then tend to think they can expect it without realizing this has been added by their distribution. we shouldnt mimic debian's bad practices.
Comment 16 Jacques-Pascal Deplaix 2012-07-05 21:05:46 UTC
(In reply to comment #15)
> because they patched it locally...
> 
> i dont want to add a new abi without upstream doing it also for exactly this
> reason: developers then tend to think they can expect it without realizing
> this has been added by their distribution. we shouldnt mimic debian's bad
> practices.

Ok, so you deprive the library users from all they can expect.

What's the problem ? The developer is aware of it. Why not just apply this patch and send the patch upstream after, like I did ?
Comment 17 Alexis Ballier gentoo-dev 2012-07-19 23:16:14 UTC
fixed by bumping to 2.0.1