From owner-freebsd-questions@freebsd.org Sun Nov 8 21:16:42 2015 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 71D62A29E9E for ; Sun, 8 Nov 2015 21:16:42 +0000 (UTC) (envelope-from prvs=075437e8e2=freebsd-questions+phil@spodhuis.org) Received: from mx.spodhuis.org (smtp.spodhuis.org [IPv6:2a02:898:31:0:48:4558:736d:7470]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 322F11802 for ; Sun, 8 Nov 2015 21:16:42 +0000 (UTC) (envelope-from prvs=075437e8e2=freebsd-questions+phil@spodhuis.org) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=spodhuis.org; s=d201408; h=Content-Type:MIME-Version:Message-ID:Subject:To: From:Date; bh=wFIuTXm8zCOMnN+N6cX7gbHr5tZ50K/wpF3VTsWbDd8=; b=HNwycljYjKCCVMV rxrNi1jrls+vy0/xBhMtmrkne6v2QiJh4j+c3kkf6cegH9wSbC3CjcdJiKQh4kHwHOGdMRCkDIgtC 05Ky5dH7KTgsiYMsaU/RcAR8UiH0KzzS/1C4G1lKd61WfAttPQGyLToLOlbnhctXN/ZV4QgrWD9uj UGQnMLo7J8gw4lHUvziz7jPCZ7x5jYRjh2ZK2v9; Received: from authenticated user by smtp.spodhuis.org with esmtpa id 1ZvXKI-00069C-Jj; Sun, 08 Nov 2015 21:16:38 +0000 Date: Sun, 8 Nov 2015 21:16:38 +0000 From: Phil Pennock To: FreeBSD Questions Subject: Poudriere / makefile / python3 sqlite3 dependency Message-ID: <20151108211638.GA23398@tower.spodhuis.org> Mail-Followup-To: FreeBSD Questions MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline OpenPGP: url=https://www.security.spodhuis.org/PGP/keys/0x4D1E900E14C1CC04.asc X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Nov 2015 21:16:42 -0000 Folks, How do I declare a dependency upon py34-sqlite3 in a Ports Makefile, please? In an environment where py27 is the default. More context: Poudriere builds, ports tree overlay of meta-ports using RUN_DEPENDS, `jail-foo` meta-port for installing in jail `foo` to pull in all software dependencies. This setup has been working fine for the past couple of years. Mail-server port, pulls in mailman (so needs python2) and I want to use some python3 scripts I wrote a while back but didn't get around to enabling before now. python3 is installed, no problem. sqlite3, split out from the main Python build, I have failed to persuade to build as Python3.4. With either of these, I can get as far as the error below: RUN_DEPENDS+= py34-sqlite3>0:${PORTSDIR}/databases/py-sqlite3 USES= python:3 RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 error in Poudriere output: ===> spodhuis-jail-hermes-20151108_1 depends on package: py34-sqlite3>0 - not found ===> spodhuis-jail-hermes-20151108_1 depends on package: /packages/All/py27-sqlite3-3.4.3_6.txz - not found ===> dp_USE_PACKAGE_DEPENDS_ONLY set - not building missing dependency from source I haven't yet seen a method of using the `:target` part of a RUN_DEPENDS specification to influence which version of Python should be used by the depended-upon port, rather than the depending port. I've tried a number of other approaches, all of which have so far failed. What _should_ I be doing to build this port automatically, so that I can keep up-to-date with Poudriere builds, please? Thanks, -Phil