pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/lang/ocaml



Module Name:    pkgsrc
Committed By:   dholland
Date:           Sat Nov 30 01:10:52 UTC 2024

Modified Files:
        pkgsrc/lang/ocaml: Makefile.common distinfo
        pkgsrc/lang/ocaml/patches: patch-man_Makefile
            patch-otherlibs_systhreads_Makefile patch-runtime_sak.c

Log Message:
lang/ocaml: update to 4.14.2.

pkgsrc changes:

- Correct patch-runtime_sak.c, which had been doing the wrong thing
to fix ctype abuse.

- Makefile.common is no longer used by anything else; note that
(removing it is for a future not-just-maintenance change)

Upstream changes:

Runtime system:

    #11764, #12577: Add prototypes to old-style C function definitions
and declarations. (Antonin Décimo, review by Xavier Leroy and Nick
Barnes)

    #11763, #11759, #11861, #12509, #12577: Use strict prototypes on
primitives. (Antonin Décimo, review by Xavier Leroy, David Allsopp,
Sébastien Hinderer and Nick Barnes)

    (breaking change) #10723: do not use -flat-namespace linking for
macOS. (Carlo Cabrera, review by Damien Doligez)

    #11332, #12702: make sure Bool_val(v) has type bool in C++ (Xavier
Leroy, report by ygrek, review by Gabriel Scherer)

Build system:

    #11590: Allow installing to a destination path containing spaces.
(Élie Brami, review by Sébastien Hinderer and David Allsopp)

    #12372: Pass option -no-execute-only to the linker for OpenBSD >=
7.3 so that code sections remain readable, as needed for closure
marshaling. (Xavier Leroy and Anil Madhavapeddy, review by Anil
Madhavapeddy and Sébastien Hinderer)

    #12903: Disable control flow integrity on OpenBSD >= 7.4 to avoid
illegal instruction errors on certain CPUs. (Michael Hendricks, review
by Miod Vallat)

Bug fixes:

    #12061, #12063: don't add inconsistent equalities when computing
high-level error messages for functor applications and inclusions.
(Florian Angeletti, review by Gabriel Scherer)

    #12878: fix incorrect treatment of injectivity for private
recursive types. (Jeremy Yallop, review by Gabriel Scherer and Jacques
Garrigue)

    #12971, #12974: fix an uncaught Ctype.Escape exception on some
invalid programs forming recursive types. (Gabriel Scherer, review by
Florian Angeletti, report by Neven Villani)

    #12264, #12289: Fix compact_allocate to avoid a pathological case
that causes very slow compaction. (Damien Doligez, report by Arseniy
Alekseyev, review by Sadiq Jaffer)

    #12513, #12518: Automatically enable emulated fma for Visual
Studio 2019+ to allow configuration with either
pre-Haswell/pre-Piledriver CPUs or running in VirtualBox. Restores
parity with the other Windows ports, which don't require explicit
--enable-imprecise-c99-float-ops. (David Allsopp, report by Jonah
Beckford and Kate Deplaix, review by Sébastien Hinderer)

    #11633, #11636: bugfix in caml_unregister_frametable (Frédéric
Recoules, review by Gabriel Scherer)

    #12636, #12646: More prudent reinitialization of I/O mutexes after
a fork() (Xavier Leroy, report by Zach Baylin, review by Enguerrand
Decorne)

    (breaking change) #10845 Emit frametable size on amd64 BSD
(OpenBSD, FreeBSD, NetBSD) systems (emitted for Linux in #8805)
(Hannes Mehnert, review by Nicolás Ojeda Bär)

    #12958: Fix tail-modulo-cons compilation of try-with, && and ||
expressions. (Gabriel Scherer and Nicolás Ojeda Bär, report by Sylvain
Boilard, review by Gabriel Scherer)

    #12116, #12993: explicitly build non PIE executables on x86 32bits
architectures (Florian Angeletti, review by David Allsopp)

    #13018: Don't pass duplicate libraries to the linker when
compiling ocamlc.opt and when using systhreads (new versions of lld
emit a warning). (David Allsopp, review by Nicolás Ojeda Bär)


To generate a diff of this commit:
cvs rdiff -u -r1.65 -r1.66 pkgsrc/lang/ocaml/Makefile.common
cvs rdiff -u -r1.146 -r1.147 pkgsrc/lang/ocaml/distinfo
cvs rdiff -u -r1.5 -r1.6 pkgsrc/lang/ocaml/patches/patch-man_Makefile
cvs rdiff -u -r1.14 -r1.15 \
    pkgsrc/lang/ocaml/patches/patch-otherlibs_systhreads_Makefile
cvs rdiff -u -r1.1 -r1.2 pkgsrc/lang/ocaml/patches/patch-runtime_sak.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/ocaml/Makefile.common
diff -u pkgsrc/lang/ocaml/Makefile.common:1.65 pkgsrc/lang/ocaml/Makefile.common:1.66
--- pkgsrc/lang/ocaml/Makefile.common:1.65      Sun Apr  9 07:27:48 2023
+++ pkgsrc/lang/ocaml/Makefile.common   Sat Nov 30 01:10:52 2024
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile.common,v 1.65 2023/04/09 07:27:48 wiz Exp $
+# $NetBSD: Makefile.common,v 1.66 2024/11/30 01:10:52 dholland Exp $
 
-# used by x11/labltk/Makefile
-DISTNAME=      ocaml-4.14.1
+# not used by anything else these days
+
+DISTNAME=      ocaml-4.14.2
 CATEGORIES=    lang
 MASTER_SITES=  http://caml.inria.fr/pub/distrib/ocaml-4.14/
 #EXTRACT_SUFX= .tar.bz2
@@ -11,7 +12,8 @@ HOMEPAGE=     https://ocaml.org/
 COMMENT=       The latest implementation of the Caml dialect of ML
 LICENSE=       gnu-gpl-v2
 
-USE_LANGUAGES+=                c99
+USE_LANGUAGES+=                c
+USE_CC_FEATURES+=      c99
 USE_TOOLS+=            gmake
 GNU_CONFIGURE=         yes
 

Index: pkgsrc/lang/ocaml/distinfo
diff -u pkgsrc/lang/ocaml/distinfo:1.146 pkgsrc/lang/ocaml/distinfo:1.147
--- pkgsrc/lang/ocaml/distinfo:1.146    Sun Apr  9 07:27:48 2023
+++ pkgsrc/lang/ocaml/distinfo  Sat Nov 30 01:10:52 2024
@@ -1,23 +1,23 @@
-$NetBSD: distinfo,v 1.146 2023/04/09 07:27:48 wiz Exp $
+$NetBSD: distinfo,v 1.147 2024/11/30 01:10:52 dholland Exp $
 
-BLAKE2s (ocaml-4.14.1.tar.gz) = 5ab5d0aba6f943ce314a69235171236dec6ec5e680afc18c8d1ee3be1db2fd2c
-SHA512 (ocaml-4.14.1.tar.gz) = 8fdeb1b370cb1f8a469a57966ac7dcb64814dd7c098a432c76bc61ba0f59d067e2b36aa29da9b86d048738db230dc5d813b99d577cdeeb4b1aa18ee563528f60
-Size (ocaml-4.14.1.tar.gz) = 5497979 bytes
+BLAKE2s (ocaml-4.14.2.tar.gz) = fecad4db2e91800ae3d676240042adf01f969e2399968bd3e120f580212688fb
+SHA512 (ocaml-4.14.2.tar.gz) = 64df6462a83058e805ab29d58ef2f3597eb0ed52bf1294a9e6303fb783845cde78c7de04d165e77454a440fa2d50ff10ca81f2d1f9294f2dccdfe28824bce028
+Size (ocaml-4.14.2.tar.gz) = 5504138 bytes
 SHA1 (patch-Makefile) = 978156d1e5795615adda840521bf5911a801f6a5
 SHA1 (patch-api__docgen_ocamldoc_Makefile) = cc677bed9d2da3d7eedd2c696ac89085bf2002d2
 SHA1 (patch-check-linker-version_sh) = c90242556207242ac58499d7f42519a10aedcca4
 SHA1 (patch-configure) = 36ddb6f19ce7564889dc48ee290904dce00b04ec
 SHA1 (patch-lex_Makefile) = ba5df45c608fa292732e1acd0d955870e60c972d
-SHA1 (patch-man_Makefile) = 3d55fe5127758566f81a1b4e55e66c6ae3a848f1
+SHA1 (patch-man_Makefile) = c091d8c545a77acbafaf110c6db3f0ed918e8632
 SHA1 (patch-ocamldoc_Makefile) = 5431d357ecbe719efffeb14826a8d79f0590784e
 SHA1 (patch-ocamldoc_odoc__messages.ml) = 77f650a5f34f40b9648a8d5091e9aa31efb5734b
 SHA1 (patch-otherlibs_Makefile.otherlibs.common) = 5518c6b4d8772d995252b6f640323e2602097c4d
-SHA1 (patch-otherlibs_systhreads_Makefile) = 3505469ae2d3cafd7283e984ebbbea47b0d59b32
+SHA1 (patch-otherlibs_systhreads_Makefile) = bf18939da81aad65e54d6b6f154e7daf8472dcae
 SHA1 (patch-otherlibs_systhreads_st__stubs.c) = 3c0aa73f0e128646c01ed3855ee9c5645d5fa3f1
 SHA1 (patch-otherlibs_unix_Makefile) = 9eaf8d561670a765a647b36486ec533c674ee609
 SHA1 (patch-runtime_Makefile) = 4daf1ddb9ce70d99719bcb0aacbaadfc393574b0
 SHA1 (patch-runtime_floats.c) = 584a30d31c7b7da4f8387dc58b90fa1a8078f723
-SHA1 (patch-runtime_sak.c) = 62a0946419b96033497a4a12105bbd9b4ef3aba6
+SHA1 (patch-runtime_sak.c) = 3685a967d462ee298debcf188f594a8d736716f6
 SHA1 (patch-testsuite_tests_lib-systhreads_testyield.ml) = 0f6d35e030de168c6f4aeb126055065ed47878aa
 SHA1 (patch-tools_Makefile) = f71ac6fa7f2ee79c6d531f95eb90d28360c04434
 SHA1 (patch-tools_ocamlmklib.ml) = 66ddab3ae0f6890326a51d315a2516fe4975107d

Index: pkgsrc/lang/ocaml/patches/patch-man_Makefile
diff -u pkgsrc/lang/ocaml/patches/patch-man_Makefile:1.5 pkgsrc/lang/ocaml/patches/patch-man_Makefile:1.6
--- pkgsrc/lang/ocaml/patches/patch-man_Makefile:1.5    Tue May 24 18:25:38 2022
+++ pkgsrc/lang/ocaml/patches/patch-man_Makefile        Sat Nov 30 01:10:52 2024
@@ -1,4 +1,4 @@
-$NetBSD: patch-man_Makefile,v 1.5 2022/05/24 18:25:38 jaapb Exp $
+$NetBSD: patch-man_Makefile,v 1.6 2024/11/30 01:10:52 dholland Exp $
 
 Use BSD_INSTALL_* instead of mkdir and cp
 
@@ -8,7 +8,7 @@ Use BSD_INSTALL_* instead of mkdir and c
  
  .PHONY: install
  install:
--      $(MKDIR) $(INSTALL_PROGRAMS_MAN_DIR)
--      $(INSTALL_DATA) $(MANPAGES) $(INSTALL_PROGRAMS_MAN_DIR)
-+      $(BSD_INSTALL_MAN_DIR) $(INSTALL_PROGRAMS_MAN_DIR)
-+      $(BSD_INSTALL_MAN) $(MANPAGES) $(INSTALL_PROGRAMS_MAN_DIR)
+-      $(MKDIR) '$(INSTALL_PROGRAMS_MAN_DIR)'
+-      $(INSTALL_DATA) $(MANPAGES) '$(INSTALL_PROGRAMS_MAN_DIR)'
++      $(BSD_INSTALL_MAN_DIR) '$(INSTALL_PROGRAMS_MAN_DIR)'
++      $(BSD_INSTALL_MAN) $(MANPAGES) '$(INSTALL_PROGRAMS_MAN_DIR)'

Index: pkgsrc/lang/ocaml/patches/patch-otherlibs_systhreads_Makefile
diff -u pkgsrc/lang/ocaml/patches/patch-otherlibs_systhreads_Makefile:1.14 pkgsrc/lang/ocaml/patches/patch-otherlibs_systhreads_Makefile:1.15
--- pkgsrc/lang/ocaml/patches/patch-otherlibs_systhreads_Makefile:1.14  Sun Apr  9 07:27:48 2023
+++ pkgsrc/lang/ocaml/patches/patch-otherlibs_systhreads_Makefile       Sat Nov 30 01:10:52 2024
@@ -1,9 +1,9 @@
-$NetBSD: patch-otherlibs_systhreads_Makefile,v 1.14 2023/04/09 07:27:48 wiz Exp $
+$NetBSD: patch-otherlibs_systhreads_Makefile,v 1.15 2024/11/30 01:10:52 dholland Exp $
 
 Use BSD_INSTALL_* instead of mkdir
 Honor LDFLAGS.
 
---- otherlibs/systhreads/Makefile.orig 2022-12-20 12:26:44.000000000 +0000
+--- otherlibs/systhreads/Makefile.orig 2024-03-14 16:57:52.000000000 +0000
 +++ otherlibs/systhreads/Makefile
 @@ -30,6 +30,7 @@ NATIVE_CPPFLAGS = \
    -DNATIVE_CODE -DTARGET_$(ARCH) -DMODEL_$(MODEL) -DSYS_$(SYSTEM)
@@ -13,25 +13,24 @@ Honor LDFLAGS.
  
  CAMLC=$(BEST_OCAMLC) $(LIBS)
  CAMLOPT=$(BEST_OCAMLOPT) $(LIBS)
-@@ -66,7 +67,7 @@ all: lib$(LIBNAME).$(A) $(LIBNAME).cma $
+@@ -66,14 +67,14 @@ all: lib$(LIBNAME).$(A) $(LIBNAME).cma $
  allopt: lib$(LIBNAME)nat.$(A) $(LIBNAME).cmxa $(CMIFILES)
  
  lib$(LIBNAME).$(A): $(BYTECODE_C_OBJS)
--      $(MKLIB_CMD) -o $(LIBNAME) $(BYTECODE_C_OBJS) $(PTHREAD_LIBS)
-+      $(MKLIB_CMD) -o $(LIBNAME) $(BYTECODE_C_OBJS) $(PTHREAD_LIBS) $(LDOPTS)
+-      $(MKLIB_CMD) -o $(LIBNAME) $(BYTECODE_C_OBJS)
++      $(MKLIB_CMD) -o $(LIBNAME) $(BYTECODE_C_OBJS) $(LDOPTS)
  
  lib$(LIBNAME)nat.$(A): $(NATIVECODE_C_OBJS)
        $(MKLIB_CMD) -o $(LIBNAME)nat $^
-@@ -74,7 +75,7 @@ lib$(LIBNAME)nat.$(A): $(NATIVECODE_C_OB
+ 
+ # Bytecode programs always link with pthread libraries
  $(LIBNAME).cma: $(THREADS_BCOBJS)
- ifeq "$(UNIX_OR_WIN32)" "unix"
-       $(MKLIB) -o $(LIBNAME) -ocamlc '$(CAMLC)' -cclib -lunix -linkall \
--        $(PTHREAD_CAML_LIBS) $^
-+        $(PTHREAD_CAML_LIBS) $(LDOPTS) $^
- # TODO: Figure out why -cclib -lunix is used here.
- # It may be because of the threadsUnix module which is deprecated.
- # It may hence be good to figure out whether this module shouldn't be
-@@ -121,7 +122,7 @@ install:
+-      $(MKLIB) -o $(LIBNAME) -ocamlc '$(CAMLC)' -linkall $^
++      $(MKLIB) -o $(LIBNAME) -ocamlc '$(CAMLC)' -linkall $(LDOPTS) $^
+ 
+ # See remark above: force static linking of libthreadsnat.a
+ $(LIBNAME).cmxa: $(THREADS_NCOBJS)
+@@ -112,7 +113,7 @@ install:
          $(INSTALL_PROG) dllthreads$(EXT_DLL) "$(INSTALL_STUBLIBDIR)"; \
        fi
        $(INSTALL_DATA) libthreads.$(A) "$(INSTALL_LIBDIR)"

Index: pkgsrc/lang/ocaml/patches/patch-runtime_sak.c
diff -u pkgsrc/lang/ocaml/patches/patch-runtime_sak.c:1.1 pkgsrc/lang/ocaml/patches/patch-runtime_sak.c:1.2
--- pkgsrc/lang/ocaml/patches/patch-runtime_sak.c:1.1   Tue May 24 18:25:38 2022
+++ pkgsrc/lang/ocaml/patches/patch-runtime_sak.c       Sat Nov 30 01:10:52 2024
@@ -1,15 +1,16 @@
-$NetBSD: patch-runtime_sak.c,v 1.1 2022/05/24 18:25:38 jaapb Exp $
+$NetBSD: patch-runtime_sak.c,v 1.2 2024/11/30 01:10:52 dholland Exp $
 
-Explicit cast to int to eliminate warning
+Fix ctype abuse.
 
---- runtime/sak.c.orig 2022-02-21 15:57:25.000000000 +0000
+--- runtime/sak.c.orig 2024-03-14 16:57:52.000000000 +0000
 +++ runtime/sak.c
-@@ -123,7 +123,7 @@ void add_stdlib_prefix(int count, char_o
-     } else {
-       /* name is a null-terminated string, so an empty string simply has the
-          null-terminator "capitalised". */
--      *name = toupper_os(*name);
-+      *name = toupper_os((int) *name);
-       printf_os(T(" stdlib__%s"), name);
-     }
-   }
+@@ -34,7 +34,8 @@
+ #define printf_os wprintf
+ #else
+ #define strncmp_os strncmp
+-#define toupper_os toupper
++/* Caution: this will not work correctly if passed EOF, but we don't do that */
++#define toupper_os(x) toupper((unsigned char)(x))
+ #define printf_os printf
+ #endif
+ 



Home | Main Index | Thread Index | Old Index