Bug 195737 - New port: x11-toolkits/ocaml-labltk OCaml support for TK
Summary: New port: x11-toolkits/ocaml-labltk OCaml support for TK
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Guido Falsi
Depends on:
Blocks: 199845
  Show dependency treegraph
Reported: 2014-12-06 11:56 UTC by Michael Grünewald
Modified: 2015-05-04 16:00 UTC (History)
4 users (show)

See Also:

Labltk shell archive (10.26 KB, text/plain)
2014-12-06 11:56 UTC, Michael Grünewald
no flags Details
Labltk shell archive (10.28 KB, text/plain)
2014-12-07 10:53 UTC, Michael Grünewald
no flags Details
Labltk shell archive (10.30 KB, text/plain)
2015-04-08 19:57 UTC, Michael Grünewald
no flags Details
Updated port (14.11 KB, application/x-shar)
2015-05-03 14:42 UTC, Guido Falsi
no flags Details
Newer port (14.21 KB, application/x-shar)
2015-05-03 17:22 UTC, Guido Falsi
madpilot: maintainer-approval? (michipili)

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Grünewald 2014-12-06 11:56:50 UTC
Created attachment 150261 [details]
Labltk shell archive

Starting with OCaml 4.02, TK support is provided by a separate software package.

This is is a port of this software package, it is to be used with OCaml 4.02
(see Bug 195736).
Comment 1 Michael Grünewald 2014-12-07 10:53:02 UTC
Created attachment 150301 [details]
Labltk shell archive

This new version improvements:

- http instead of https in MASTER_SITES
Comment 2 Pawel Pekala freebsd_committer 2014-12-16 22:24:47 UTC
Does not build on poudriere, please see log:

Comment 3 Michael Grünewald 2015-04-08 19:57:24 UTC
Created attachment 155350 [details]
Labltk shell archive

After a looOoong timeout, this is a second attempt! :)
Comment 4 Pawel Pekala freebsd_committer 2015-04-17 22:01:24 UTC
Build still fails:

File "searchid.ml", line 244, characters 8-18:
Error: The variant type Types.signature_item has no constructor Sig_typext
Did you mean Sig_type?
Makefile.shared:35: recipe for target 'searchid.cmo' failed
gmake[2]: *** [searchid.cmo] Error 2
gmake[2]: *** Waiting for unfinished jobs....
File "searchpos.ml", line 123, characters 16-23:
Error: This pattern matches values of type 'a * 'b
       but a pattern was expected which matches values of type
         Parsetree.core_field_type list
Makefile.shared:35: recipe for target 'searchpos.cmo' failed
gmake[2]: *** [searchpos.cmo] Error 2
gmake[2]: Leaving directory '/wrkdirs/usr/ports/x11-toolkits/ocaml-labltk/work/labltk-8.06.0/browser'
Makefile:25: recipe for target 'all' failed
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory '/wrkdirs/usr/ports/x11-toolkits/ocaml-labltk/work/labltk-8.06.0'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1
Comment 5 Michael Grünewald 2015-04-18 15:19:52 UTC
Did you try this with ocaml-4.02.1 ?  It probably does not work with previous versions and it should be commited to the ports tree with OCaml 4.02.1, as this is a package split.
Comment 6 Pawel Pekala freebsd_committer 2015-04-20 17:00:51 UTC
Um sorry no, missed that in first comment.
Comment 7 Kurt Jaeger freebsd_committer 2015-05-01 14:28:18 UTC
Testing it, I found a problem with the generated wrapper script


which references STAGEDIR. Can you try to find a solution for this ?

Here's the script contents (coming from work/labltk-8.06.0/lib/labltk):

exec /usr/local/home/pi/myp/x11-toolkits/ocaml-labltk/work/stage/usr/local/lib/ocaml/labltk/labltktop -I /usr/local/home/pi/myp/x11-toolkits/ocaml-labltk/work/stage/usr/local/lib/ocaml/labltk "$@"
Comment 8 Michael Grünewald 2015-05-03 12:26:36 UTC
Sure I will have a look at this!
Comment 9 Guido Falsi freebsd_committer 2015-05-03 14:42:04 UTC
Created attachment 156280 [details]
Updated port

I took the freedom to review your patch.

I hacked the port build system to properly support staging.

Also note that ${MKDIR} includes the -p option, so there is no need to create patchs dir by dir.

If you have any questions before you can approve this patch feel free to ask.
Comment 10 Guido Falsi freebsd_committer 2015-05-03 14:59:53 UTC
(removed dependency on 195736 to avoid circular dependency)
Comment 11 Kurt Jaeger freebsd_committer 2015-05-03 15:35:56 UTC
(In reply to Guido Falsi from comment #9)
Test-builds done on 10.1a, 9.3a, 8.4i, all fine.

If Michael approves, I'll commit it.
Comment 12 Guido Falsi freebsd_committer 2015-05-03 17:22:24 UTC
Created attachment 156298 [details]
Newer port

Revised patch.

This one also installs the "META" file, which is needed by ports using devel/ocaml-findlib

Noticed this while compiling a fix for bug 199845.
Comment 13 Guido Falsi freebsd_committer 2015-05-04 15:29:25 UTC
Committing this shortly due to it being needed by the fix for bug 199895.
Comment 14 commit-hook freebsd_committer 2015-05-04 15:39:55 UTC
A commit references this bug:

Author: madpilot
Date: Mon May  4 15:39:44 UTC 2015
New revision: 385412
URL: https://svnweb.freebsd.org/changeset/ports/385412

  Objective Caml interface to Tk

  LablTk is an interface to the Tcl/Tk GUI framework. It allows to
  develop GUI applications in a speedy and type safe way. A legacy
  Camltk interface is included. The OCamlBrowser library viewer is
  also part of this project.

  WWW: https://forge.ocamlcore.org/projects/labltk/

  PR:		195737
  Submitted by:	Michael Grunewald <michipili at gmail.com>

Comment 15 Guido Falsi freebsd_committer 2015-05-04 15:40:21 UTC
Port added to the tree.
Comment 16 Michael Grünewald 2015-05-04 16:00:33 UTC
Great! Thank you!