On 2026/10/28 02:41, Kirill A. Korinsky wrote:
> I'd like to drop ports-gcc from build dependency of libxml.

> Why? To use it as dependency of gcc which is required for cobol.
> 
> To do it, I need to switch libxml to autotools instead of meson.

Something is strange here because libxml was still using autoconf when
it was switched to ports-gcc to fix build. (Perhaps libxml required a
newer C standard at one point and then switched back, this does seem
unlikely though. Also I would think that if libxml does currently build
with base-gcc, we can't really expect it to keep doing so, and we don't
have bulk build machines using base-gcc any more to alert us to this
happening).

> Here a diff which was tested on my hppa VM.
> 
> It builds, and it doesn't need gcc.
> 
> Not sure about lib bump, I increased it to be on safe side.
> 
> Ok?

I'd really like to avoid adding more dependencies to the build of gcc
as used by the majority of the ports tree (i.e. for those ports using it
for C, C++, Fortran).

If supporting other languages in GCC adds new dependencies can those
langs be knocked out via a bootstrap flavour for the usual ports builds?
(this also helps avoid bottlenecks if they add much additional build time).


> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/textproc/libxml/Makefile,v
> diff -u -p -r1.248 Makefile
> --- Makefile  5 Sep 2026 09:20:10 -0000       1.248
> +++ Makefile  28 Oct 2026 01:38:07 -0000
> @@ -1,10 +1,11 @@
>  COMMENT=             XML parsing library
>  
>  GNOME_VERSION=               2.15.4
> +REVISION=            0
>  GNOME_PROJECT=               libxml2
>  PKGNAME=             libxml-${GNOME_VERSION}
>  
> -SHARED_LIBS += xml2                      22.1 # 16.1.4
> +SHARED_LIBS += xml2                      23.0 # 16.1.4
>  
>  CATEGORIES=          textproc
>  
> @@ -13,28 +14,27 @@ MAINTAINER=               Antoine Jacoutot <ajacoutot
>  # BSD-like
>  PERMIT_PACKAGE=              Yes
>  
> -COMPILER=            base-clang ports-gcc
> -COMPILER_LANGS=              c
> -
> -MODULES=             devel/meson \
> -                     x11/gnome
> +MODULES=             x11/gnome
>  
>  LIB_DEPENDS=         converters/libiconv
>  
>  WANTLIB += c iconv m z
>  
> -CONFIGURE_ARGS=              -Dlegacy=enabled
> +# Use autoconf to avoid ports-gcc
> +CONFIGURE_STYLE=     gnu
> +
> +CONFIGURE_ARGS=              --with-legacy
>  
>  # XXX circular dependency: xsltproc (textproc/libxslt) -> textproc/libxml
> -CONFIGURE_ARGS +=    -Ddocs=disabled
> +CONFIGURE_ARGS +=    --without-docs
>  
>  # Python bindings are planned to be removed in the 2.16 release;
>  # circular dependency: libxml -> doxygen -> git -> xmlto -> libxml
> -CONFIGURE_ARGS +=    -Dpython=disabled
> +CONFIGURE_ARGS +=    --without-python
>  
>  # XXX needs libhistory
> -CONFIGURE_ARGS +=    -Dhistory=disabled
> -CONFIGURE_ARGS +=    -Dreadline=disabled
> +CONFIGURE_ARGS +=    --without-history
> +CONFIGURE_ARGS +=    --without-readline
>  
>  DEBUG_PACKAGES=              ${BUILD_PACKAGES}
>  
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/textproc/libxml/pkg/PLIST,v
> diff -u -p -r1.45 PLIST
> --- pkg/PLIST 17 Apr 2026 07:00:08 -0000      1.45
> +++ pkg/PLIST 28 Oct 2026 01:38:07 -0000
> @@ -56,6 +56,8 @@ include/libxml2/libxml/xpointer.h
>  lib/cmake/
>  lib/cmake/libxml2/
>  lib/cmake/libxml2/libxml2-config.cmake
> +@static-lib lib/libxml2.a
> +lib/libxml2.la
>  @lib lib/libxml2.so.${LIBxml2_VERSION}
>  lib/pkgconfig/libxml-2.0.pc
>  share/libxml2/
> 
> 
> -- 
> wbr, Kirill
> 

Reply via email to