golang.org/x/build@v0.0.0-20240506185731-218518f32b70/env/corellium/android/files/clangwrap.go (about)

     1  // Copyright 2019 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  package main
     6  
     7  import (
     8  	"os"
     9  	"os/exec"
    10  )
    11  
    12  func main() {
    13  	args := os.Args[1:]
    14  	cmd := exec.Command("clang")
    15  	if os.Getenv("GOARCH") == "arm" {
    16  		pref := os.Getenv("PREFIX")
    17  		cmd.Args = append(cmd.Args, "-target", "armv7a-linux-androideabi", "-Qunused-arguments", "-Wl,-rpath-link="+pref+"/../home/arm-linux-androideabi/lib", "-L"+pref+"/../home/arm-linux-androideabi/lib", "-B"+pref+"/../home/arm-linux-androideabi/lib")
    18  	} else {
    19  		cmd.Args = append(cmd.Args, "-Qunused-arguments", "-fuse-ld=lld")
    20  	}
    21  	cmd.Args = append(cmd.Args, args...)
    22  	cmd.Stdout = os.Stdout
    23  	cmd.Stderr = os.Stderr
    24  	if err := cmd.Run(); err != nil {
    25  		if err, ok := err.(*exec.ExitError); ok {
    26  			os.Exit(err.ExitCode())
    27  		}
    28  		os.Exit(1)
    29  	}
    30  	os.Exit(0)
    31  }