Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --- pkgsrc/lang/parrot/Makefile 2008/08/30 08:06:33 1.14 +++ pkgsrc/lang/parrot/Makefile 2012/07/03 13:29:25 1.59 @@ -1,21 +1,23 @@ -# $NetBSD: Makefile,v 1.14 2008/08/30 08:06:33 dholland Exp $ +# $NetBSD: Makefile,v 1.59 2012/07/03 13:29:25 he Exp $ # -DISTNAME= parrot-0.4.11 -PKGREVISION= 1 +VERSION= 4.2.0 +RTYPE= devel +DISTNAME= parrot-${VERSION} CATEGORIES= lang -MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=../by-authors/id/M/MD/MDIEP/} +MASTER_SITES= ftp://ftp.parrot.org/pub/parrot/releases/${RTYPE}/${VERSION}/ -MAINTAINER= debolaz@gmail.com +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 PTHREAD_OPTS+= require BUILD_TARGET= world TEST_TARGET= test -INSTALL_TARGET= reallyinstall HAS_CONFIGURE= yes .include "../../mk/pthread.buildlink3.mk" @@ -24,15 +26,8 @@ HAS_CONFIGURE= yes CONFIG_SHELL= perl CONFIGURE_SCRIPT= Configure.pl CONFIGURE_ARGS+= --prefix=${PREFIX:Q} \ - --icu-config=${PREFIX}/bin/icu-config - -# If you have another architecture, please test if it can compile -# with (working) jit support and report status to the maintainer. - -.if ${MACHINE_ARCH} == "i386" -CONFIGURE_ARGS+= --jitcapable \ - --execcapable -.endif + --icu-config=${PREFIX}/bin/icu-config \ + --optimize SUBST_CLASSES+= pthread SUBST_STAGE.pthread= post-configure @@ -44,10 +39,58 @@ 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}|' -post-install: - if [ -e ${PREFIX}/lib/libparrot.so.0.4.1 ]; then \ - ${LN} -s libparrot.so.0.4.1 ${PREFIX}/lib/libparrot.so ; \ - fi +PLIST_SUBST+= VERSION=${VERSION:Q} +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/${VERSION}/include/config.fpmc +CHECK_WRKREF_SKIP+= lib/parrot/${VERSION}/parrot_config.o +CHECK_WRKREF_SKIP+= lib/parrot/${VERSION}/tools/lib/Parrot/Config/Generated.pm + +# Does relink internally, so allow local rpath entries +BUILDLINK_PASSTHRU_RPATHDIRS+= ${WRKSRC} + +pre-install: + ${CHMOD} -R g-w ${WRKSRC} .include "../../textproc/icu/buildlink3.mk" +.include "../../devel/gmp/buildlink3.mk" +.include "../../devel/readline/buildlink3.mk" .include "../../mk/bsd.pkg.mk"