* Stefano Lattarini wrote on Wed, Jan 19, 2011 at 08:23:20PM CET: > On Wednesday 19 January 2011, Ralf Wildenhues wrote: > > AM_TESTS_ENVIRONMENT = foo=1 > > TESTS_ENVIRONMENT = foo=2 > > > > the > > $(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) ./test > > > > will let Solaris sh pass foo=1 to the test, but bash will pass foo=2. > > > Oh joy, I hadn't thought about this YAPI (Yet Another Portability Issue).
Well, Posix even leaves this undefined IIRC. > > So I'm afraid that at the very least, AM_TESTS_ENVIRONMENT cannot have > > the same semantics (just set variables, no export, no semi-colon at end) > > as TESTS_ENVIRONMENT. So if the developer needs to use `foo=1; export > > foo' anyway, there is not so much point in having separated *TESTS_SETUP > > variables any more. Or so I think. > > > I must agree now. Oh well, no big deal once TESTS_SETUP and AM_TESTS_SETUP > are in place. Well, what I was trying to say is: what use is TESTS_SETUP if we expand to $(AM_TESTS_SETUP) $(TESTS_SETUP) $(TESTS_ENVIRONMENT) ? It can simply be merged into TESTS_ENVIRONMENT; there is no point in keeping them separate. And then, we can rename AM_TESTS_SETUP to AM_TESTS_ENVIRONMENT if we like, or not (consistency vs. green bikeshed question). I'll leave it up to the person who writes the documentation with detailed explanation of intended semantics. Cheers, Ralf