On Mon, Jun 17, 2019 at 09:20:09PM +0200, Christopher Zimmermann wrote:
> Hi,
>
> Mldonkey in difficult to adapt to the new 4.08.0 release of OCaml.
> Its build system has the option to build against a private build of
> OCaml 3.12 and a copy of lablgtk.
> I adapted the port to use this option and therefore get rid of the
> dependency on a system wide OCaml installation.
> Tested to build and start up on amd64.
> Not tested on bytecode-only archs.
>
> Is this the way to go? OK to commit?
> Is this port still in use?
>
> Christopher
I have never used mldonkey, but I have no objection to this approach.
.... Ken
>
>
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/net/mldonkey/Makefile,v
> retrieving revision 1.30
> diff -u -p -r1.30 Makefile
> --- Makefile 20 May 2019 22:15:19 -0000 1.30
> +++ Makefile 17 Jun 2019 19:07:35 -0000
> @@ -21,13 +21,21 @@ WANTLIB += pthread rsvg-2 ${COMPILER_LIB
>
> COMPILER = base-clang ports-gcc base-gcc
>
> -MASTER_SITES =
> https://github.com/ygrek/mldonkey/releases/download/release-${VER:S/./-/g}/
> +MASTER_SITES0 =
> https://github.com/ygrek/mldonkey/releases/download/release-${VER:S/./-/g}/
> +MASTER_SITES1 = http://caml.inria.fr/pub/distrib/ocaml-3.12/
> +MASTER_SITES2 =
> http://www.math.nagoya-u.ac.jp/~garrigue/soft/olabl/dist/
>
> +OCAML_SRC = ocaml-3.12.0.tar.gz
> +LAMLGTK_SRC = lablgtk-2.14.2.tar.gz
> EXTRACT_SUFX = .tar.bz2
> +DISTFILES = ${DISTNAME}${EXTRACT_SUFX}:0 ${OCAML_SRC}:1 ${LAMLGTK_SRC}:2
> +
>
> CONFIGURE_STYLE = gnu
> CONFIGURE_ARGS += --enable-gui=newgui2 \
> - --enable-upnp-natpmp
> + --enable-upnp-natpmp \
> + --enable-force-ocaml \
> + --enable-batch
> CONFIGURE_ENV += CPPFLAGS='-I${LOCALBASE}/include -I${X11BASE}/include' \
> LDFLAGS='${LDFLAGS}' \
> ac_cv_prog_RPMBUILD="" \
> @@ -44,8 +52,8 @@ MODGNU_CONFIG_GUESS_DIRS = ${WRKSRC}/con
> WRKCONF = ${WRKSRC}/config
>
> USE_GMAKE = Yes
> -MODULES = lang/ocaml
> -BUILD_DEPENDS = lang/ocaml-camlp4 x11/lablgtk2 math/ocaml-num
> +#MODULES = lang/ocaml
> +#BUILD_DEPENDS = lang/ocaml-camlp4 x11/lablgtk2 math/ocaml-num
> LIB_DEPENDS = archivers/bzip2 \
> devel/gettext,-runtime \
> devel/libmagic \
> @@ -53,6 +61,7 @@ LIB_DEPENDS = archivers/bzip2 \
> net/miniupnp/libnatpmp \
> net/miniupnp/miniupnpc>=1.9 \
> x11/gnome/librsvg \
> + devel/libglade2 \
> x11/gtk+2
>
> ALL_TARGET = depend all
> @@ -67,6 +76,11 @@ FAKE_FLAGS = OCAML_NATIVE=no
> NO_TEST = Yes
>
> .include <bsd.port.arch.mk>
> +
> +post-extract:
> + ln -s ${FULLDISTDIR}/${OCAML_SRC} ${WRKSRC}/patches
> + ln -s ${FULLDISTDIR}/${LAMLGTK_SRC} ${WRKSRC}/patches
> +
> pre-patch:
> @cd ${WRKSRC}; perl -i -pe 's/\r$$//' `find . -type f`
>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/net/mldonkey/distinfo,v
> retrieving revision 1.6
> diff -u -p -r1.6 distinfo
> --- distinfo 17 Aug 2017 10:06:12 -0000 1.6
> +++ distinfo 17 Jun 2019 19:07:35 -0000
> @@ -1,2 +1,6 @@
> +SHA256 (lablgtk-2.14.2.tar.gz) = SYGr7avcRiMD80UQQELIivInzNUP0wqb9I/TU6sC0Lo=
> SHA256 (mldonkey-3.1.6.tar.bz2) =
> Gza1fAWoPC42PAhb+OgGMIhMbJLs3v/BrV4cOamOBD0=
> +SHA256 (ocaml-3.12.0.tar.gz) = 2WSzheEQwVF8neHGMxR21eejWFzGkra2uJc/Opvn2ks=
> +SIZE (lablgtk-2.14.2.tar.gz) = 779803
> SIZE (mldonkey-3.1.6.tar.bz2) = 2886916
> +SIZE (ocaml-3.12.0.tar.gz) = 3271024
> Index: patches/patch-config_Makefile_in
> ===================================================================
> RCS file: /cvs/ports/net/mldonkey/patches/patch-config_Makefile_in,v
> retrieving revision 1.6
> diff -u -p -r1.6 patch-config_Makefile_in
> --- patches/patch-config_Makefile_in 4 Mar 2019 12:51:16 -0000 1.6
> +++ patches/patch-config_Makefile_in 17 Jun 2019 19:07:35 -0000
> @@ -2,34 +2,6 @@ $OpenBSD: patch-config_Makefile_in,v 1.6
> Index: config/Makefile.in
> --- config/Makefile.in.orig
> +++ config/Makefile.in
> -@@ -13,6 +13,9 @@ changequote([[, ]])
> -
> - include config/Makefile.config
> -
> -+OCAMLC:=$(OCAMLC) -unsafe-string
> -+OCAMLOPT:=$(OCAMLOPT) -unsafe-string
> -+
> - ifneq ("$(GLIBC_VERSION)" , "")
> - GLIBC_VERSION_ARCH = "_glibc-"$(GLIBC_VERSION)
> - endif
> -@@ -93,7 +96,7 @@ SRC_FILETP=src/networks/fileTP
> - SUBDIRS=$(EXTLIB) $(CDK) $(BITSTRING) $(LIB) $(RSS) $(XML) $(NET) tools \
> - $(COMMON) $(DRIVER) $(MP3) src/config/$(OS_FILES)
> -
> --INCLUDES += $(foreach file, $(SUBDIRS), -I $(file)) -I +camlp4
> -+INCLUDES += $(foreach file, $(SUBDIRS), -I $(file)) -I +camlp4 -I +num
> -
> - CFLAGS:=$(CFLAGS) $(CONFIG_INCLUDES) $(GTKCFLAGS) $(GD_CFLAGS)
> -
> -@@ -124,7 +127,7 @@ endif
> -
> - #######################################################################
> -
> --LIBS_flags += -ccopt "$(LDFLAGS) $(CPPFLAGS)" -cclib "$(LIBS)"
> -+LIBS_flags += -ccopt "$(LDFLAGS) $(CPPFLAGS)" -cclib "$(LIBS)" -I +num
> -
> - ifeq ("$(OS_FILES2)", "mingw")
> - LIBS_flags += -cclib "-lws2_32 -lgdi32 -luser32 -ladvapi32 -lwsock32
> -limm32 -lshell32 -lole32 resfile.o"
> @@ -633,6 +636,8 @@ uninstall::
> rm -f $(BINDIR)/mlnet
> rm -f $(BINDIR)/mlgui
>
>
> --
> http://gmerlin.de
> OpenPGP: http://gmerlin.de/christopher.pub
> CB07 DA40 B0B6 571D 35E2 0DEF 87E2 92A7 13E5 DEE1