On Thu, Jul 10, 2008 at 10:53:13PM +0200, Anders Trob??ck wrote: > On Thu, 10 Jul 2008 13:34:39 -0700 > "Garrett Cooper" <[EMAIL PROTECTED]> wrote: > > > On Thu, Jul 10, 2008 at 10:39 AM, Anders Trob??ck > > <[EMAIL PROTECTED]> wrote: > > > On Thu, 10 Jul 2008 14:54:15 +0200 > > > Anders Troback <[EMAIL PROTECTED]> wrote: > > > > > >> On Thu, 10 Jul 2008 01:54:10 -0800 > > >> Beech Rintoul <[EMAIL PROTECTED]> wrote: > > >> > > >> > On Thursday 10 July 2008, Anders Troback said: > > >> > > Hi, > > >> > > > > >> > > I need some tips about a port that I'm working on! > > >> > > > > >> > > The problem that I have are that the source of the code are in > > >> > > a tgz that are in a sub folder in an other tgz! So first I > > >> > > need the port to download and extract the first tgz and then > > >> > > extract, configure and make the second tgz! > > >> > > > > >> > > How do I cope with that? > > >> > > > > >> > > Thanks! > > >> > > > >> > You can probably extract the second time in post-extract, but > > >> > you're going to have to get creative defining the right > > >> > ${WRKSRC}. After that it should patch and build normally. > > >> > > > >> > Beech > > >> > > > >> > > >> OK! Next problem:-] > > >> > > >> The program that I want to build are under a sub folder of > > >> ${WRKSRC}/src so first I need to make the "main" program and then I > > >> have to run make in that sub folder! Are there any macros that do > > >> things like this or is there some other way? > > >> > > >> Thanks again! > > >> > > > > > > Is this a "legal" way of solving this issue? > > > > > > post-build: > > > cd ${WRKSRC}/src/extras && make > > > > Wouldn't `gmake -C ${WRKSRC}/src/extras' be better? > > -Garrett > > Yes, much nice and cleaner! I don't need gmake but make was the same!
Actually, this might miss a lot of settings in the environment and stuff. It would be much better to do it the way bsd.port.mk does it: ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET} Yes, this is a command line consisting entirely of variables :) Well, okay, to do it in a different directory you would need to use: ${SETENV} ${MAKE_ENV} ${GMAKE} -C ${WRKSRC}/src/extras ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET} The ${SETENV} ${MAKE_ENV} part is really important. The rest - well, ${MAKE_FLAGS} and ${MAKE_ARGS} are most probably not needed in this particular case, but they still are a good idea in the general case - although in very few cases, on very weird "make" invocations, there might be problems because of flag differences between BSD make and GNU make. The ${MAKEFILE} is very, very rarely *not* "Makefile" - and if you decide to remove ${MAKE_FLAGS}, be sure to check if you still want to pass ${MAKEFILE}, too :) Well, okay, so basically, this could *most probably* be shortened to: ${SETENV} ${MAKE_ENV} ${GMAKE} -C ${WRKSRC}/src/extras ...maybe :) G'luck, Peter -- Peter Pentchev [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553 What would this sentence be like if pi were 3?
pgpN9WafGUGZK.pgp
Description: PGP signature