| 
									
										
										
										
											2015-08-03 13:09:07 +01:00
										 |  |  | require "hardware" | 
					
						
							|  |  |  | require "extend/ENV/shared" | 
					
						
							|  |  |  | require "extend/ENV/std" | 
					
						
							|  |  |  | require "extend/ENV/super" | 
					
						
							| 
									
										
										
										
											2013-08-19 12:32:57 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | def superenv? | 
					
						
							| 
									
										
										
										
											2016-07-06 10:43:42 +01:00
										 |  |  |   ARGV.env != "std" && Superenv.bin | 
					
						
							| 
									
										
										
										
											2013-08-19 12:32:57 -05:00
										 |  |  | end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | module EnvActivation | 
					
						
							|  |  |  |   def activate_extensions! | 
					
						
							|  |  |  |     if superenv? | 
					
						
							|  |  |  |       extend(Superenv) | 
					
						
							|  |  |  |     else | 
					
						
							| 
									
										
										
										
											2013-08-19 12:32:59 -05:00
										 |  |  |       extend(Stdenv) | 
					
						
							| 
									
										
										
										
											2013-08-19 12:32:57 -05:00
										 |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2013-08-19 12:32:59 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  |   def with_build_environment | 
					
						
							|  |  |  |     old_env = to_hash.dup | 
					
						
							|  |  |  |     tmp_env = to_hash.dup.extend(EnvActivation) | 
					
						
							|  |  |  |     tmp_env.activate_extensions! | 
					
						
							|  |  |  |     tmp_env.setup_build_environment | 
					
						
							|  |  |  |     replace(tmp_env) | 
					
						
							|  |  |  |     yield | 
					
						
							|  |  |  |   ensure | 
					
						
							|  |  |  |     replace(old_env) | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2013-08-19 12:32:57 -05:00
										 |  |  | end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ENV.extend(EnvActivation) |