On Fri, Oct 26, 2018 at 03:59:55PM +0100, Stuart Henderson wrote: > On 2018/10/24 09:21, Stuart Henderson wrote: > > CVSROOT: /cvs > > Module name: ports > > Changes by: [email protected] 2018/10/24 09:21:56 > > > > Modified files: > > devel/gmp : Makefile > > devel/gmp/pkg : PLIST > > > > Log message: > > disable gmpxx (c++ library), it isn't used in ports or enabled by default > > upstream > > ok naddy@ > > > > Annoyingly it turns out that productivity/libalkimia uses the gmpxx.h > header but not the library from gmp's C++ support. > > This gives a choice between a dirty option (install gmpxx.h anyway) > and the messy option below. I think I've got the bootstrap parts right > but a pair of eyes that understands it better than me wouldn't go > amiss :) > > (bumps in dependent ports not shown here but also needed). > > Index: devel/gmp/Makefile > =================================================================== > RCS file: /cvs/ports/devel/gmp/Makefile,v > retrieving revision 1.37 > diff -u -p -r1.37 Makefile > --- devel/gmp/Makefile 24 Oct 2018 15:21:56 -0000 1.37 > +++ devel/gmp/Makefile 26 Oct 2018 14:57:53 -0000 > @@ -1,10 +1,16 @@ > # $OpenBSD: Makefile,v 1.37 2018/10/24 15:21:56 sthen Exp $ > > -COMMENT= library for arbitrary precision arithmetic > +COMMENT-main= library for arbitrary precision arithmetic > +COMMENT-gmpxx= C++ library for arbitrary precision arithmetic > > DISTNAME= gmp-6.1.2 > -REVISION = 2 > +MULTI_PACKAGES= -main -gmpxx > +PKGNAME-main= ${DISTNAME} > +PKGNAME-gmpxx= gmpxx-6.1.2 > + > +REVISION = 3 > SHARED_LIBS += gmp 10.0 # 13.2 > +SHARED_LIBS += gmpxx 2.0 # 9.2 > CATEGORIES= devel math > > HOMEPAGE= https://gmplib.org/ > @@ -15,11 +21,25 @@ EXTRACT_SUFX= .tar.xz > # LGPLv3+ > PERMIT_PACKAGE_CDROM= Yes > > +WANTLIB-main= # empty > +WANTLIB-gmpxx= gmp m ${COMPILER_LIBCXX} > + > +LIB_DEPENDS-gmpxx= ${BASE_PKGPATH},-main > + > +PSEUDO_FLAVORS= no_gmpxx bootstrap > +FLAVOR?= no_gmpxx bootstrap > + > MASTER_SITES= https://gmplib.org/download/gmp/ \ > ${MASTER_SITE_GNU:=gmp/} > > CONFIGURE_STYLE=autoconf > AUTOCONF_VERSION=2.69 > + > +.include <bsd.port.arch.mk> > +.if ${BUILD_PACKAGES:M-gmpxx} > +CONFIGURE_ARGS= --enable-cxx > +.endif > + > # Don't try to optimize for the local CPU submodel > CONFIGURE_ARGS+=--build=${MACHINE_ARCH}-unknown-openbsd${OSrev} > > Index: devel/gmp/pkg/DESCR > =================================================================== > RCS file: devel/gmp/pkg/DESCR > diff -N devel/gmp/pkg/DESCR > --- devel/gmp/pkg/DESCR 1 Nov 2006 18:43:09 -0000 1.3 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,17 +0,0 @@ > -GNU MP is a library for arbitrary precision arithmetic, operating on > -signed integers, rational numbers, and floating point numbers. It has a > -rich set of functions, and the functions have a regular interface. > - > -GNU MP is designed to be as fast as possible, both for small operands and > -for huge operands. The speed is achieved by using fullwords as the basic > -arithmetic type, by using fast algorithms, by carefully optimized assembly > -code for the most common inner loops for a lots of CPUs, and by a general > -emphasis on speed (instead of simplicity or elegance). > - > -The speed of GNU MP is believed to be faster than any other similar > -library. The advantage for GNU MP increases with the operand sizes for > -certain operations, since GNU MP in many cases has asymptotically faster > -algorithms. > - > -The mpfr library is no longer bundled with gmp, but exists as a separate > -package instead. > Index: devel/gmp/pkg/DESCR-gmpxx > =================================================================== > RCS file: devel/gmp/pkg/DESCR-gmpxx > diff -N devel/gmp/pkg/DESCR-gmpxx > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ devel/gmp/pkg/DESCR-gmpxx 26 Oct 2018 14:57:53 -0000 > @@ -0,0 +1,5 @@ > +GNU MP is a library for arbitrary precision arithmetic, operating on > +signed integers, rational numbers, and floating point numbers. It has a > +rich set of functions, and the functions have a regular interface. > + > +This subpackage contains "gmpxx", the C++ support. > Index: devel/gmp/pkg/DESCR-main > =================================================================== > RCS file: devel/gmp/pkg/DESCR-main > diff -N devel/gmp/pkg/DESCR-main > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ devel/gmp/pkg/DESCR-main 26 Oct 2018 14:57:53 -0000 > @@ -0,0 +1,17 @@ > +GNU MP is a library for arbitrary precision arithmetic, operating on > +signed integers, rational numbers, and floating point numbers. It has a > +rich set of functions, and the functions have a regular interface. > + > +GNU MP is designed to be as fast as possible, both for small operands and > +for huge operands. The speed is achieved by using fullwords as the basic > +arithmetic type, by using fast algorithms, by carefully optimized assembly > +code for the most common inner loops for a lots of CPUs, and by a general > +emphasis on speed (instead of simplicity or elegance). > + > +The speed of GNU MP is believed to be faster than any other similar > +library. The advantage for GNU MP increases with the operand sizes for > +certain operations, since GNU MP in many cases has asymptotically faster > +algorithms. > + > +The mpfr library is no longer bundled with gmp, but exists as a separate > +package instead. > Index: devel/gmp/pkg/PLIST > =================================================================== > RCS file: devel/gmp/pkg/PLIST > diff -N devel/gmp/pkg/PLIST > --- devel/gmp/pkg/PLIST 24 Oct 2018 15:21:56 -0000 1.9 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,6 +0,0 @@ > -@comment $OpenBSD: PLIST,v 1.9 2018/10/24 15:21:56 sthen Exp $ > -include/gmp.h > -@info info/gmp.info > -lib/libgmp.a > -lib/libgmp.la > -@lib lib/libgmp.so.${LIBgmp_VERSION} > Index: devel/gmp/pkg/PLIST-gmpxx > =================================================================== > RCS file: devel/gmp/pkg/PLIST-gmpxx > diff -N devel/gmp/pkg/PLIST-gmpxx > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ devel/gmp/pkg/PLIST-gmpxx 26 Oct 2018 14:57:53 -0000 > @@ -0,0 +1,6 @@ > +@comment $OpenBSD: PLIST,v 1.9 2018/10/24 15:21:56 sthen Exp $ > +@conflict gmp-<6.1.2p2 > +include/gmpxx.h > +lib/libgmpxx.a > +lib/libgmpxx.la > +@lib lib/libgmpxx.so.${LIBgmpxx_VERSION} > Index: devel/gmp/pkg/PLIST-main > =================================================================== > RCS file: devel/gmp/pkg/PLIST-main > diff -N devel/gmp/pkg/PLIST-main > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ devel/gmp/pkg/PLIST-main 26 Oct 2018 14:57:53 -0000 > @@ -0,0 +1,7 @@ > +@comment $OpenBSD: PLIST,v 1.9 2018/10/24 15:21:56 sthen Exp $ > +@pkgpath devel/gmp > +include/gmp.h > +@info info/gmp.info > +lib/libgmp.a > +lib/libgmp.la > +@lib lib/libgmp.so.${LIBgmp_VERSION} > Index: productivity/libalkimia/Makefile > =================================================================== > RCS file: /cvs/ports/productivity/libalkimia/Makefile,v > retrieving revision 1.7 > diff -u -p -r1.7 Makefile > --- productivity/libalkimia/Makefile 27 Jul 2017 10:05:20 -0000 1.7 > +++ productivity/libalkimia/Makefile 26 Oct 2018 14:57:53 -0000 > @@ -5,7 +5,7 @@ HOMEPAGE = http://kmymoney2.sourceforge > MAINTAINER = KDE porting team <[email protected]> > V = 5.0.0 > DISTNAME = libalkimia-$V > -REVISION = 0 > +REVISION = 1 > > SHARED_LIBS = alkimia 1.0 # 5.0 > > @@ -23,6 +23,7 @@ KDE4_ONLY = Yes > > BUILD_DEPENDS = ${MODKDE4_DEP_DIR}/libs > LIB_DEPENDS = devel/gmp > +BUILD_DEPENDS = devel/gmp,,-gmpxx > > CONFIGURE_ARGS += -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen:Bool=Yes > CXXFLAGS += -I${LOCALBASE}/include This is almost what I sent you the other day, except that I would leave the default flavor empty, and use the bootstrap flavor where it's really needed.
Now that you switched stuff to use COMPILER everytime C++ is involved, you *also* want a COMPILER line in the !bootstrap branch...
