OCaml: transient update of the stack to version 4.07.1

This is the first step in modernizing our OCaml ports infrastructure,
as we had accumulated substantial technical debt over the years when
many of its consumer ports had not received proper care and updates.

It is currently considered as the lowest supported version (baseline)
in majority of open-source OCaml projects, which would help to pull
up other ports, e.g. `devel/ocaml-dune' in smaller, manageable pieces.

For conservative hackers among us and for compatibility with RHEL 8
which is also on it, having 4.07 in the tree would allow users stick
to that package (pkg lock it) if needed.

PR:		250408, 262781
Exp-run by:	antoine
This commit is contained in:
Alexey Dokuchaev 2022-04-16 07:19:46 +00:00
parent e423286964
commit 317aa0442c
27 changed files with 618 additions and 418 deletions

View File

@ -14,7 +14,8 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
CONFLICTS= ccured
BUILD_DEPENDS= ocamlbuild:devel/ocaml-ocamlbuild
BUILD_DEPENDS= ocamlbuild:devel/ocaml-ocamlbuild \
${LOCALBASE}/${OCAML_SITELIBDIR}/num/META:math/ocaml-num
ONLY_FOR_ARCHS= amd64 armv7 i386 powerpc powerpc64 powerpc64le
USES= gmake perl5

View File

@ -1,7 +1,7 @@
# Created by: Michael Grünewald <michipili@gmail.com>
PORTNAME= camlp4
PORTVERSION= 4.05+2
PORTVERSION= 4.07+1
CATEGORIES= devel
PKGNAMEPREFIX= ocaml-

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1533176554
SHA256 (ocaml-camlp4-4.05+2_GH0.tar.gz) = db242c0f4896ddd9dc7d6e8064cba8bf099fb9a4d4f5ed35120978501cd3a935
SIZE (ocaml-camlp4-4.05+2_GH0.tar.gz) = 647609
TIMESTAMP = 1520427832
SHA256 (ocaml-camlp4-4.07+1_GH0.tar.gz) = ecdb8963063f41b387412317685f79823a26b3f53744f0472058991876877090
SIZE (ocaml-camlp4-4.07+1_GH0.tar.gz) = 648842

View File

@ -1,9 +1,8 @@
# Created by: Michael Grünewald <michipili@gmail.com>
PORTNAME= ppx-tools
PORTVERSION= 5.0
PORTREVISION= 1
DISTVERSIONSUFFIX= +4.05.0
PORTVERSION= 5.1
DISTVERSIONSUFFIX=+4.06.0
CATEGORIES= devel
PKGNAMEPREFIX= ocaml-

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1488115400
SHA256 (ocaml-ppx-ppx_tools-5.0+4.05.0_GH0.tar.gz) = 031e05e2f98fd77a412cff00f19262e186b0c8a1804fece06d2af05e37a563b7
SIZE (ocaml-ppx-ppx_tools-5.0+4.05.0_GH0.tar.gz) = 17893
TIMESTAMP = 1508834585
SHA256 (ocaml-ppx-ppx_tools-5.1+4.06.0_GH0.tar.gz) = 413e01444bdef2c4a231ddb1281b29bbc7b0c4bd780b7da47d9255b193bfcc56
SIZE (ocaml-ppx-ppx_tools-5.1+4.06.0_GH0.tar.gz) = 17943

View File

@ -16,6 +16,7 @@ LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/LICENSE-Tywith.txt
BUILD_DEPENDS= ocaml-type_conv>=0:devel/ocaml-type_conv
BUILD_DEPENDS+= ocamlbuild:devel/ocaml-ocamlbuild
BUILD_DEPENDS+= ${LOCALBASE}/${OCAML_SITELIBDIR}/num/META:math/ocaml-num
RUN_DEPENDS= ocaml-type_conv>=0:devel/ocaml-type_conv
OPTIONS_DEFINE= DOCS

View File

@ -2,8 +2,7 @@
# for committer: bump PORTREVISION for math/facile whenever ocaml gets updated
PORTNAME= ocaml
PORTVERSION= 4.05.0
PORTREVISION= 1
PORTVERSION= 4.07.1
CATEGORIES= lang
MASTER_SITES= http://caml.inria.fr/pub/distrib/${DISTNAME:R}/ GENTOO \
http://caml.inria.fr/pub/distrib/${DISTNAME:R}/:docs
@ -27,7 +26,7 @@ BROKEN_mips= No ASM support
BUILD_DEPENDS= as:devel/binutils
RUN_DEPENDS= as:devel/binutils
USES= cpe compiler:c11 gmake tar:xz
USES= cpe compiler:c11 gmake shebangfix tar:xz
USE_LDCONFIG= yes
CPE_VENDOR= inria
HAS_CONFIGURE= yes
@ -39,6 +38,11 @@ LDFLAGS_armv6= -Wl,-znotext
LDFLAGS_armv7= -Wl,-znotext
LDFLAGS_i386= -Wl,-znotext
SHEBANG_LANG= awk
awk_OLD_CMD= /bin/awk
awk_CMD= /usr/bin/awk
SHEBANG_FILES= tools/ocaml-instr-graph tools/ocaml-instr-report
CONFIGURE_ARGS= -verbose -prefix "${PREFIX}" \
-cc "${CC}" \
-aspp "${CC} -c" \
@ -49,6 +53,7 @@ OPTIONS_DEFAULT=X11 THREADS
CMP_LIB_DESC= Install compiler libraries
MODOPT= camlp4o camlp4r ocamlc ocamldep ocamldoc ocamllex ocamlopt
PATTERN= [[:space:]]*(do|then)?[[:space:]]*)(\$$\(CP\)|cp)([[:space:]]
DOCSDISTNAME= ${DISTNAME:C/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/\1.\2/}
CONFLICTS= metaocaml
@ -107,7 +112,7 @@ PLIST_SUB+= PROF=""
.endif
.if defined(PPC_ABI) && ${PPC_ABI} == ELFv2
EXTRA_PATCHES= ${PATCHDIR}/extra-patch-asmcomp_power_arch.ml
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-asmcomp_power_arch.ml
USE_GCC= yes
.endif
@ -129,14 +134,14 @@ post-patch:
@${REINPLACE_CMD} \
-e '\|MKLIB=|s|ar rc|${AR} rc|' \
-e '\|RANLIB|s|ranlib|${RANLIB}|' \
-e '\|bytecclinkopts=|s|""|"${LDFLAGS}"|' \
-e "\|nativecclinkopts=|s|''|\"${LDFLAGS:C/-Wl,//}\"|" \
-e '\|^ldflags=|s|""|"${LDFLAGS}"|' \
${WRKSRC}/configure
@${REINPLACE_CMD} -e 's,$$(ARCH),$$(SYSTEM_ARCH),' \
${WRKSRC}/Makefile ${WRKSRC}/Makefile.tools \
${WRKSRC}/asmrun/Makefile \
${WRKSRC}/ocamltest/Makefile \
${WRKSRC}/otherlibs/systhreads/Makefile \
${WRKSRC}/testsuite/tests/asmcomp/Makefile
${WRKSRC}/testsuite/tests/asmgen/Makefile
post-configure:
@${REINPLACE_CMD} -E \

View File

@ -1,9 +1,9 @@
TIMESTAMP = 1532851883
SHA256 (ocaml-4.05.0.tar.xz) = 04a527ba14b4d7d1b2ea7b2ae21aefecfa8d304399db94f35a96df1459e02ef9
SIZE (ocaml-4.05.0.tar.xz) = 2442036
SHA256 (ocaml-4.05-refman-html.tar.gz) = 2524723648dbbc34b42cbe2fe06822b79837299429d26ff037169b568888cd9c
SIZE (ocaml-4.05-refman-html.tar.gz) = 882287
SHA256 (ocaml-4.05-refman.ps.gz) = 1540f86028a9460313b5ab3e0544e280052577d5dc4966f80647e1f49c5ab8df
SIZE (ocaml-4.05-refman.ps.gz) = 1221553
SHA256 (ocaml-4.05-refman.pdf) = 3d3a82a676668ccf66fa6d88f46a2496c89b1488ee6098585a6b7f22a9171eef
SIZE (ocaml-4.05-refman.pdf) = 1741857
TIMESTAMP = 1538663036
SHA256 (ocaml-4.07.1.tar.xz) = dfe48b1da31da9c82d77612582fae74c80e8d1ac650e1c24f5ac9059e48307b8
SIZE (ocaml-4.07.1.tar.xz) = 2935928
SHA256 (ocaml-4.07-refman-html.tar.gz) = 6d97c1131a281aab57593602a19b2b4714dbf2663d513ae63abce2e5c02e8db8
SIZE (ocaml-4.07-refman-html.tar.gz) = 1003312
SHA256 (ocaml-4.07-refman.ps.gz) = e487b397548f54e279c9d9055611eaf05d812e14240a4c6a8d334a5e4549c99d
SIZE (ocaml-4.07-refman.ps.gz) = 1300498
SHA256 (ocaml-4.07-refman.pdf) = 99bfa85aefa0ee7a8be1f24a270fc5d778bb077cbc4e75282f69c479acf1e707
SIZE (ocaml-4.07-refman.pdf) = 1863450

View File

@ -1,48 +1,10 @@
--- asmrun/startup.c.orig 2017-07-13 08:56:44 UTC
+++ asmrun/startup.c
@@ -44,8 +44,8 @@
@@ -44,7 +44,6 @@
#endif
extern int caml_parser_trace;
-CAMLexport header_t caml_atom_table[256];
char * caml_code_area_start, * caml_code_area_end;
+struct ext_table caml_code_fragments_table;
/* Initialize the atom table and the static data and code area limits. */
--- byterun/caml/intext.h.orig 2017-07-13 08:56:44 UTC
+++ byterun/caml/intext.h
@@ -196,7 +196,7 @@ struct code_fragment {
CAMLextern struct code_fragment * caml_extern_find_code(char *addr);
-struct ext_table caml_code_fragments_table;
+extern struct ext_table caml_code_fragments_table;
#endif /* CAML_INTERNALS */
--- byterun/caml/major_gc.h.orig 2017-07-13 08:56:44 UTC
+++ byterun/caml/major_gc.h
@@ -64,9 +64,9 @@ extern uintnat total_heap_size;
extern char *caml_gc_sweep_hp;
extern int caml_major_window;
-double caml_major_ring[Max_major_window];
-int caml_major_ring_index;
-double caml_major_work_credit;
+extern double caml_major_ring[Max_major_window];
+extern int caml_major_ring_index;
+extern double caml_major_work_credit;
extern double caml_gc_clock;
/* [caml_major_gc_hook] is called just between the end of the mark
--- byterun/fix_code.c.orig 2017-07-13 08:56:44 UTC
+++ byterun/fix_code.c
@@ -38,6 +38,7 @@
code_t caml_start_code;
asize_t caml_code_size;
unsigned char * caml_saved_code;
+struct ext_table caml_code_fragments_table;
/* Read the main bytecode block from a file */
struct ext_table caml_code_fragments_table;

View File

@ -1,22 +1,13 @@
--- configure.orig 2017-07-13 08:56:44 UTC
+++ configure
@@ -806,7 +806,7 @@ if test $with_sharedlibs = "yes"; then
*-*-linux-gnu|*-*-linux|*-*-freebsd[3-9]*|*-*-freebsd[1-9][0-9]*\
|*-*-openbsd*|*-*-netbsd*|*-*-dragonfly*|*-*-gnu*|*-*-haiku*)
sharedcccompopts="-fPIC"
- mksharedlib="$bytecc -shared"
+ mksharedlib="$bytecc $bytecclinkopts -shared"
bytecclinkopts="$bytecclinkopts -Wl,-E"
byteccrpath="-Wl,-rpath,"
mksharedlibrpath="-Wl,-rpath,"
@@ -838,6 +838,7 @@ if test $with_sharedlibs = "yes"; then
x86_64-*-darwin*) natdynlink=true;;
s390x*-*-linux*) natdynlink=true;;
powerpc*-*-linux*) natdynlink=true;;
+ powerpc*-*-freebsd*) natdynlink=true;;
sparc*-*-linux*) natdynlink=true;;
i686-*-kfreebsd*) natdynlink=true;;
x86_64-*-kfreebsd*) natdynlink=true;;
x86_64-*-dragonfly*) natdynlink=true;;
@@ -854,6 +855,7 @@ if test $with_sharedlibs = "yes"; then
arm*-*-freebsd*) natdynlink=true;;
earm*-*-netbsd*) natdynlink=true;;
@ -33,7 +24,7 @@
+ powerpc*-*-freebsd*) arch=power;
+ if $arch64; then model=ppc64; else model=ppc; fi
+ system=bsd_elf;;
powerpc-*-netbsd*) arch=power; model=ppc; system=elf;;
powerpc-*-netbsd*) arch=power; model=ppc; system=netbsd;;
powerpc-*-openbsd*) arch=power; model=ppc; system=bsd_elf;;
s390x*-*-linux*) arch=s390x; model=z10; system=elf;;
@@ -930,6 +936,7 @@ case "$target" in
@ -65,21 +56,21 @@
arm,linux*) profiling='true';;
power,elf) profiling='true';;
power,bsd*) profiling='true';;
@@ -1168,7 +1178,7 @@ fi
if test "$with_curses" = "yes"; then
for libs in "" "-lcurses" "-ltermcap" "-lcurses -ltermcap" "-lncurses"; do
- if sh ./hasgot $libs tgetent tgetstr tgetnum tputs; then
+ if sh ./hasgot -i term.h $libs tgetent tgetstr tgetnum tputs; then
inf "termcap functions found (with libraries '$libs')"
echo "#define HAS_TERMCAP" >> s.h
curseslibs="${libs}"
@@ -2029,7 +2037,7 @@ MKLIB=${TOOLPREF}ar rc \$(1) \$(2); ${TOOLPREF}ranlib
#ml Printf.sprintf "${TOOLPREF}ar rc %s %s %s; ${TOOLPREF}ranlib %s"
#ml Printf.sprintf "${TOOLPREF}ar rc %s %s %s && ${TOOLPREF}ranlib %s"
#ml out opts files out;;
EOF
-echo "ARCH=$arch" >> Makefile
+echo "SYSTEM_ARCH=$arch" >> Makefile
echo "MODEL=$model" >> Makefile
echo "SYSTEM=$system" >> Makefile
echo "NATIVECC=$nativecc $nativecccompopts" >> Makefile
-config ARCH "$arch"
+config SYSTEM_ARCH "$arch"
config MODEL "$model"
config SYSTEM "$system"
config OCAMLOPT_CFLAGS "$common_cflags"
@@ -2112,7 +2122,7 @@ config NATDYNLINK "$natdynlink"
config CMXS "$cmxs"
config MKEXE "$mkexe"
config MKEXEDEBUGFLAG "$mkexedebugflag"
-config MKDLL "$mksharedlib"
+config MKDLL "$mksharedlib \$(LDFLAGS)"
config MKMAINDLL "$mkmaindll"
config RUNTIMED "${debugruntime}"
config RUNTIMEI "${with_instrumented_runtime}"

View File

@ -1,5 +1,5 @@
--- testsuite/tests/asmcomp/power.S.orig 2019-12-02 12:36:28 UTC
+++ testsuite/tests/asmcomp/power.S
--- testsuite/tests/asmgen/power.S.orig 2019-12-02 12:36:28 UTC
+++ testsuite/tests/asmgen/power.S
@@ -26,11 +26,11 @@
#define RESERVED_STACK 16
#define LR_SAVE_AREA 4

File diff suppressed because it is too large Load Diff

View File

@ -486,6 +486,7 @@
SUBDIR += ntl
SUBDIR += numdiff
SUBDIR += obake
SUBDIR += ocaml-num
SUBDIR += ocaml-ocamlgraph
SUBDIR += ocaml-zarith
SUBDIR += ocamlgsl

View File

@ -17,6 +17,7 @@ LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
BROKEN_powerpc64= fails to compile: Assembler messages: /tmp/camlasm2822e8.s:10348: Error: operand out of range
BUILD_DEPENDS= ocaml-zarith>1.2:math/ocaml-zarith \
ocaml-num>=0:math/ocaml-num \
ocaml-ocamlgraph>1.8:math/ocaml-ocamlgraph \
ocaml-lablgtk2>=0:x11-toolkits/ocaml-lablgtk2
RUN_DEPENDS= ocaml-ocamlgraph>1.8:math/ocaml-ocamlgraph \

View File

@ -18,7 +18,8 @@ BROKEN_armv7= fails to compile: Fatal error: exception Invalid_argument("index o
BROKEN_powerpc= fails to link
BUILD_DEPENDS= camlp5:devel/ocaml-camlp5 \
ocamlfind:devel/ocaml-findlib
ocamlfind:devel/ocaml-findlib \
${LOCALBASE}/${OCAML_SITELIBDIR}/num/META:math/ocaml-num
LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2

24
math/ocaml-num/Makefile Normal file
View File

@ -0,0 +1,24 @@
# Created by: Alexey Dokuchaev <danfe@FreeBSD.org>
PORTNAME= num
PORTVERSION= 1.4
DISTVERSIONPREFIX= v
CATEGORIES= math
PKGNAMEPREFIX= ocaml-
MAINTAINER= danfe@FreeBSD.org
COMMENT= Legacy library for arbitrary-precision arithmetic
LICENSE= LGPL21
LICENSE_FILE= ${WRKSRC}/LICENSE
USES= gmake
USE_GITHUB= yes
GH_ACCOUNT= ocaml
USE_OCAML= yes
MAKE_ENV= OCAMLFIND_DESTDIR="${STAGEDIR}${OCAMLFIND_DESTDIR}"
MAKE_JOBS_UNSAFE= yes
TEST_TARGET= test
.include <bsd.port.mk>

3
math/ocaml-num/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1604938929
SHA256 (ocaml-num-v1.4_GH0.tar.gz) = 015088b68e717b04c07997920e33c53219711dfaf36d1196d02313f48ea00f24
SIZE (ocaml-num-v1.4_GH0.tar.gz) = 66327

View File

@ -0,0 +1,12 @@
--- src/Makefile.orig 2020-11-09 16:22:09 UTC
+++ src/Makefile
@@ -88,7 +88,8 @@ VERSION=$(shell sed -ne 's/^ *version *: *"\([^"]*\)".
install:
$(INSTALL_DIR) $(DESTDIR)$(STDLIBDIR)
sed -e 's/%%VERSION%%/$(VERSION)/g' META.in > META
- $(OCAMLFIND) install num META
+ $(INSTALL_DIR) $(OCAMLFIND_DESTDIR)/num
+ $(INSTALL_DATA) META $(OCAMLFIND_DESTDIR)/num
rm -f META
$(INSTALL_DATA) $(TOINSTALL) $(DESTDIR)$(STDLIBDIR)
ifeq "$(SUPPORTS_SHARED_LIBRARIES)" "true"

View File

@ -0,0 +1,21 @@
--- toplevel/Makefile.orig 2020-11-09 16:22:09 UTC
+++ toplevel/Makefile
@@ -1,6 +1,8 @@
OCAMLC=ocamlc
OCAMLDEP=ocamldep
OCAMLFIND=ocamlfind
+INSTALL_DATA=install -m 644
+INSTALL_DIR=install -d
CAMLCFLAGS=-I ../src -I +compiler-libs \
-w +a-4-9-41-42-44-45-48 -warn-error A \
@@ -25,7 +27,8 @@ VERSION=$(shell sed -ne 's/^ *version *: *"\([^"]*\)".
install:
sed -e 's/%%VERSION%%/$(VERSION)/g' META.in > META
- $(OCAMLFIND) install num-top META $(TOINSTALL)
+ $(INSTALL_DIR) $(OCAMLFIND_DESTDIR)/num-top
+ $(INSTALL_DATA) META $(TOINSTALL) $(OCAMLFIND_DESTDIR)/num-top
rm -f META
uninstall:

10
math/ocaml-num/pkg-descr Normal file
View File

@ -0,0 +1,10 @@
The Num library implements integer arithmetic and rational arithmetic in
arbitrary precision. It was split off the core OCaml distribution starting
with the 4.06.0 release.
New applications that need arbitrary-precision arithmetic should use the
Zarith library instead of the Num library, and older applications that
already use Num are encouraged to switch to Zarith. Zarith delivers much
better performance than Num and has a nicer API.
WWW: https://github.com/ocaml/num

33
math/ocaml-num/pkg-plist Normal file
View File

@ -0,0 +1,33 @@
lib/ocaml/arith_flags.cmx
lib/ocaml/arith_status.cmi
lib/ocaml/arith_status.cmti
lib/ocaml/arith_status.cmx
lib/ocaml/arith_status.mli
lib/ocaml/big_int.cmi
lib/ocaml/big_int.cmti
lib/ocaml/big_int.cmx
lib/ocaml/big_int.mli
lib/ocaml/int_misc.cmx
lib/ocaml/libnums.a
lib/ocaml/nat.cmi
lib/ocaml/nat.cmti
lib/ocaml/nat.cmx
lib/ocaml/nat.mli
lib/ocaml/num.cmi
lib/ocaml/num.cmti
lib/ocaml/num.cmx
lib/ocaml/num.mli
lib/ocaml/nums.a
lib/ocaml/nums.cma
lib/ocaml/nums.cmxa
lib/ocaml/nums.cmxs
lib/ocaml/ratio.cmi
lib/ocaml/ratio.cmti
lib/ocaml/ratio.cmx
lib/ocaml/ratio.mli
%%OCAML_SITELIBDIR%%/num-top/META
%%OCAML_SITELIBDIR%%/num-top/num_top.cma
%%OCAML_SITELIBDIR%%/num-top/num_top.cmi
%%OCAML_SITELIBDIR%%/num-top/num_top_printers.cmi
%%OCAML_SITELIBDIR%%/num/META
lib/ocaml/stublibs/dllnums.so

View File

@ -11,6 +11,7 @@ COMMENT= Fullscreen RPN calculator for the console
LICENSE= GPLv2
BUILD_DEPENDS= ${LOCALBASE}/${OCAML_SITELIBDIR}/num/META:math/ocaml-num
LIB_DEPENDS= libgsl.so:math/gsl
USES= gmake ncurses

View File

@ -110,7 +110,8 @@ GUI_CONFIGURE_OFF= --without-gui \
OCAML_IMPLIES= GUI
OCAML_CONFIGURE_WITH= modelica
OCAML_BUILD_DEPENDS= ocaml:lang/ocaml
OCAML_BUILD_DEPENDS= ocaml:lang/ocaml \
${LOCALBASE}/lib/ocaml/site-lib/num/META:math/ocaml-num
OCAML_RUN_DEPENDS= ocaml:lang/ocaml
TK_CONFIGURE_OFF= --without-tk

View File

@ -16,6 +16,8 @@ LICENSE_FILE= ${WRKSRC}/Copying.txt
CONFLICTS= mldonkey{-{core,gui},}-devel
BUILD_DEPENDS= ${LOCALBASE}/lib/ocaml/nums.cma:math/ocaml-num
USES= compiler:c++11-lang cpe gmake iconv pkgconfig tar:bzip2
USE_OCAML= yes
USE_OCAML_CAMLP4=yes

View File

@ -10,6 +10,8 @@ COMMENT= Synchronizing Key Server, a fast OpenPGP keyserver
LICENSE= GPLv2+
BUILD_DEPENDS= ${LOCALBASE}/${OCAML_SITELIBDIR}/num/META:math/ocaml-num
USE_OCAML= yes
USE_OCAML_CAMLP4=yes
USES= bdb:5 perl5 gmake shebangfix tar:tgz

View File

@ -1,12 +1,12 @@
# Created by: Michael Grünewald <michipili@gmail.com>
PORTNAME= labltk
PORTVERSION= 8.06.3
PORTVERSION= 8.06.5
CATEGORIES= x11-toolkits
MASTER_SITES= https://download.ocamlcore.org/${PORTNAME}/${PORTNAME}/${PORTVERSION}/
PKGNAMEPREFIX= ocaml-
MAINTAINER= ports@FreeBSD.org
MAINTAINER= danfe@FreeBSD.org
COMMENT= Objective Caml interface to Tk
LICENSE= LGPL20

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1559830627
SHA256 (labltk-8.06.3.tar.gz) = b6b7076f6a2a7b2f63095013cb4e37a1f2a6eb3d4abb57dbb1b8cff1ae4c6ae6
SIZE (labltk-8.06.3.tar.gz) = 369924
TIMESTAMP = 1559830611
SHA256 (labltk-8.06.5.tar.gz) = 92ff3358cd28d6b0c60d17367a875cd895741dbebae20ba310ee4d1e7c31fd71
SIZE (labltk-8.06.5.tar.gz) = 370149