Date: Tue, 02 Sep 2008 07:10:43 -0400 From: Naram Qashat <cyberbotx@cyberbotx.com> To: Sergey Matveychuk <sem@FreeBSD.org> Cc: ports@freebsd.org Subject: Re: portupgrade fails with quoted options Message-ID: <48BD1F33.10204@cyberbotx.com> In-Reply-To: <48BD1527.4000500@FreeBSD.org> References: <48BC2A79.1080905@cyberbotx.com> <48BD1527.4000500@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Sergey Matveychuk wrote: > Naram Qashat wrote: >> When I try to upgrade a port that has quoted options (an example is >> www/apache22, where I opted to retain the old WITH_MODULES line I had >> before) in pkgtools.conf, portupgrade fails to quote the option and >> causes the port to fail to build or even causes portupgrade itself to >> bomb. Strangely enough, if I use the following script that uses the >> same tools as portupgrade: >> >> require "pkgtools" >> require "optparse" >> load_config >> opts = OptionParser.new >> opts.order(ARGV) do |arg| >> make_args = config_make_args(arg) >> puts "#{arg}:#{make_args}" >> end >> >> It shows the correct options if I run it for www/apache22. I get the >> following with the above script: >> >> www/apache22:WITHOUT_APACHE_OPTIONS=yes WITHOUT_IPV6=yes >> WITH_MYSQL=yes WITH_BDB=yes WITH_SUEXEC=yes >> SUEXEC_LOGFILE=/var/log/www/httpd-suexec.log WITH_MODULES="actions >> alias auth_basic auth_digest authn_dbd authn_dbd authn_default >> authz_default authz_host authz_user autoindex cgi dav dav_fs dbd >> deflate dir echo env expires filter headers ident imagemap include >> info log_config log_forensic logio mime mime_magic negotiation rewrite >> setenvif ssl status suexec unique_id userdir version vhost_alias" >> BATCH=yes WITH_OPENSSL=yes WITH_OPENSSL_PORT=yes WITHOUT_X11=yes >> WITH_BDB_VER=43 WITH_MYSQL_VER=50 >> >> But when I use portupgrade itself, I get the following as the make >> arguments instead: >> >> ---> Building '/usr/ports/www/apache22' with make flags: >> WITHOUT_APACHE_OPTIONS=yes WITHOUT_IPV6=yes WITH_MYSQL=yes >> WITH_BDB=yes WITH_SUEXEC=yes >> SUEXEC_LOGFILE=/var/log/www/httpd-suexec.log "WITH_MODULES=\"actions >> alias auth_basic auth_digest authn_dbd authn_dbd authn_default >> authz_default authz_host authz_user autoindex cgi dav dav_fs dbd >> deflate dir echo env expires filter headers ident imagemap include >> info log_config log_forensic logio mime mime_magic negotiation rewrite >> setenvif ssl status suexec unique_id userdir version vhost_alias\"" >> BATCH=yes WITH_OPENSSL=yes WITH_OPENSSL_PORT=yes WITHOUT_X11=yes >> WITH_BDB_VER=43 WITH_MYSQL_VER=50 >> >> Notice how WITH_MODULES has quotes around it and then escaped quotes >> inside it? It shouldn't be doing things like that. I don't know ruby >> (I only made that above script from looking at some parts of >> portupgrade, but I have almost no understanding of ruby), so I can't >> give a fix for this. >> > > You missed lines from pkgtools.conf you use. Please, show them. > Here's the www/apache22 and '*' section I have in my pkgtools.conf: '*' => [ 'BATCH=yes', 'WITH_OPENSSL_PORT=yes', 'WITH_OPENSSL=yes', 'WITHOUT_GNOME=esound', 'WITHOUT_CUPS=yes', 'WITH_BDB_VER=46', 'WITH_MYSQL_VER=50', 'WITH_OPTIMIZED_CFLAGS=yes' ], 'www/apache22' => [ 'WITHOUT_APACHE_OPTIONS=yes', 'WITH_PCRE_FROM_PORTS=yes', 'WITH_MYSQL=yes', 'WITH_BDB=yes', 'WITH_SUEXEC=yes', 'SUEXEC_LOGFILE=/var/log/www/httpd-suexec.log', 'WITH_MODULES="actions alias auth_basic auth_digest authn_dbd authn_default authz_default authz_host authz_user autoindex cgi dav dav_fs dav_lock dbd deflate dir echo env expires filter headers ident imagemap include info log_config log_forensic logio mime mime_magic negotiation rewrite setenvif status suexec unique_id userdir version vhost_alias"' ], Naram Qashat
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48BD1F33.10204>