git: 817c93b3c23a - main - lang/ocaml-camlidl: Update to 1.12

From: Zsolt Udvari <uzsolt_at_FreeBSD.org>
Date: Mon, 28 Oct 2024 16:42:39 UTC
The branch main has been updated by uzsolt:

URL: https://cgit.FreeBSD.org/ports/commit/?id=817c93b3c23ac256971553239cda15db151fbce2

commit 817c93b3c23ac256971553239cda15db151fbce2
Author:     Benjamin Jacobs <freebsd@dev.thsi.be>
AuthorDate: 2024-10-28 16:35:20 +0000
Commit:     Zsolt Udvari <uzsolt@FreeBSD.org>
CommitDate: 2024-10-28 16:42:12 +0000

    lang/ocaml-camlidl: Update to 1.12
    
    Use GITHUB as MASTER_SITES.
    Add do-test target.
    Switch do DISTVERSION.
    
    Changelogs: https://github.com/xavierleroy/camlidl/tags
    
    PR:             282068
    Approved by:    maintainer timeout (2 weeks)
---
 lang/ocaml-camlidl/Makefile                        | 58 ++++++++--------------
 lang/ocaml-camlidl/distinfo                        |  8 ++-
 lang/ocaml-camlidl/files/patch-compiler_Makefile   | 11 ++++
 lang/ocaml-camlidl/files/patch-doc_Makefile        |  8 +++
 lang/ocaml-camlidl/files/patch-lib_Makefile        | 15 ++++++
 .../files/patch-runtime_Makefile.unix              | 17 +++++++
 lang/ocaml-camlidl/pkg-plist                       |  9 ++--
 7 files changed, 79 insertions(+), 47 deletions(-)

diff --git a/lang/ocaml-camlidl/Makefile b/lang/ocaml-camlidl/Makefile
index 556d948e998b..9d6defb9178a 100644
--- a/lang/ocaml-camlidl/Makefile
+++ b/lang/ocaml-camlidl/Makefile
@@ -1,12 +1,7 @@
 PORTNAME=	camlidl
-PORTVERSION=	1.05
-PORTREVISION=	3
+DISTVERSION=	1.12
 CATEGORIES=	lang
-MASTER_SITES=	http://caml.inria.fr/distrib/bazar-ocaml/
 PKGNAMEPREFIX=	ocaml-
-DISTFILES=	${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX} \
-		${PORTNAME}-${PORTVERSION}.doc.html.tar.gz
-EXTRACT_ONLY=	${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX}
 
 MAINTAINER=	kennedy.greg@gmail.com
 COMMENT=	Stub code generator for using C/C++ libraries from OCaml
@@ -16,50 +11,37 @@ LICENSE=	LGPL20 LGPL21
 LICENSE_COMB=	dual
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
+USES=		gmake
 USE_OCAML=	yes
+USE_GITHUB=	yes
+GH_ACCOUNT=	xavierleroy
+GH_TAGNAME=	${PORTNAME}${DISTVERSION:S/.//}
 
 MAKE_JOBS_UNSAFE=	yes
 
-DOCSDIR=	${PREFIX}/share/doc/ocaml/${PORTNAME}
+DOCSDIR=	${OCAML_DOCSDIR}/${PORTNAME}
 
-OPTIONS_DEFINE=	DOCS
-
-.include <bsd.port.pre.mk>
-
-.if ${OPSYS} == FreeBSD
-CFLAGS+=	-Wno-error=int-conversion
-.endif
-
-post-extract:
-	@${REINPLACE_CMD} -e "s,^\(OCAMLLIB=\).*,\1${STAGEDIR}${PREFIX}/lib/ocaml,g" \
-		-e "s,^\(BINDIR=\).*,\1${STAGEDIR}${PREFIX}/bin,g" \
-		-e "s,^CFLAGS=.*,#\&,g" \
-		-e "s,^\(CPP=\).*,\1/usr/bin/cpp,g" \
-		${WRKSRC}/config/Makefile.unix
-
-	@${REINPLACE_CMD} -e \
-		"/^install/,/^$$/s,\([ \t]*\)cp,\1${INSTALL_SCRIPT},g" \
-		-e 's,$$(OCAMLC),& -warn-error -a,' \
-		${WRKSRC}/compiler/Makefile
-
-	@${REINPLACE_CMD} -e \
-		"/^install/,/^$$/s,\([ \t]*\)cp,\1${INSTALL_DATA},g" \
-		${WRKSRC}/lib/Makefile ${WRKSRC}/runtime/Makefile.unix
+OPTIONS_DEFINE=		DOCS
+DOCS_BUILD_DEPENDS=	hevea>=0:textproc/hevea
 
+post-patch:
 	@${LN} -sf ${WRKSRC}/config/Makefile.unix ${WRKSRC}/config/Makefile
 
+do-build-DOCS-on:
+	cd ${WRKSRC}/doc && ${SETENVI} ${MAKE_ENV} ${MAKE_CMD} \
+		tools/transf tools/texquote2 ../docs/index.html
+	${RM} ${WRKSRC}/docs/main.haux ${WRKSRC}/docs/main.htoc
+
 pre-install:
-	@${MKDIR} ${STAGEDIR}${PREFIX}/lib/ocaml/caml
+	@${MKDIR} ${STAGEDIR}${PREFIX}/${OCAML_LIBDIR}/caml \
+		${STAGEDIR}${PREFIX}/${OCAML_LIBDIR}/stublibs
 
 post-install-DOCS-on:
 	@${MKDIR} ${STAGEDIR}${DOCSDIR}
-	${GZCAT} ${_DISTDIR}/${PORTNAME}-${PORTVERSION}.doc.html.tar.gz \
-		| ${TAR} -C ${STAGEDIR}${DOCSDIR} -xf -
+	cd ${WRKSRC}/docs && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}/htmlman
 
-test:
+do-test:
 	@${ECHO_CMD} "Testing IDL library"
-	@${REINPLACE_CMD} -e "s,^\(CCPP=\).*,\1${CXX},g" \
-		${WRKSRC}/tests/Makefile
-	cd ${WRKSRC}/tests && ${SETENV} ${MAKE_ENV} ${MAKE} all
+	cd ${WRKSRC}/tests && ${SETENVI} ${MAKE_ENV} ${MAKE_CMD} all
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/lang/ocaml-camlidl/distinfo b/lang/ocaml-camlidl/distinfo
index 10cc698f9e73..f2a916447118 100644
--- a/lang/ocaml-camlidl/distinfo
+++ b/lang/ocaml-camlidl/distinfo
@@ -1,5 +1,3 @@
-TIMESTAMP = 1089725420
-SHA256 (camlidl-1.05.tar.gz) = 857ed5bd3b2f99c62813070e1a5b4b6375e837c6815f4ad956baeb6f8c660311
-SIZE (camlidl-1.05.tar.gz) = 100640
-SHA256 (camlidl-1.05.doc.html.tar.gz) = 00ac7822ec73cb3cb5cb23b5d34879436366d979887eb3a312e1adcae8c1c32c
-SIZE (camlidl-1.05.doc.html.tar.gz) = 45945
+TIMESTAMP = 1728850004
+SHA256 (xavierleroy-camlidl-1.12-camlidl112_GH0.tar.gz) = d6ab22a363f22798d303df3b0e54ba274f2c3d7ab7a3023fee1c73d8a21970aa
+SIZE (xavierleroy-camlidl-1.12-camlidl112_GH0.tar.gz) = 182507
diff --git a/lang/ocaml-camlidl/files/patch-compiler_Makefile b/lang/ocaml-camlidl/files/patch-compiler_Makefile
new file mode 100644
index 000000000000..b2383ae6825e
--- /dev/null
+++ b/lang/ocaml-camlidl/files/patch-compiler_Makefile
@@ -0,0 +1,11 @@
+--- compiler/Makefile.orig	2024-10-13 20:49:37 UTC
++++ compiler/Makefile
+@@ -82,7 +82,7 @@ install:
+ 
+ # Install
+ install:
+-	cp $(PROG) $(BINDIR)
++	$(BSD_INSTALL_SCRIPT) $(PROG) $(DESTDIR)$(BINDIR)
+ 
+ # Clean up
+ clean::
diff --git a/lang/ocaml-camlidl/files/patch-doc_Makefile b/lang/ocaml-camlidl/files/patch-doc_Makefile
new file mode 100644
index 000000000000..c76d62e562da
--- /dev/null
+++ b/lang/ocaml-camlidl/files/patch-doc_Makefile
@@ -0,0 +1,8 @@
+--- doc/Makefile.orig	2024-10-13 21:03:28 UTC
++++ doc/Makefile
+@@ -16,4 +16,4 @@ $(TRANSF) $(TEXQUOTE):
+ 	$(TRANSF) < manual.etex | $(TEXQUOTE) > manual.tex
+ 
+ $(TRANSF) $(TEXQUOTE):
+-	make -C tools
++	$(MAKE) -C tools
diff --git a/lang/ocaml-camlidl/files/patch-lib_Makefile b/lang/ocaml-camlidl/files/patch-lib_Makefile
new file mode 100644
index 000000000000..1d69fb73c79a
--- /dev/null
+++ b/lang/ocaml-camlidl/files/patch-lib_Makefile
@@ -0,0 +1,15 @@
+--- lib/Makefile.orig	2024-10-13 20:49:49 UTC
++++ lib/Makefile
+@@ -40,10 +40,10 @@ installbyt:
+ 	$(OCAMLOPT) -a -o $(NATIVELIB) -cclib -lcamlidl $(NATIVEOBJS)
+ 
+ installbyt:
+-	cp -p $(INTERFACES) $(BYTELIB) $(OCAMLLIB)
++	$(BSD_INSTALL_DATA) -p $(INTERFACES) $(BYTELIB) $(DESTDIR)$(OCAMLLIB)
+ 
+ installopt:
+-	cp -p $(NATIVELIB) $(NATIVELIB:.cmxa=.$(LIBEXT)) $(OCAMLLIB)
++	$(BSD_INSTALL_DATA) $(NATIVELIB) $(NATIVELIB:.cmxa=.$(LIBEXT)) $(DESTDIR)$(OCAMLLIB)
+ 
+ .SUFFIXES: .mli .ml .cmi .cmo .cmx
+ 
diff --git a/lang/ocaml-camlidl/files/patch-runtime_Makefile.unix b/lang/ocaml-camlidl/files/patch-runtime_Makefile.unix
new file mode 100644
index 000000000000..429ddaaf5874
--- /dev/null
+++ b/lang/ocaml-camlidl/files/patch-runtime_Makefile.unix
@@ -0,0 +1,17 @@
+--- runtime/Makefile.unix.orig	2024-10-13 21:00:18 UTC
++++ runtime/Makefile.unix
+@@ -26,10 +26,10 @@ install:
+ #	$(RANLIB) $@
+ 
+ install:
+-	cp camlidlruntime.h $(OCAMLLIB)/caml/camlidlruntime.h
+-	cp libcamlidl.a $(OCAMLLIB)/libcamlidl.a
+-	cp dllcamlidl.so $(OCAMLLIB)/stublibs/dllcamlidl.so
+-	cd $(OCAMLLIB); $(RANLIB) libcamlidl.a
++	$(BSD_INSTALL_DATA) camlidlruntime.h $(DESTDIR)$(OCAMLLIB)/caml/camlidlruntime.h
++	$(BSD_INSTALL_DATA) libcamlidl.a $(DESTDIR)$(OCAMLLIB)/libcamlidl.a
++	$(BSD_INSTALL_LIB) dllcamlidl.so $(DESTDIR)$(OCAMLLIB)/stublibs/dllcamlidl.so
++	cd $(DESTDIR)$(OCAMLLIB); $(RANLIB) libcamlidl.a
+ 
+ clean:
+ 	rm -f *.a *.o *.so
diff --git a/lang/ocaml-camlidl/pkg-plist b/lang/ocaml-camlidl/pkg-plist
index 0fa54d28b20c..50e27765d7b7 100644
--- a/lang/ocaml-camlidl/pkg-plist
+++ b/lang/ocaml-camlidl/pkg-plist
@@ -5,8 +5,10 @@ lib/ocaml/com.cma
 lib/ocaml/com.cmi
 lib/ocaml/com.cmxa
 lib/ocaml/libcamlidl.a
-%%PORTDOCS%%%%DOCSDIR%%/htmlman/contents_motif.gif
+lib/ocaml/stublibs/dllcamlidl.so
+%%PORTDOCS%%%%DOCSDIR%%/htmlman/contents_motif.svg
 %%PORTDOCS%%%%DOCSDIR%%/htmlman/index.html
+%%PORTDOCS%%%%DOCSDIR%%/htmlman/main.css
 %%PORTDOCS%%%%DOCSDIR%%/htmlman/main.html
 %%PORTDOCS%%%%DOCSDIR%%/htmlman/main001.html
 %%PORTDOCS%%%%DOCSDIR%%/htmlman/main002.html
@@ -14,6 +16,5 @@ lib/ocaml/libcamlidl.a
 %%PORTDOCS%%%%DOCSDIR%%/htmlman/main004.html
 %%PORTDOCS%%%%DOCSDIR%%/htmlman/main005.html
 %%PORTDOCS%%%%DOCSDIR%%/htmlman/main006.html
-%%PORTDOCS%%%%DOCSDIR%%/htmlman/main007.html
-%%PORTDOCS%%%%DOCSDIR%%/htmlman/next_motif.gif
-%%PORTDOCS%%%%DOCSDIR%%/htmlman/previous_motif.gif
+%%PORTDOCS%%%%DOCSDIR%%/htmlman/next_motif.svg
+%%PORTDOCS%%%%DOCSDIR%%/htmlman/previous_motif.svg