Update: lang/ocaml 4.08.1

classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

Update: lang/ocaml 4.08.1

Christopher Zimmermann-2
Hi,

finally here's the update of OCaml to 4.08.1. Now that all dependent
ports are prepared it is pretty straight-forward:

* Most of the diff is revision bumps of dependent packages
* adapt the new configure script for our libbfd link requirements
* pass LDFLAGS and CFLAGS to the new configure script
* net/unison needed some help to avoid deprecated library functions.
* remove devel/ocaml-configurator, since this is now bundled with dune.

OKs?

Christopher


--
http://gmerlin.de
OpenPGP: http://gmerlin.de/christopher.pub
CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1

ocaml48.diff.gz (27K) Download Attachment
attachment1 (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Update: lang/ocaml 4.08.1

Kenneth Westerback
ok krw@

.... Ken

> On Sep 16, 2019, at 4:43 PM, Christopher Zimmermann <[hidden email]> wrote:
>
> Hi,
>
> finally here's the update of OCaml to 4.08.1. Now that all dependent
> ports are prepared it is pretty straight-forward:
>
> * Most of the diff is revision bumps of dependent packages
> * adapt the new configure script for our libbfd link requirements
> * pass LDFLAGS and CFLAGS to the new configure script
> * net/unison needed some help to avoid deprecated library functions.
> * remove devel/ocaml-configurator, since this is now bundled with dune.
>
> OKs?
>
> Christopher
>
>
> --
> http://gmerlin.de
> OpenPGP: http://gmerlin.de/christopher.pub
> CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1
> <ocaml48.diff.gz>

Reply | Threaded
Open this post in threaded view
|

Re: Update: lang/ocaml 4.08.1

Daniel Dickman
In reply to this post by Christopher Zimmermann-2


> On Sep 16, 2019, at 4:43 PM, Christopher Zimmermann <[hidden email]> wrote:
>
> Hi,
>
> finally here's the update of OCaml to 4.08.1. Now that all dependent
> ports are prepared it is pretty straight-forward:
>
> * Most of the diff is revision bumps of dependent packages
> * adapt the new configure script for our libbfd link requirements
> * pass LDFLAGS and CFLAGS to the new configure script
> * net/unison needed some help to avoid deprecated library functions.
> * remove devel/ocaml-configurator, since this is now bundled with dune.
>
> OKs?

Nice work.

Was the refman-html file rerolled upstream? The distinfo doesn’t seem to match on my end.

After fixing the distinfo, the new ocaml unfortunately still fails to build for me on i386.

Here’s the log:
http://dickman.org/openbsd/ports/ocaml.i386.log


Reply | Threaded
Open this post in threaded view
|

Re: Update: lang/ocaml 4.08.1

Christopher Zimmermann-2
On Mon, 16 Sep 2019 23:14:47 -0400
Daniel Dickman <[hidden email]> wrote:

> > On Sep 16, 2019, at 4:43 PM, Christopher Zimmermann
> > <[hidden email]> wrote:
> >
> > Hi,
> >
> > finally here's the update of OCaml to 4.08.1. Now that all dependent
> > ports are prepared it is pretty straight-forward:
> >
> > * Most of the diff is revision bumps of dependent packages
> > * adapt the new configure script for our libbfd link requirements
> > * pass LDFLAGS and CFLAGS to the new configure script
> > * net/unison needed some help to avoid deprecated library functions.
> > * remove devel/ocaml-configurator, since this is now bundled with
> > dune.
> >
> > OKs?  
>
> Nice work.
>
> Was the refman-html file rerolled upstream? The distinfo doesn’t seem
> to match on my end.
>
> After fixing the distinfo, the new ocaml unfortunately still fails to
> build for me on i386.
>
> Here’s the log:
> http://dickman.org/openbsd/ports/ocaml.i386.log
This is fixed in the attached diff. Successfully tested again by Daniel
on i386. More OKs?

Christopher



--
http://gmerlin.de
OpenPGP: http://gmerlin.de/christopher.pub
CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1

ocaml48.diff.gz (26K) Download Attachment
attachment1 (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Update: lang/ocaml 4.08.1

Kenneth Westerback
ok krw@

.... Ken

> On Sep 18, 2019, at 3:45 AM, Christopher Zimmermann <[hidden email]> wrote:
>
> On Mon, 16 Sep 2019 23:14:47 -0400
> Daniel Dickman <[hidden email]> wrote:
>
>>> On Sep 16, 2019, at 4:43 PM, Christopher Zimmermann
>>> <[hidden email]> wrote:
>>>
>>> Hi,
>>>
>>> finally here's the update of OCaml to 4.08.1. Now that all dependent
>>> ports are prepared it is pretty straight-forward:
>>>
>>> * Most of the diff is revision bumps of dependent packages
>>> * adapt the new configure script for our libbfd link requirements
>>> * pass LDFLAGS and CFLAGS to the new configure script
>>> * net/unison needed some help to avoid deprecated library functions.
>>> * remove devel/ocaml-configurator, since this is now bundled with
>>> dune.
>>>
>>> OKs?  
>>
>> Nice work.
>>
>> Was the refman-html file rerolled upstream? The distinfo doesn’t seem
>> to match on my end.
>>
>> After fixing the distinfo, the new ocaml unfortunately still fails to
>> build for me on i386.
>>
>> Here’s the log:
>> http://dickman.org/openbsd/ports/ocaml.i386.log
>
> This is fixed in the attached diff. Successfully tested again by Daniel
> on i386. More OKs?
>
> Christopher
>
>
>
> --
> http://gmerlin.de
> OpenPGP: http://gmerlin.de/christopher.pub
> CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1
> <ocaml48.diff.gz>

Reply | Threaded
Open this post in threaded view
|

Re: Update: lang/ocaml 4.08.1

Laurence Tratt
In reply to this post by Christopher Zimmermann-2
On Mon, Sep 16, 2019 at 10:43:29PM +0200, Christopher Zimmermann wrote:

Hello Christopher,

> finally here's the update of OCaml to 4.08.1.
[...]
> * net/unison needed some help to avoid deprecated library functions.

Since other people might be affected by this, it looks like OCaml has changed
the marshalling format or similar (again...), so Unison from -current is now
incompatible with -stable. I doubt there's anything we can do about this
except, perhaps, a) add a warning to the upgrade page b) maybe expand
pkg/README to spell out the commands needed to install Unison via OPAM.


Laurie

Reply | Threaded
Open this post in threaded view
|

Re: Update: lang/ocaml 4.08.1

Christopher Zimmermann-5
On Fri, 20 Sep 2019 13:29:31 +0100
Laurence Tratt <[hidden email]> wrote:

> On Mon, Sep 16, 2019 at 10:43:29PM +0200, Christopher Zimmermann
> wrote:
>
> Hello Christopher,
>
> > finally here's the update of OCaml to 4.08.1.  
> [...]
> > * net/unison needed some help to avoid deprecated library
> > functions.  
>
> Since other people might be affected by this, it looks like OCaml has
> changed the marshalling format or similar (again...), so Unison from
> -current is now incompatible with -stable. I doubt there's anything
> we can do about this except, perhaps, a) add a warning to the upgrade
> page b) maybe expand pkg/README to spell out the commands needed to
> install Unison via OPAM.
That's what I would recommend in pkg/README:

$ OPAMROOT=~/opam_unison
$ opam init --compiler 4.02.3
$ opam install unison
$ ${OPAMROOT}/4.02.3/bin/unison

Would you mind testing it ?

Christopher

--
http://gmerlin.de
OpenPGP: http://gmerlin.de/christopher.pub
CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1

attachment0 (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Update: lang/ocaml 4.08.1

Laurence Tratt
On Sat, Sep 21, 2019 at 09:06:16AM +0200, Christopher Zimmermann wrote:

Hello Christopher,

>> Since other people might be affected by this, it looks like OCaml has
>> changed the marshalling format or similar (again...), so Unison from
>> -current is now incompatible with -stable. I doubt there's anything we can
>> do about this except, perhaps, a) add a warning to the upgrade page b)
>> maybe expand pkg/README to spell out the commands needed to install Unison
>> via OPAM.
> That's what I would recommend in pkg/README:
>
> $ OPAMROOT=~/opam_unison
> $ opam init --compiler 4.02.3
> $ opam install unison
> $ ${OPAMROOT}/4.02.3/bin/unison
>
> Would you mind testing it ?

That works for me, with one small caveat -- since it builds the GUI flavour
(I must admit, I'd forgotten that Unison has a GUI!), it does require the
system to have gtk+2 installed. So it might be worth mentioning that.
Otherwise, I think those steps are very helpful -- thanks!


Laurie

Reply | Threaded
Open this post in threaded view
|

net/unison: document workaround for incompatible OCaml versions

Christopher Zimmermann-5
On Sat, 21 Sep 2019 09:35:50 +0100
Laurence Tratt <[hidden email]> wrote:

> On Sat, Sep 21, 2019 at 09:06:16AM +0200, Christopher Zimmermann
> wrote:
>
> Hello Christopher,
>
> >> Since other people might be affected by this, it looks like OCaml
> >> has changed the marshalling format or similar (again...), so
> >> Unison from -current is now incompatible with -stable. I doubt
> >> there's anything we can do about this except, perhaps, a) add a
> >> warning to the upgrade page b) maybe expand pkg/README to spell
> >> out the commands needed to install Unison via OPAM.  
> > That's what I would recommend in pkg/README:
> >
> > $ OPAMROOT=~/opam_unison
> > $ opam init --compiler 4.02.3
> > $ opam install unison
> > $ ${OPAMROOT}/4.02.3/bin/unison
> >
> > Would you mind testing it ?  
>
> That works for me, with one small caveat -- since it builds the GUI
> flavour (I must admit, I'd forgotten that Unison has a GUI!), it does
> require the system to have gtk+2 installed. So it might be worth
> mentioning that. Otherwise, I think those steps are very helpful --
> thanks!
OK?

Index: 2.4x/pkg/README
===================================================================
RCS file: /cvs/ports/net/unison/2.4x/pkg/README,v
retrieving revision 1.2
diff -u -p -r1.2 README
--- 2.4x/pkg/README 4 Sep 2018 12:46:19 -0000 1.2
+++ 2.4x/pkg/README 22 Sep 2019 14:05:25 -0000
@@ -8,5 +8,11 @@ Unison uses native OCaml marshalling in
 means that unison might not work when the OCaml versions of
 two instances are out of sync.
 One way to work around this limitation of unison is to use
-the OPAM OCaml package and compiler manager to sync the
-OCaml versions on your machines.
+the OPAM OCaml package manager to build unison with the same
+version of the OCaml compiler on all machines:
+
+doas pkg_add opam
+opam init --no-setup --root ~/opam_unison \
+       --compiler ocaml-base-compiler.4.09.0
+opam install unison lablgtk  # To build without the gui, remove lablgtk
+$(opam var bin)/unison
Index: 2.5x/pkg/README
===================================================================
RCS file: /cvs/ports/net/unison/2.5x/pkg/README,v
retrieving revision 1.2
diff -u -p -r1.2 README
--- 2.5x/pkg/README 4 Sep 2018 12:46:19 -0000 1.2
+++ 2.5x/pkg/README 22 Sep 2019 14:05:25 -0000
@@ -8,5 +8,11 @@ Unison uses native OCaml marshalling in
 means that unison might not work when the OCaml versions of
 two instances are out of sync.
 One way to work around this limitation of unison is to use
-the OPAM OCaml package and compiler manager to sync the
-OCaml versions on your machines.
+the OPAM OCaml package manager to build unison with the same
+version of the OCaml compiler on all machines:
+
+doas pkg_add opam
+opam init --no-setup --root ~/opam_unison \
+       --compiler ocaml-base-compiler.4.09.0
+opam install unison lablgtk  # To build without the gui, remove lablgtk
+$(opam var bin)/unison




--
http://gmerlin.de
OpenPGP: http://gmerlin.de/christopher.pub
CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1

attachment0 (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: net/unison: document workaround for incompatible OCaml versions

Stuart Henderson
On 2019/09/22 16:10, Christopher Zimmermann wrote:

> On Sat, 21 Sep 2019 09:35:50 +0100
> Laurence Tratt <[hidden email]> wrote:
>
> > On Sat, Sep 21, 2019 at 09:06:16AM +0200, Christopher Zimmermann
> > wrote:
> >
> > Hello Christopher,
> >
> > >> Since other people might be affected by this, it looks like OCaml
> > >> has changed the marshalling format or similar (again...), so
> > >> Unison from -current is now incompatible with -stable. I doubt
> > >> there's anything we can do about this except, perhaps, a) add a
> > >> warning to the upgrade page b) maybe expand pkg/README to spell
> > >> out the commands needed to install Unison via OPAM.  
> > > That's what I would recommend in pkg/README:
> > >
> > > $ OPAMROOT=~/opam_unison
> > > $ opam init --compiler 4.02.3
> > > $ opam install unison
> > > $ ${OPAMROOT}/4.02.3/bin/unison
> > >
> > > Would you mind testing it ?  
> >
> > That works for me, with one small caveat -- since it builds the GUI
> > flavour (I must admit, I'd forgotten that Unison has a GUI!), it does
> > require the system to have gtk+2 installed. So it might be worth
> > mentioning that. Otherwise, I think those steps are very helpful --
> > thanks!
>
> OK?
>
> Index: 2.4x/pkg/README
> ===================================================================
> RCS file: /cvs/ports/net/unison/2.4x/pkg/README,v
> retrieving revision 1.2
> diff -u -p -r1.2 README
> --- 2.4x/pkg/README 4 Sep 2018 12:46:19 -0000 1.2
> +++ 2.4x/pkg/README 22 Sep 2019 14:05:25 -0000
> @@ -8,5 +8,11 @@ Unison uses native OCaml marshalling in
>  means that unison might not work when the OCaml versions of
>  two instances are out of sync.
>  One way to work around this limitation of unison is to use
> -the OPAM OCaml package and compiler manager to sync the
> -OCaml versions on your machines.
> +the OPAM OCaml package manager to build unison with the same
> +version of the OCaml compiler on all machines:
> +
> +doas pkg_add opam
> +opam init --no-setup --root ~/opam_unison \
> +       --compiler ocaml-base-compiler.4.09.0
> +opam install unison lablgtk  # To build without the gui, remove lablgtk
> +$(opam var bin)/unison
> Index: 2.5x/pkg/README
> ===================================================================
> RCS file: /cvs/ports/net/unison/2.5x/pkg/README,v
> retrieving revision 1.2
> diff -u -p -r1.2 README
> --- 2.5x/pkg/README 4 Sep 2018 12:46:19 -0000 1.2
> +++ 2.5x/pkg/README 22 Sep 2019 14:05:25 -0000
> @@ -8,5 +8,11 @@ Unison uses native OCaml marshalling in
>  means that unison might not work when the OCaml versions of
>  two instances are out of sync.
>  One way to work around this limitation of unison is to use
> -the OPAM OCaml package and compiler manager to sync the
> -OCaml versions on your machines.
> +the OPAM OCaml package manager to build unison with the same
> +version of the OCaml compiler on all machines:
> +
> +doas pkg_add opam
> +opam init --no-setup --root ~/opam_unison \
> +       --compiler ocaml-base-compiler.4.09.0
> +opam install unison lablgtk  # To build without the gui, remove lablgtk
> +$(opam var bin)/unison
>
>
>
>
> --
> http://gmerlin.de
> OpenPGP: http://gmerlin.de/christopher.pub
> CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1



Seems a useful addition but it changes the package so requires
a REVISION bump.

Reply | Threaded
Open this post in threaded view
|

Re: net/unison: document workaround for incompatible OCaml versions

Bjorn Ketelaars
In reply to this post by Christopher Zimmermann-5
On Sun 22/09/2019 16:10, Christopher Zimmermann wrote:

> On Sat, 21 Sep 2019 09:35:50 +0100
> Laurence Tratt <[hidden email]> wrote:
>
> > On Sat, Sep 21, 2019 at 09:06:16AM +0200, Christopher Zimmermann
> > wrote:
> >
> > Hello Christopher,
> >
> > >> Since other people might be affected by this, it looks like OCaml
> > >> has changed the marshalling format or similar (again...), so
> > >> Unison from -current is now incompatible with -stable. I doubt
> > >> there's anything we can do about this except, perhaps, a) add a
> > >> warning to the upgrade page b) maybe expand pkg/README to spell
> > >> out the commands needed to install Unison via OPAM.  
> > > That's what I would recommend in pkg/README:
> > >
> > > $ OPAMROOT=~/opam_unison
> > > $ opam init --compiler 4.02.3
> > > $ opam install unison
> > > $ ${OPAMROOT}/4.02.3/bin/unison
> > >
> > > Would you mind testing it ?  
> >
> > That works for me, with one small caveat -- since it builds the GUI
> > flavour (I must admit, I'd forgotten that Unison has a GUI!), it does
> > require the system to have gtk+2 installed. So it might be worth
> > mentioning that. Otherwise, I think those steps are very helpful --
> > thanks!
>
> OK?

Makes sense. Please bump REVISION in 2.4x/Makefile, and 2.5x/Makefile.

OK bket@

Reply | Threaded
Open this post in threaded view
|

Re: net/unison: document workaround for incompatible OCaml versions

Laurence Tratt
In reply to this post by Christopher Zimmermann-5
On Sun, Sep 22, 2019 at 04:10:23PM +0200, Christopher Zimmermann wrote:

Hello Christopher,

> +doas pkg_add opam
> +opam init --no-setup --root ~/opam_unison \
> +       --compiler ocaml-base-compiler.4.09.0
> +opam install unison lablgtk  # To build without the gui, remove lablgtk
> +$(opam var bin)/unison

This doesn't quite work for me on stable. I had to do:

  opam init --no-setup --root ~/opam_unison \
    --compiler ocaml-base-compiler.4.02.03

i.e. an older version of the compiler (4.09.0 doesn't seem to build on
stable, although I don't understand the error message). And then:

  opam install --root ~/opam_unison unison
  $(opam var --root=~/opam_unison bin)/unison

I wonder if you had the OPAM_ROOT variable set which is why it worked for
you?


Laurie

Reply | Threaded
Open this post in threaded view
|

Re: net/unison: document workaround for incompatible OCaml versions

Christopher Zimmermann-2
On Sun, 22 Sep 2019 18:26:54 +0100
Laurence Tratt <[hidden email]> wrote:

> On Sun, Sep 22, 2019 at 04:10:23PM +0200, Christopher Zimmermann
> wrote:
>
> Hello Christopher,
>
> > +doas pkg_add opam
> > +opam init --no-setup --root ~/opam_unison \
> > +       --compiler ocaml-base-compiler.4.09.0
> > +opam install unison lablgtk  # To build without the gui, remove
> > lablgtk +$(opam var bin)/unison  
>
> This doesn't quite work for me on stable. I had to do:
>
>   opam init --no-setup --root ~/opam_unison \
>     --compiler ocaml-base-compiler.4.02.03
>
> i.e. an older version of the compiler (4.09.0 doesn't seem to build on
> stable, although I don't understand the error message). And then:
>
>   opam install --root ~/opam_unison unison
>   $(opam var --root=~/opam_unison bin)/unison
>
> I wonder if you had the OPAM_ROOT variable set which is why it worked
> for you?
Indeed. You will neep OPAM_ROOT set or add another --root option. I'll
add that.

>
> Laurie
>



--
http://gmerlin.de
OpenPGP: http://gmerlin.de/christopher.pub
CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1

attachment0 (849 bytes) Download Attachment