I found that packaging lang/compcert fails on ocaml-non-native architectures. we need a patch to Makefile.menhir. (and I'm not sure if we need revision up here...)
-- yozo.
diff -urN -x CVS /usr/ports/lang/compcert/Makefile /usr/ports/mystuff/lang/compcert/3.13.1p1/Makefile --- /usr/ports/lang/compcert/Makefile Sat Jan 6 10:38:27 2024 +++ /usr/ports/mystuff/lang/compcert/3.13.1p1/Makefile Thu Feb 1 01:36:12 2024 @@ -8,7 +8,7 @@ GH_TAGNAME = v${V} DISTNAME = ${GH_PROJECT}-${V} PKGNAME = ${DISTNAME:L} -REVISION = 0 +REVISION = 1 HOMEPAGE = https://compcert.org/ diff -urN -x CVS /usr/ports/lang/compcert/patches/patch-Makefile_menhir /usr/ports/mystuff/lang/compcert/3.13.1p1/patches/patch-Makefile_menhir --- /usr/ports/lang/compcert/patches/patch-Makefile_menhir Thu Jan 1 09:00:00 1970 +++ /usr/ports/mystuff/lang/compcert/3.13.1p1/patches/patch-Makefile_menhir Mon Aug 21 18:18:14 2023 @@ -0,0 +1,27 @@ +for ocaml-non-native architectures + +Index: Makefile.menhir +--- Makefile.menhir.orig ++++ Makefile.menhir +@@ -42,10 +42,18 @@ MENHIR_FLAGS = -v --no-stdlib -la 1 + # Using Menhir in --table mode requires MenhirLib. + + ifeq ($(MENHIR_TABLE),true) +- ifeq ($(wildcard $(MENHIR_DIR)/menhirLib.cmxa),) +- MENHIR_LIBS = menhirLib.cmx ++ ifeq ($(OCAML_NATIVE_COMP), true) ++ ifeq ($(wildcard $(MENHIR_DIR)/menhirLib.cmxa),) ++ MENHIR_LIBS = menhirLib.cmx ++ else ++ MENHIR_LIBS = menhirLib.cmxa ++ endif + else +- MENHIR_LIBS = menhirLib.cmxa ++ ifeq ($(wildcard $(MENHIR_DIR)/menhirLib.cma),) ++ MENHIR_LIBS = menhirLib.cmo ++ else ++ MENHIR_LIBS = menhirLib.cma ++ endif + endif + else + MENHIR_LIBS =