Date: Sat, 24 May 2008 15:16:57 +0200 From: Kris Kennaway <kris@FreeBSD.org> To: Paul Schmehl <pauls@utdallas.edu> Cc: FreeBSD Ports <freebsd-ports@freebsd.org> Subject: Re: Handling user input and package building Message-ID: <48381549.8000104@FreeBSD.org> In-Reply-To: <73817B56605C84F44E002CB2@utd65257.utdallas.edu> References: <73817B56605C84F44E002CB2@utd65257.utdallas.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Paul Schmehl wrote: > I'm trying to figure out how to handle user input in package building mode. > > I've got statements like this in my Makefile, and they work fine to > suppress user input from the pkg-install script: > > pre-install: > .if !defined(PACKAGE_BUILDING) > @${SETENV} ${SCRIPTS_ENV} PKG_PREFIX=${PREFIX} \ > ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL > .endif > > However, the same syntax doesn't seem to work for the pkg-deinstall > script, which also requires user input. > > .if defined(PACKAGE_BUILDING) > deinstall: > @${SETENV} ${SCRIPTS_ENV} PKG_PREFIX=${PREFIX} \ > ${SH} ${PKGDEINSTALL} ${PORTNAME} DEINSTALL > post-deinstall: > @${SETENV} ${SCRIPTS_ENV} PKG_PREFIX=${PREFIX} \ > ${SH} ${PKGDEINSTALL} ${PORTNAME} POST-DEINSTALL > .endif > > One other question. The Porters Handbook says: > "If your port requires user input to build, configure, or install, you > must set IS_INTERACTIVE in your Makefile. " > > Yet portlint says: > "WARN: Makefile: [25]: use of IS_INTERACTIVE discouraged. provide batch > mode by using BATCH and/or FOR_CDROM." > > What's the correct way to do this? > Avoid the requirement of interactive input at all costs. Kris
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48381549.8000104>