Compare commits

..

No commits in common. "rawhide" and "f28" have entirely different histories.
rawhide ... f28

5 changed files with 84 additions and 130 deletions

14
.gitignore vendored
View File

@ -1 +1,13 @@
/ocamlnet-*.tar.gz
ocamlnet-2.2.9.tar.gz
/ocamlnet-3.4.tar.gz
/ocamlnet-3.4.1.tar.gz
/ocamlnet-3.5.1.tar.gz
/ocamlnet-3.7.3.tar.gz
/ocamlnet-3.7.4.tar.gz
/ocamlnet-4.0.1.tar.gz
/ocamlnet-4.0.3.tar.gz
/ocamlnet-4.0.4.tar.gz
/ocamlnet-4.1.2.tar.gz
/ocamlnet-4.1.3.tar.gz
/ocamlnet-4.1.4.tar.gz
/ocamlnet-4.1.5.tar.gz

View File

@ -1,45 +0,0 @@
From 828a873df2b838e46faa5700dbae18601cb8dcb9 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Thu, 14 Jan 2021 12:20:03 +0000
Subject: [PATCH] Build ocamlrpcgen as native code.
---
code/src/rpc-generator/Makefile | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/code/src/rpc-generator/Makefile b/code/src/rpc-generator/Makefile
index e0ed4f5..a475e83 100644
--- a/code/src/rpc-generator/Makefile
+++ b/code/src/rpc-generator/Makefile
@@ -6,9 +6,11 @@ PKGNAME = rpc-generator
ARCHIVE = rpc_generator
OBJECTS = config.cmo syntax.cmo options.cmo parser.cmo lexer.cmo rename.cmo \
generate.cmo direct.cmo
+XOBJECTS = config.cmx syntax.cmx options.cmx parser.cmx lexer.cmx rename.cmx \
+ generate.cmx direct.cmx
DOBJECTS =
-ALL_EXTRA = ocamlrpcgen$(EXEC_SUFFIX) rpcgen-packlist
+OPT_EXTRA = ocamlrpcgen$(EXEC_SUFFIX) rpcgen-packlist
PACKLIST = rpcgen-packlist
@@ -21,12 +23,12 @@ PP_OPTIONS = -pp "$(CPPO) $(PP_BYTES) $(PP_DEPRECATED)"
include $(TOP_DIR)/Makefile.rules
-ocamlrpcgen$(EXEC_SUFFIX): $(ARCHIVE).cma main.cmo
+ocamlrpcgen$(EXEC_SUFFIX): $(ARCHIVE).cmxa main.cmx
rm -f ocamlrpcgen ocamlrpcgen$(EXEC_SUFFIX)
OCAMLPATH="..$(PATH_SEP)$$OCAMLPATH" \
- $(OCAMLC) -custom -o ocamlrpcgen \
+ $(OCAMLOPT) -o ocamlrpcgen \
-package unix,netstring,$(REGEXP_PROVIDER) \
- $(ARCHIVE).cma main.cmo -linkpkg
+ $(ARCHIVE).cmxa main.cmx -linkpkg
rpcgen-packlist:
echo $(BINDIR)/ocamlrpcgen >rpcgen-packlist
--
2.28.0.rc2

View File

@ -1,18 +1,28 @@
# Prevent RPM from stripping the binaries & debuginfo.
#
# NB: Only required because this package uses the obsolete -custom
# parameter and builds a bytecode 'ocamlrpcgen'. I tried to fix the
# build to make a native code 'ocamlrpcgen' but the build system got
# the better of me.
%global debug_package %{nil}
%global __strip /bin/true
Name: ocaml-ocamlnet
Version: 4.1.8
Release: 4%{?dist}
Version: 4.1.5
Release: 2%{?dist}
Summary: Network protocols for OCaml
License: BSD
URL: http://projects.camlcity.org/projects/ocamlnet.html
Source0: http://download.camlcity.org/download/ocamlnet-%{version}.tar.gz
# Build ocamlrpcgen as native code. Sent upstream 2021-01-14.
Patch1: 0001-Build-ocamlrpcgen-as-native-code.patch
# Non-upstream patch to fix string immutability problems with OCaml 4.06.
# Sent upstream Nov 08, no response yet.
Patch1: ocamlnet-4.1.4-bytes-fixes.patch
BuildRequires: make
BuildRequires: ocaml >= 3.12.1-3
BuildRequires: ocaml-ocamldoc
BuildRequires: ocaml-camlp4-devel
BuildRequires: ocaml-findlib-devel
BuildRequires: ocaml-lablgtk-devel
BuildRequires: ocaml-labltk-devel
@ -102,7 +112,7 @@ files for developing applications that use %{name}-nethttpd.
%prep
%setup -q -n ocamlnet-%{version}
%patch1 -p2
%autopatch -p1
%build
@ -121,13 +131,6 @@ unset MAKEFLAGS
-enable-tcl \
-enable-zip
# This is a hack caused by the ocamlrpcgen patch. Because "make all"
# no longer builds ocamlrpcgen (it is now built by "make opt") but
# some other parts of the build depend on this program, we have to run
# make opt first and ignore the result. Hopefully we'll get a better
# result when upstream integrate the patch. RWMJ 2021-01.
make opt ||:
make all
%ifarch %{ocaml_native_compiler}
@ -220,76 +223,6 @@ echo -e '-b /usr/bin/netplex-admin\n-b /usr/bin/ocamlrpcgen' \
%changelog
* Mon Mar 1 11:02:44 GMT 2021 Richard W.M. Jones <rjones@redhat.com> - 4.1.8-4
- OCaml 4.12.0 build
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Jan 14 2021 Richard W.M. Jones <rjones@redhat.com> - 4.1.8-2
- Build ocamlrpcgen as native code.
- Enable stripping.
- Enable LTO (RHBZ#1915570).
* Wed Jan 13 2021 Richard W.M. Jones <rjones@redhat.com> - 4.1.8-1
- New upstream version 4.1.8.
- Disable LTO (RHBZ#1915570).
* Tue Sep 01 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-18
- OCaml 4.11.1 rebuild
* Fri Aug 21 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-17
- OCaml 4.11.0 rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.6-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon May 04 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-15
- OCaml 4.11.0+dev2-2020-04-22 rebuild
* Tue Apr 21 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-14
- OCaml 4.11.0 pre-release attempt 2
* Fri Apr 17 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-13
- OCaml 4.11.0 pre-release
* Thu Apr 02 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-12
- Update all OCaml dependencies for RPM 4.16.
* Wed Feb 26 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-11
- OCaml 4.10.0 final.
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.6-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sun Jan 19 2020 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-9
- OCaml 4.10.0+beta1 rebuild.
* Fri Nov 08 2019 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-8
- Bump and rebuild (RHBZ#1770380).
* Sat Jul 27 2019 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-7
- Remove camlp4 dependency.
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.6-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Jul 11 2018 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-3
- OCaml 4.07.0 (final) rebuild.
* Tue Jun 19 2018 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-2
- OCaml 4.07.0-rc1 rebuild.
* Tue May 15 2018 Richard W.M. Jones <rjones@redhat.com> - 4.1.6-1
- New upstream version 4.1.6.
- Remove upstream patch.
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

View File

@ -0,0 +1,54 @@
--- ocamlnet-4.1.4.old/src/netzip/netgzip.ml 2017-08-14 14:16:50.000000000 +0100
+++ ocamlnet-4.1.4/src/netzip/netgzip.ml 2017-11-08 16:24:22.162165338 +0000
@@ -7,7 +7,6 @@
val mutable closed = false
method input s p l =
- let s = Bytes.unsafe_to_string s in
let n = Gzip.input gzip_ch s p l in
if n = 0 then raise End_of_file;
n
@@ -27,7 +26,6 @@
class output_gzip_rec gzip_ch : Netchannels.rec_out_channel =
object(self)
method output s p l =
- let s = Bytes.unsafe_to_string s in
Gzip.output gzip_ch s p l;
l
method close_out() =
@@ -156,8 +154,6 @@
(fun out_buf out_pos out_len ->
let (finished, used_in, used_out) =
try
- let in_buf = Bytes.unsafe_to_string in_buf in
- let out_buf = Bytes.unsafe_to_string out_buf in
Zlib.inflate
stream
in_buf in_pos in_len out_buf out_pos out_len
@@ -170,8 +166,7 @@
st.in_size <-
Int32.add st.in_size (Int32.of_int used_out);
st.in_crc <-
- ( let out_buf = Bytes.unsafe_to_string out_buf in
- Zlib.update_crc st.in_crc out_buf out_pos used_out
+ ( Zlib.update_crc st.in_crc out_buf out_pos used_out
);
k := !k + used_in;
@@ -292,8 +287,6 @@
(fun out_buf out_pos out_len ->
let (finished, used_in, used_out) =
try
- let in_buf = Bytes.unsafe_to_string in_buf in
- let out_buf = Bytes.unsafe_to_string out_buf in
Zlib.deflate
stream in_buf 0 in_len out_buf out_pos out_len
(if at_eof then Zlib.Z_FINISH else Zlib.Z_NO_FLUSH)
@@ -305,7 +298,6 @@
st.out_size <- Int32.add st.out_size (Int32.of_int used_in);
st.out_crc <- (
- let in_buf = Bytes.unsafe_to_string in_buf in
Zlib.update_crc st.out_crc in_buf 0 used_in
);

View File

@ -1 +1 @@
SHA512 (ocamlnet-4.1.8.tar.gz) = e238235968b9546c60568a38e68e354378d30e7137973332dcb10da21fa775ab7b367889fc51f5bd7cb00e51582834cafe2a0c4706b0bc77a44d4571a6f22815
SHA512 (ocamlnet-4.1.5.tar.gz) = f22c24b3413ccf16fc2538d4390871e60c7c1abc6bd0f599057909d786e7ad852d47c3ba0315b0095c01b345ea58d6d7d9cfefc2f9f9c31fe7b8d5e5c874328c