builder: improve macOS 10.5 and PPC support (#14152)
							parent
							
								
									563469ed9f
								
							
						
					
					
						commit
						11ee2b6409
					
				| 
						 | 
					@ -206,6 +206,14 @@ fn (mut v Builder) setup_ccompiler_options(ccompiler string) {
 | 
				
			||||||
	if v.pref.os == .macos && os.exists('/opt/procursus') {
 | 
						if v.pref.os == .macos && os.exists('/opt/procursus') {
 | 
				
			||||||
		ccoptions.linker_flags << '-Wl,-rpath,/opt/procursus/lib'
 | 
							ccoptions.linker_flags << '-Wl,-rpath,/opt/procursus/lib'
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						mut user_darwin_version := 999_999_999
 | 
				
			||||||
 | 
						mut user_darwin_ppc := false
 | 
				
			||||||
 | 
						$if macos {
 | 
				
			||||||
 | 
							user_darwin_version = os.uname().release.split('.')[0].int()
 | 
				
			||||||
 | 
							if os.uname().machine == 'Power Macintosh' {
 | 
				
			||||||
 | 
								user_darwin_ppc = true
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	ccoptions.debug_mode = v.pref.is_debug
 | 
						ccoptions.debug_mode = v.pref.is_debug
 | 
				
			||||||
	ccoptions.guessed_compiler = v.pref.ccompiler
 | 
						ccoptions.guessed_compiler = v.pref.ccompiler
 | 
				
			||||||
	if ccoptions.guessed_compiler == 'cc' && v.pref.is_prod {
 | 
						if ccoptions.guessed_compiler == 'cc' && v.pref.is_prod {
 | 
				
			||||||
| 
						 | 
					@ -252,7 +260,10 @@ fn (mut v Builder) setup_ccompiler_options(ccompiler string) {
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if ccoptions.is_cc_gcc {
 | 
						if ccoptions.is_cc_gcc {
 | 
				
			||||||
		if ccoptions.debug_mode {
 | 
							if ccoptions.debug_mode {
 | 
				
			||||||
			debug_options = ['-g', '-no-pie']
 | 
								debug_options = ['-g']
 | 
				
			||||||
 | 
								if user_darwin_version > 9 {
 | 
				
			||||||
 | 
									debug_options << '-no-pie'
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		optimization_options = ['-O3', '-fno-strict-aliasing', '-flto']
 | 
							optimization_options = ['-O3', '-fno-strict-aliasing', '-flto']
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -334,7 +345,7 @@ fn (mut v Builder) setup_ccompiler_options(ccompiler string) {
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	// macOS code can include objective C  TODO remove once objective C is replaced with C
 | 
						// macOS code can include objective C  TODO remove once objective C is replaced with C
 | 
				
			||||||
	if v.pref.os == .macos || v.pref.os == .ios {
 | 
						if v.pref.os == .macos || v.pref.os == .ios {
 | 
				
			||||||
		if !ccoptions.is_cc_tcc {
 | 
							if !ccoptions.is_cc_tcc && !user_darwin_ppc {
 | 
				
			||||||
			ccoptions.source_args << '-x objective-c'
 | 
								ccoptions.source_args << '-x objective-c'
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue