Bug 195737

Summary: New port: x11-toolkits/ocaml-labltk OCaml support for TK
Product: Ports & Packages Reporter: Michael Grünewald <michipili>
Component: Individual Port(s)Assignee: Guido Falsi <madpilot>
Status: Closed FIXED    
Severity: Affects Only Me CC: madpilot, michipili, pawel, pi
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Bug Depends on:    
Bug Blocks: 199845    
Attachments:
Description Flags
Labltk shell archive
none
Labltk shell archive
none
Labltk shell archive
none
Updated port
none
Newer port madpilot: maintainer-approval? (michipili)

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:

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

http://people.freebsd.org/~pawel/buildlogs/ocaml-labltk-8.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 freebsd_triage 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 freebsd_triage 2015-04-20 17:00:51 UTC
Um sorry no, missed that in first comment.
Comment 7 Kurt Jaeger freebsd_committer freebsd_triage 2015-05-01 14:28:18 UTC
Testing it, I found a problem with the generated wrapper script

/usr/local/bin/labltk

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):

#!/bin/sh
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 freebsd_triage 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 freebsd_triage 2015-05-03 14:59:53 UTC
(removed dependency on 195736 to avoid circular dependency)
Comment 11 Kurt Jaeger freebsd_committer freebsd_triage 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 freebsd_triage 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 freebsd_triage 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 freebsd_triage 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

Log:
  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>

Changes:
  head/x11-toolkits/Makefile
  head/x11-toolkits/ocaml-labltk/
  head/x11-toolkits/ocaml-labltk/Makefile
  head/x11-toolkits/ocaml-labltk/distinfo
  head/x11-toolkits/ocaml-labltk/files/
  head/x11-toolkits/ocaml-labltk/files/patch-configure
  head/x11-toolkits/ocaml-labltk/files/patch-lib_Makefile
  head/x11-toolkits/ocaml-labltk/pkg-descr
  head/x11-toolkits/ocaml-labltk/pkg-plist
Comment 15 Guido Falsi freebsd_committer freebsd_triage 2015-05-04 15:40:21 UTC
Port added to the tree.
Thanks!
Comment 16 Michael Grünewald 2015-05-04 16:00:33 UTC
Great! Thank you!