[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / lang / parrot

File: [cvs.NetBSD.org] / pkgsrc / lang / parrot / Makefile (download)

Revision 1.110, Wed Nov 23 16:18:50 2022 UTC (2 months, 1 week ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2022Q4-base, pkgsrc-2022Q4, HEAD
Changes since 1.109: +2 -2 lines

massive revision bump after textproc/icu update

# $NetBSD: Makefile,v 1.110 2022/11/23 16:18:50 adam Exp $

DISTNAME=		parrot-${PARROT_VERSION}
PKGREVISION=		30
CATEGORIES=		lang
MASTER_SITES=		ftp://ftp.parrot.org/pub/parrot/releases/${PARROT_RTYPE}/${PARROT_VERSION}/

MAINTAINER=		he@NetBSD.org
HOMEPAGE=		http://www.parrot.org/
COMMENT=		Virtual machine made to run Perl 6 and other languages
LICENSE=		artistic-2.0

USE_LANGUAGES=		c c++
USE_TOOLS+=		perl gmake
PTHREAD_OPTS+=		require
BUILD_TARGET=		world
TEST_TARGET=		test
HAS_CONFIGURE=		yes
MAKE_JOBS_SAFE=		no

.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.prefs.mk"

CONFIG_SHELL=		perl
CONFIGURE_SCRIPT=	Configure.pl
CONFIGURE_ARGS+=	--prefix=${PREFIX:Q} \
			--mandir=${PREFIX:Q}/${PKGMANDIR:Q} \
			--icu-config=${PREFIX}/bin/icu-config \
			--without-opengl --without-pcre \
			--without-zlib \
			--without-libffi \
			--optimize
# --without-llvm

SUBST_CLASSES+=		pthread
SUBST_STAGE.pthread=	post-configure
SUBST_FILES.pthread=	Makefile
SUBST_SED.pthread=	-e 's|-pthread||g'
SUBST_SED.pthread+=	-e 's|-lpthread||g'
SUBST_SED.pthread+=	-e 's|-lc_r||g'
SUBST_SED.pthread+=	-e '/^CFLAGS /s|$$|${PTHREAD_CFLAGS:Q}|'
SUBST_SED.pthread+=	-e '/^LINKFLAGS /s|$$|${PTHREAD_LDFLAGS:Q} ${PTHREAD_LIBS:Q}|'
SUBST_SED.pthread+=	-e '/^LDFLAGS /s|$$|${PTHREAD_LDFLAGS:Q} ${PTHREAD_LIBS:Q}|'

PLIST_SUBST+=		PARROT_VERSION=${PARROT_VERSION:Q}
PRINT_PLIST_AWK+=	{ gsub(/${PARROT_VERSION}/, "$${PARROT_VERSION}") }
PLIST_SRC+=		${PLIST_SRC_DFLT}
# Default this to ELF shared libs with .so,
# Darwin has PLIST.Darwin which gets included automatically.
.if (${OPSYS} != "Darwin")
PLIST_SRC+=		PLIST.shared
.endif

SUBST_CLASSES+=		path
SUBST_STAGE.path=	pre-configure
SUBST_MESSAGE.path=	To avoid work/.tools/bin/perl recorded in installation
SUBST_FILES.path=	config/gen/config_pm/myconfig.in
SUBST_SED.path=		-e 's,@perl@,${PREFIX}/bin/perl,'

REPLACE_PERL+=		tools/build/ops2c.pl
REPLACE_PERL+=		tools/build/pmc2c.pl
REPLACE_PERL+=		tools/dev/create_language.pl
REPLACE_PERL+=		tools/dev/gen_makefile.pl
REPLACE_PERL+=		tools/dev/mk_language_shell.in
REPLACE_PERL+=		tools/dev/pprof2cg.pl
REPLACE_PERL+=		tools/dev/reconfigure.pl

REPLACE_INTERPRETER+=		parrot-nqp
REPLACE.parrot-nqp.old=		.*parrot-nqp[^[:space:]]*
REPLACE.parrot-nqp.new=		${PREFIX}/bin/parrot-nqp
REPLACE_FILES.parrot-nqp+=	compilers/data_json/JSON.nqp

REPLACE_INTERPRETER+=	nqp
REPLACE.nqp.old=	.*nqp[^[:space:]]*
REPLACE.nqp.new=	${PREFIX}/bin/parrot-nqp
REPLACE_FILES.nqp+=	runtime/parrot/library/YAML/Tiny.pm

# These have been reported to parrot, Git tracking issue #201
CHECK_WRKREF_SKIP+=	bin/ops2c
CHECK_WRKREF_SKIP+=	bin/parrot
CHECK_WRKREF_SKIP+=	bin/parrot-nqp
CHECK_WRKREF_SKIP+=	bin/parrot-prove
CHECK_WRKREF_SKIP+=	bin/parrot_config
CHECK_WRKREF_SKIP+=	bin/parrot_nci_thunk_gen
CHECK_WRKREF_SKIP+=	bin/pbc_merge
CHECK_WRKREF_SKIP+=	bin/pbc_to_exe
CHECK_WRKREF_SKIP+=	bin/winxed
CHECK_WRKREF_SKIP+=	lib/parrot/${PARROT_VERSION}/include/config.fpmc
CHECK_WRKREF_SKIP+=	lib/parrot/${PARROT_VERSION}/parrot_config.o
CHECK_WRKREF_SKIP+=	lib/parrot/${PARROT_VERSION}/tools/lib/Parrot/Config/Generated.pm
CHECK_WRKREF_SKIP+=	src/parrot/${PARROT_VERSION}/config_lib.pir

# Does relink internally, so allow local rpath entries
BUILDLINK_PASSTHRU_RPATHDIRS+=	${WRKSRC}

pre-install:
	${CHMOD} -R g-w ${WRKSRC}

.include "../../lang/parrot/version.mk"
.include "../../textproc/icu/buildlink3.mk"
.include "../../devel/gmp/buildlink3.mk"
.include "../../mk/readline.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"