Hello Paul! On Feb 20, 2007, at 1:32 AM, Paul Guyot wrote:
Juan,
I am confused. These so-called "options" are undocumented but should not be used by any user because their semantics could change any time. For example, xcodeversion only means how to handle xcode related tools and the most frequent value ("2.1"), as Kevin notes it, only means 2.1 or higher, but once we encounter an incompatible version of xcode, we will need to add a new value and update the semantics. We certainly do not want users to override this setting by putting whatever they think this would mean, this "option" is set by MacPorts infrastructure and it's better to keep users away from it. All that, including portverbose, porttrace, etc. were never intended to be options users could configure, they are just a way to express some information through the whole program.
In fact, I do not understand why you found those in your ports.conf file. Mine is based from MP's ports.conf.in which does not mention those "options": http://svn.macosforge.org/projects/macports/browser/trunk/base/doc/ ports.conf.in
Finding out which "options" are up for user interaction (and therefore documentable) and which aren't was also one of my explicit goals; comments like yours, "stay away from those!", is what I was looking for with my mail. I didn't get all of them from a standard ports.conf file, I was reading into the bootstrap_options variable that gets initialized in dportinit in base/src/darwinports1.0/darwinports.tcl. So help me here build the final list. "Options" that are not meant for user interaction and therefore should *not* be documented are: -) xcodeversion -) xcodebuildcmd -) porttrace -) portverbose (why would you keep this one from being user customizable?) -) libpath? (from reading dportinit, it seems to me like this is a dangerous one, but you didn't say anything about it) -) auto_path? (likewise) -) master_site_local (created by jkh in r5004, reportedly as a customizable option meant to "(...) allows portfetch.tcl to go first to a local distfiles cache, if available, before going out over the net to try and get it by less efficient means.", but reading base/src/darwinports1.0/darwinports.tcl around line 450 and base/src/port1.0/portfetch.tcl around line 190 doesn't tell me much what the option does and how I could document it) Thanks for your help! Regards,... -jmpp