sthen 25f0e460f2 Add COMPILER lines to c++ ports which currently use the default. Adjust
some existing COMPILER lines with arch restrictions etc. In the usual
case this is now using "COMPILER = base-clang ports-gcc base-gcc" on
ports with c++ libraries in WANTLIB.

This is basically intended to be a noop on architectures using clang
as the system compiler, but help with other architectures where we
currently have many ports knocked out due to building with an unsuitable
compiler -

- some ports require c++11/newer so the GCC version in base that is used
on these archirtectures is too old.

- some ports have conflicts where an executable is built with one compiler
(e.g. gcc from base) but a library dependency is built with a different
one (e.g. gcc from ports), resulted in mixing incompatible libraries in the
same address space.

devel/gmp is intentionally skipped as it's on the path to building gcc -
the c++ library there is unused in ports (and not built by default upstream)
so intending to disable building gmpcxx in a future commit.
2018-10-24 14:27:57 +00:00

67 lines
1.6 KiB
Makefile

# $OpenBSD: Makefile,v 1.69 2018/10/24 14:27:59 sthen Exp $
COMMENT-main= garbage collection and memory leak detection for C and C++
COMMENT-atomic= access to hardware provided atomic memory operations
VERSION= 7.6.0
LIBAO_VERSION= 7.4.4
DISTNAME= gc-${VERSION}
PKGNAME-atomic= libatomic_ops-${LIBAO_VERSION}
PKGNAME-main= boehm-gc-${VERSION}
REVISION-main= 2
REVISION-atomic=2
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
libatomic_ops-${LIBAO_VERSION}${EXTRACT_SUFX}
MULTI_PACKAGES= -main -atomic
SHARED_LIBS += gc 4.0 # 1.3
SHARED_LIBS += gccpp 0.0 # 1.3
SHARED_LIBS += cord 2.3 # 1.3
SHARED_LIBS += atomic_ops 1.3 # 1.3
SHARED_LIBS += atomic_ops_gpl 1.3 # 1.3
CATEGORIES= devel
MASTER_SITES= ${HOMEPAGE}gc_source/
HOMEPAGE= http://hboehm.info/gc/
# currently works only on most ELF archs
NOT_FOR_ARCHS= m88k
PERMIT_PACKAGE_CDROM= Yes
WANTLIB-main += m pthread ${COMPILER_LIBCXX}
COMPILER = base-clang ports-gcc base-gcc
MAKE_ENV= CP="cp" \
INSTALL_DATA="${INSTALL_DATA}" \
INSTALL_MAN="${INSTALL_MAN}"
CONFIGURE_STYLE= gnu
CONFIGURE_ARGS= --with-libatomic-ops=no \
--enable-cplusplus \
--enable-threads=pthreads
post-extract:
@perl -pi -e "s,/usr/local,${PREFIX},g" ${WRKSRC}/doc/gc.man
@mv ${WRKDIR}/libatomic_ops-${LIBAO_VERSION} ${WRKBUILD}/libatomic_ops
pre-build:
# clean distributed objects and libs and rebuild
@cd ${WRKBUILD}/libatomic_ops && ${SETENV} ${MAKE_ENV} \
${MAKE_PROGRAM} ${MAKE_FLAGS} clean all
post-install:
@cd ${WRKBUILD}/libatomic_ops && ${SETENV} ${MAKE_ENV} \
${MAKE_PROGRAM} ${ALL_FAKE_FLAGS} install
${INSTALL_DATA} ${WRKSRC}/doc/gc.man ${PREFIX}/man/man3/gc.3
.include <bsd.port.mk>