Subject: how to use 'cd' in a do-* target
To: None <tech-pkg@netbsd.org>
From: Mark E. Perkins <perkinsm@bway.net>
List: tech-pkg
Date: 07/24/2005 07:29:53
I'm trying to use pkgsrc to maintain a local project that uses four
small files from diverse sources (i.e., there is no tar file, hence no
single repository, for the files). I thought I would simply be able to
use something like:
do-fetch:
${MKDIR} ${FILESDIR}
cd ${FILESDIR}
${FETCH_CMD} path/to/file1
${FETCH_CMD} path/to/file2
${FETCH_CMD} path/to/file3
${FETCH_CMD} path/to/file4
then use "standard" do-build and do-install in the manner of, say,
pkgtools/url2pkg.
The problem is that this chokes on 'cd ${FILESDIR}' as follows:
bmake fetch
/bin/mkdir -p /Volumes/NetBSD/pkgsrc/local/testproj/files
cd /Volumes/NetBSD/pkgsrc/local/testproj/files
bmake: Exec of `cd' failed (No such file or directory)
*** Error code 1
I can accomplish what I want by using
${FETCH_CMD} -o ${FILESDIR}/fileX path/to/fileX
but I'm curious why 'cd' fails.
This on Darwin 7.9 with up-to-date pkgsrc.
Thanks,
Mark