[macro] Using portable environment routines