Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --- pkgsrc/lang/parrot/Makefile 2009/06/17 21:31:58 1.17 +++ pkgsrc/lang/parrot/Makefile 2019/08/11 13:21:23 1.95 @@ -1,24 +1,23 @@ -# $NetBSD: Makefile,v 1.17 2009/06/17 21:31:58 he Exp $ +# $NetBSD: Makefile,v 1.95 2019/08/11 13:21:23 wiz Exp $ # -VERSION= 1.3.0 -RTYPE= devel -DISTNAME= parrot-${VERSION} +DISTNAME= parrot-${PARROT_VERSION} +PKGREVISION= 20 CATEGORIES= lang -MASTER_SITES= ftp://ftp.parrot.org/pub/parrot/releases/${RTYPE}/${VERSION}/ +MASTER_SITES= ftp://ftp.parrot.org/pub/parrot/releases/${PARROT_RTYPE}/${PARROT_VERSION}/ MAINTAINER= he@NetBSD.org HOMEPAGE= http://www.parrotcode.org/ COMMENT= Virtual machine made to run Perl 6 and other languages LICENSE= artistic-2.0 -PKG_DESTDIR_SUPPORT= user-destdir USE_LANGUAGES= c c++ -USE_TOOLS+= perl +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" @@ -26,7 +25,13 @@ HAS_CONFIGURE= yes CONFIG_SHELL= perl CONFIGURE_SCRIPT= Configure.pl CONFIGURE_ARGS+= --prefix=${PREFIX:Q} \ - --icu-config=${PREFIX}/bin/icu-config + --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 @@ -38,13 +43,61 @@ SUBST_SED.pthread+= -e '/^CFLAGS /s|$$|$ 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 + +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 +REPLACE.parrot.old= .*parrot[^[:space:]]* +REPLACE.parrot.new= ${PREFIX}/bin/parrot +REPLACE_FILES.parrot+= tools/dev/pbc_to_exe.pir + +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} -post-install: - if [ -e ${PREFIX}/lib/libparrot.so.${VERSION} ]; then \ - ${LN} -s libparrot.so.${VERSION} ${PREFIX}/lib/libparrot.so ; \ - fi - +.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"