Date: Fri, 1 May 2020 12:01:30 +0200 From: Guido Falsi <madpilot@FreeBSD.org> To: Christoph Moench-Tegeder <cmt@burggraben.net> Cc: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: Re: svn commit: r533475 - in head/net/asterisk16: . files Message-ID: <39e52c6c-8e59-b12c-9518-617f27bf066c@FreeBSD.org> In-Reply-To: <20200430235617.GB2431@elch.exwg.net> References: <202004302028.03UKSgs1063077@repo.freebsd.org> <20200430235617.GB2431@elch.exwg.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 01/05/20 01:56, Christoph Moench-Tegeder wrote: > Hi, > > ## Guido Falsi (madpilot@FreeBSD.org): > >> Log: >> - Update asterisk16 to 16.10.0 > > This fails in poudriere in very intersting ways, and it's entirely not > your fault :) > During configure, I get > > : [pjproject] Verifying /portdistfiles/asterisk/pjproject-2.9.tar.bz2 > : [pjproject] Verify successful > : touch: /portdistfiles/asterisk/pjproject-2.9.tar.bz2: Permission denied > : rm: /portdistfiles/asterisk/pjproject-2.9.tar.bz2: Permission denied > : [pjproject] Downloading https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.9/pjproject-2.9.tar.bz2 to /portdistfiles/asterisk/pjproject> > : /bin/sh: cannot create /portdistfiles/asterisk/pjproject-2.9.tar.bz2: Permission denied > > and then configure bombs out, failed, etc. > After a wild goose chase (16.9.0 built just fine, and I couldn't see any > relevant change), I figured out: > > asterisk-16.10.0/third-party/pjproject/Makefile l. 91: > : $(DOWNLOAD_DIR)/$(TARBALL_FILE): ../versions.mak > : $(CMD_PREFIX) ($(TARBALL_EXISTS) && $(TARBALL_VERIFY) && touch $@) || (rm -rf $@ ;\ > : $(TARBALL_DOWNLOAD)) || (rm -rf $@ ;\ > : $(SHELL_ECHO_PREFIX) Retrying download ; $(TARBALL_DOWNLOAD)) > > (BTW the code is the same in 16.9.0). I actually tried to plug into asterisk own logic without changing it, and I did not notice this prolbem. I think we can simply get all this logic out of the way, since the ports framework is getting the tarball for us. > > DOWNLOAD_DIR points to /portdistfiles/asterisk. > That means: whenever asterisk's source time stamps are newer than the > (unchanged since weeks) pjproject-2.9.tar.bz2, this snippet will happily > try to "VERIFY" (md5 check, that's ok) and touch (why? oh WHY?) that > tarball, which of course fails as /portdistfiles is read-only. > > The correct approach would be to patch out that verify-and-download > step: we do know that we have our pjproject tarball, and it's checksum > has been verified by the ports framework. If nobody else beats me to > it, I'll cook up a patch tomorrow ("I'll just update asterisk", he said, > and then it was 02:00). This (making it up till late) happens to me all the time. I'll be waiting for your patch. > > The quick workaround was to touch ${DISTDIR}/asterisk/pjproject-2.9tar.bz2 > myself - that bumped modification time and allowed the build to pass. > > While practicing my staring-in-disbelief with the configure output, I > noticed that we get a few errors in there: > > : ./configure: PJPROJECT_CONFIGURE_OPTS+= --build=amd64-portbld-freebsd12.1: not found > : ./configure: PJPROJECT_CONFIGURE_OPTS+= --host=: not found > : ./configure: PJPROJECT_CONFIGURE_OPTS+= --with-ssl=/usr: not found > > That looks like we got a few bashisms in there, despite configure > claiming to be "/bin/sh" and may result in a few wrong arguments being > used when configuring pjproject. I'll take a look at those. Those missing options don't look harmful though. BTW thanks for reporting these issues. Asterisk is a relatively complex port and I always end up missing something! -- Guido Falsi <madpilot@freebsd.org>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?39e52c6c-8e59-b12c-9518-617f27bf066c>