mirror of
https://github.com/bluszcz/cutego.git
synced 2024-09-28 21:25:16 +03:00
58 lines
1.1 KiB
Go
58 lines
1.1 KiB
Go
package utils
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
"path/filepath"
|
|
"runtime"
|
|
)
|
|
|
|
func QT_MSYS2() bool {
|
|
return (os.Getenv("QT_MSYS2") == "true" || IsMsys2QtDir() || MSYSTEM() != "") && !MSYS_DOCKER()
|
|
}
|
|
|
|
func QT_MSYS2_DIR() string {
|
|
if dir, ok := os.LookupEnv("QT_MSYS2_DIR"); ok {
|
|
if QT_MSYS2_ARCH() == "amd64" {
|
|
return filepath.Join(dir, "mingw64")
|
|
}
|
|
return filepath.Join(dir, "mingw32")
|
|
}
|
|
prefix := "msys32"
|
|
if runtime.GOARCH == "amd64" {
|
|
prefix = "msys64"
|
|
}
|
|
suffix := "mingw32"
|
|
if QT_MSYS2_ARCH() == "amd64" {
|
|
suffix = "mingw64"
|
|
}
|
|
return fmt.Sprintf("C:\\%v\\%v", prefix, suffix)
|
|
}
|
|
|
|
func IsMsys2QtDir() bool {
|
|
return ExistsFile(filepath.Join(os.Getenv("QT_MSYS2_DIR"), "msys2.exe"))
|
|
}
|
|
|
|
func QT_MSYS2_ARCH() string {
|
|
if arch, ok := os.LookupEnv("QT_MSYS2_ARCH"); ok {
|
|
return arch
|
|
}
|
|
if MSYSTEM() == "MINGW64" {
|
|
return "amd64"
|
|
}
|
|
return "386"
|
|
}
|
|
|
|
func QT_MSYS2_STATIC() bool {
|
|
return os.Getenv("QT_MSYS2_STATIC") == "true"
|
|
}
|
|
|
|
func MSYSTEM() string {
|
|
return os.Getenv("MSYSTEM")
|
|
}
|
|
|
|
func MSYS_DOCKER() bool {
|
|
_, ok := os.LookupEnv("DOCKER_MACHINE_NAME")
|
|
return ok
|
|
}
|