From owner-svn-ports-all@FreeBSD.ORG Fri Apr 10 00:54:13 2015 Return-Path: Delivered-To: svn-ports-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3422EFD5; Fri, 10 Apr 2015 00:54:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1599B85C; Fri, 10 Apr 2015 00:54:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t3A0sC7p039406; Fri, 10 Apr 2015 00:54:12 GMT (envelope-from mi@FreeBSD.org) Received: (from mi@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t3A0sBwm039398; Fri, 10 Apr 2015 00:54:11 GMT (envelope-from mi@FreeBSD.org) Message-Id: <201504100054.t3A0sBwm039398@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: mi set sender to mi@FreeBSD.org using -f From: Mikhail Teterin Date: Fri, 10 Apr 2015 00:54:11 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r383684 - in head/lang/pure: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Apr 2015 00:54:13 -0000 Author: mi Date: Fri Apr 10 00:54:10 2015 New Revision: 383684 URL: https://svnweb.freebsd.org/changeset/ports/383684 Log: Unbreak by upgrading from 0.58 to 0.64 released last Autumn. The latest version supports all versions of LLVM except 3.6. While here: * Make detection of the installed LLVM automatic, using the latest installed or 3.5 if none are present. It is possible to supply a different value by setting LLVM_VERSION. (Somebody ought to port llvm to the DEFAULT_VERSIONS framework.) * Do not even download the docs, if the DOCS-option is off. * If DOCS-option is on, do not install the *.tm files. * Force the tool to look for documentation in ${DOCSDIR}. * Add the functional regression-check target to Makefile. Approved by: being condemned too often for too long Added: head/lang/pure/files/patch-Makefile (contents, props changed) Modified: head/lang/pure/Makefile head/lang/pure/distinfo head/lang/pure/files/pkg-message.in head/lang/pure/pkg-plist Modified: head/lang/pure/Makefile ============================================================================== --- head/lang/pure/Makefile Thu Apr 9 22:17:26 2015 (r383683) +++ head/lang/pure/Makefile Fri Apr 10 00:54:10 2015 (r383684) @@ -2,12 +2,10 @@ # $FreeBSD$ PORTNAME= pure -PORTVERSION= 0.58 -PORTREVISION= 2 +PORTVERSION= 0.64 CATEGORIES= lang MASTER_SITES= https://bitbucket.org/purelang/pure-lang/downloads/ -DISTFILES= ${PORTNAME}-${PORTVERSION}.tar.gz ${PORTNAME}-docs-${PORTVERSION}.tar.gz -DIST_SUBDIR= pure +EXTRACT_ONLY= ${DISTNAME}.tar.gz MAINTAINER= lichray@gmail.com COMMENT= Modern-style functional programming language @@ -15,24 +13,25 @@ COMMENT= Modern-style functional program LICENSE= GPLv3 LGPL3 LICENSE_COMB= dual -LLVM_VERSION= 33 - LIB_DEPENDS= libltdl.so:${PORTSDIR}/devel/libltdl \ libgmp.so:${PORTSDIR}/math/gmp \ - libmpfr.so:${PORTSDIR}/math/mpfr -BUILD_DEPENDS= llvm-config${LLVM_VERSION}:${PORTSDIR}/devel/llvm${LLVM_VERSION} -RUN_DEPENDS:= ${BUILD_DEPENDS} + libmpfr.so:${PORTSDIR}/math/mpfr \ + libpcreposix.so:${PORTSDIR}/devel/pcre \ + libLLVM-${LLVM_VERSION:C/./&./}.so:${PORTSDIR}/devel/llvm${LLVM_VERSION} SUB_FILES= pkg-message USES= gmake iconv pathfix pkgconfig GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-libgmp-prefix=${LOCALBASE} --enable-release \ + --with-pcre \ --with-tool-prefix=${LOCALBASE}/llvm${LLVM_VERSION}/bin +EXTRACT_AFTER_ARGS=--no-same-owner --no-same-permissions --exclude texmacs USE_LDCONFIG= yes MAKE_ARGS+= prefix=${PREFIX} mandir=${PREFIX}/man \ CC=${CC} CFLAGS="${CFLAGS}" \ + PIC="-fPIC -DPIC" \ CXX=${CXX} CXXFLAGS="${CXXFLAGS}" \ CPPFLAGS+=-I${LOCALBASE}/include \ LDFLAGS+=-L${LOCALBASE}/lib @@ -45,14 +44,43 @@ OPTIONS_DEFINE= DOCS EMACS ETC EXAMPLES EMACS_DESC= Compile pure-mode.el with Emacs ETC_DESC= Copy Pure syntax highlighting to ${DATADIR}/etc +.if !defined(LLVM_VERSION) +. for v in 33 34 35 +. if exists(${LOCALBASE}/bin/llvm-config$v) +LLVM_VERSION= $v +. endif +. endfor +.endif +LLVM_VERSION?= 35 # Pure does not build with llvm36. Yet? +SUB_LIST+= LLVM_VERSION=${LLVM_VERSION} +.if ${LLVM_VERSION} > 34 +CXXFLAGS+= -std=c++11 +.endif + OPTIONS_DEFAULT= ETC OPTIONS_SUB= yes EMACS_CONFIGURE_WITH= elisp +post-patch: + ${REINPLACE_CMD} -e \ + 's,defcustom pure-docs-dir .*,defcustom pure-docs-dir "${DOCSDIR}",' \ + ${WRKSRC}/etc/pure-mode.el.in + ${REINPLACE_CMD} \ + -e 's,default_doc =.*;$$,default_doc = "${DOCSDIR}/index.html";,' \ + -e 's,"+interp.libdir+"docs,${DOCSDIR},g' \ + ${WRKSRC}/lexer.cc + +test check regression-test: build + ${GMAKE} -C ${WRKSRC} check + .include +.if ${PORT_OPTIONS:MDOCS} +DISTFILES+= ${EXTRACT_ONLY} ${PORTNAME}-docs-${PORTVERSION}.tar.gz +.endif + .if ${PORT_OPTIONS:MEMACS} USE_EMACS= yes MAKE_ARGS+= emacs_prefix=${PREFIX} @@ -69,27 +97,26 @@ SUB_LIST+= NOCLANG="@comment " CONFIGURE_ARGS+= --without-readline .endif -CONFIGURE_TARGET= ${ARCH:S/amd64/x86_64/}-portbld-${OPSYS:tl} - post-install: + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/pure \ + ${STAGEDIR}${PREFIX}/lib/libpure.so.*.* .if ${PORT_OPTIONS:METC} @${MKDIR} ${STAGEDIR}${DATADIR}/etc/ - (cd ${WRKSRC} && ${RM} -f etc/*.in && \ - ${COPYTREE_SHARE} etc/ ${STAGEDIR}${DATADIR}) + @(cd ${WRKSRC} && ${RM} -f etc/*.in && ${COPYTREE_SHARE} etc/ ${STAGEDIR}${DATADIR}) .endif .if ${PORT_OPTIONS:MDOCS} @${MKDIR} ${STAGEDIR}${DOCSDIR} - (cd ${WRKDIR}/${PORTNAME}-docs-${PORTVERSION} && \ - ${RM} -f Makefile && \ - ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) - ${LN} -sf ${DOCSDIR} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/docs + ${TAR} -C ${STAGEDIR}${DOCSDIR} --strip-components 1 \ + --exclude Makefile --exclude '*.tm' \ + ${EXTRACT_AFTER_ARGS} \ + -xpf ${_DISTDIR}${_DISTFILES:M*-docs*} + ${FIND} ${STAGEDIR}${DOCSDIR} -type f | ${XARGS} ${CHMOD} ${SHAREMODE} .endif .if ${PORT_OPTIONS:MEXAMPLES} @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} - (cd ${WRKSRC}/examples && \ - ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}) + @(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}) .endif .include Modified: head/lang/pure/distinfo ============================================================================== --- head/lang/pure/distinfo Thu Apr 9 22:17:26 2015 (r383683) +++ head/lang/pure/distinfo Fri Apr 10 00:54:10 2015 (r383684) @@ -1,4 +1,4 @@ -SHA256 (pure/pure-0.58.tar.gz) = b1f65c8fd6e41b7db60a11314d0ac996150b5593a84e930cd9c8bb6ad17e1ea0 -SIZE (pure/pure-0.58.tar.gz) = 1465322 -SHA256 (pure/pure-docs-0.58.tar.gz) = 4374949a3d78db6363d110322dc34c1f97c8c81688a126ccdba4b9b638953b85 -SIZE (pure/pure-docs-0.58.tar.gz) = 4816134 +SHA256 (pure-0.64.tar.gz) = efd55229342aec9d79e8fa4732a30f140e1773064f3869abde053e01468f7b07 +SIZE (pure-0.64.tar.gz) = 1491066 +SHA256 (pure-docs-0.64.tar.gz) = a140456f7d6feff8a15f5505a8fa3f9376afef88f1831ca98b93dc1d1764d110 +SIZE (pure-docs-0.64.tar.gz) = 4915840 Added: head/lang/pure/files/patch-Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/pure/files/patch-Makefile Fri Apr 10 00:54:10 2015 (r383684) @@ -0,0 +1,18 @@ +Fix shared-library symlink to be relative (and local), rather than +absolute. + + -mi + +--- Makefile.in 2014-10-28 05:39:12.000000000 -0400 ++++ Makefile.in 2015-04-09 19:41:53.000000000 -0400 +@@ -366,8 +366,8 @@ + $(INSTALL) $(libpure) $(DESTDIR)$(libdir)/$(libpure) + ifneq ($(libpure), $(libpure_soname)) +- ln -sf $(libdir)/$(libpure) $(DESTDIR)$(libdir)/$(libpure_soname) ++ ln -sf $(libpure) $(DESTDIR)$(libdir)/$(libpure_soname) + endif + ifneq ($(libpure), $(libpure_lnkname)) +- ln -sf $(libdir)/$(libpure) $(DESTDIR)$(libdir)/$(libpure_lnkname) ++ ln -sf $(libpure) $(DESTDIR)$(libdir)/$(libpure_lnkname) + endif + endif Modified: head/lang/pure/files/pkg-message.in ============================================================================== --- head/lang/pure/files/pkg-message.in Thu Apr 9 22:17:26 2015 (r383683) +++ head/lang/pure/files/pkg-message.in Fri Apr 10 00:54:10 2015 (r383684) @@ -12,7 +12,7 @@ interpreter. Check pure(1) for details. %%NOCLANG%% %%NOCLANG%%To enable the inline C/C++ code compilation, %%NOCLANG%% -%%NOCLANG%% clang: lang/clang32 +%%NOCLANG%% clang: lang/clang%%LLVM_VERSION%% %%NOCLANG%% %%NOCLANG%%is required. ==== Modified: head/lang/pure/pkg-plist ============================================================================== --- head/lang/pure/pkg-plist Thu Apr 9 22:17:26 2015 (r383683) +++ head/lang/pure/pkg-plist Fri Apr 10 00:54:10 2015 (r383684) @@ -6,7 +6,6 @@ lib/libpure.so.8.0 lib/pure/array.pure lib/pure/avltrees.pure lib/pure/dict.pure -lib/pure/docs lib/pure/enum.pure lib/pure/faustui.pure lib/pure/getopt.pure