On Thu, Feb 19, 2015 at 02:21:11PM +0100, Michael J Gruber wrote: > > It passes NO_ICONV through to the test suite, sets up a prerequisite, > > disables some test scripts which are purely about i18n (e.g., > > t3900-i18n-commit), and marks some of the scripts with one-off tests > > using the ICONV prereq. > > Hmm. I know we pass other stuff down, but is this really a good idea? It > relies on the fact that the git that we test was built with the options > from there. This assumptions breaks (with) GIT_TEST_INSTALLED, if not more. > > Basically, it may break as soon as we run the tests by other means than > "make", which is quite customary if you run single tests. > > (And we do pass config.mak down, me thinks, but NO_ICONV may come from > the command line.) It's not quite so bad as you make out. We write the value to the GIT-BUILD-OPTIONS file during "make", no matter where it comes from, and load that in test-lib.sh. So: make NO_ICONV=Nope cd t ./t3901-i18n-patch.sh works just fine (for this and for any of the other options we mark there). It won't work for GIT_TEST_INSTALLED, but that is not a new problem. Fundamentally you cannot expect to test a version built without option X without telling git _somehow_ that it was built that way. I suspect GIT_TEST_INSTALLED is not all that widely used, or somebody would have complained before. But if we really want to support it, I think the right thing is to bake GIT-BUILD-OPTIONS into the binary, so that "git --build-options" dumps it. It might also have value for debugging and forensics in general. > Jeff, you got it wrong. You should do the hard part and leave the easy > part to us! Oops. :) -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html