fix minor issues + fix static linux docker image

This commit is contained in:
therecipe 2019-04-08 22:32:04 +02:00
parent be7a7d5463
commit 0b4efcc367
5 changed files with 26 additions and 5 deletions

View file

@ -43,6 +43,19 @@ func ParseFlags() bool {
os.Setenv("QT_API", api)
}
if api := utils.QT_API(""); api != "" {
if utils.RunCmdOptional(utils.GoList("{{.Dir}}", "github.com/therecipe/qt/internal/binding/files/docs/"+api), "get doc dir") == "" {
utils.Log.Errorf("invalid api version provided: '%v'", api)
fmt.Println("valid api versions are:")
if o := utils.RunCmdOptional(utils.GoList("'{{ join .Imports \"|\" }}'", "github.com/therecipe/qt/internal/binding/files/docs"), "get doc dir"); o != "" {
for _, v := range strings.Split(o, "|") {
fmt.Println(strings.TrimPrefix(strings.TrimSpace(strings.Replace(v, "'", "", -1)), "github.com/therecipe/qt/internal/binding/files/docs/"))
}
}
os.Exit(1)
}
}
if dir := *qt_dir; dir != utils.QT_DIR() {
os.Setenv("QT_DIR", dir)
}
@ -238,7 +251,7 @@ func virtual(arg []string, target, path string, writeCacheToHost bool, docker bo
switch system {
case "darwin":
case "linux":
if (strings.HasPrefix(target, "windows") || strings.HasPrefix(target, "ubports")) && strings.Contains(target, "_") {
if (strings.HasPrefix(target, "windows") || strings.HasPrefix(target, "ubports") || strings.HasPrefix(target, "linux")) && strings.Contains(target, "_") {
image = target
} else if docker && strings.Contains(target, "_") {
utils.Log.Fatalf("%v is currently not supported", target)
@ -396,6 +409,9 @@ func virtual(arg []string, target, path string, writeCacheToHost bool, docker bo
if strings.HasPrefix(args[i], "ubports_") {
args[i] = "ubports"
}
if strings.HasPrefix(args[i], "linux_") {
args[i] = "linux"
}
}
utils.RunCmd(exec.Command("docker", args...), fmt.Sprintf("deploy binary for %v on %v with docker", target, runtime.GOOS))

View file

@ -126,6 +126,7 @@ func Install(target string, docker, vagrant, failfast bool) {
println(msg)
failed = append(failed, strings.ToLower(module))
if strings.ToLower(module) == "core" || failfast {
utils.Log.Errorf("failed to install '%v'; aborting setup", strings.ToLower(module))
os.Exit(1)
}
}

View file

@ -43,7 +43,7 @@ func Prep() {
var suc bool
sPath := filepath.Join(utils.GOBIN(), app)
var dPath string
for _, pdPath := range filepath.SplitList("/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:" + filepath.Join(filepath.Join(runtime.GOROOT(), "bin"))) {
for _, pdPath := range filepath.SplitList("/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin") {
dPath = filepath.Join(pdPath, app)
if sPath == dPath {
continue

View file

@ -31,6 +31,7 @@ COPY --from=therecipe/qt:linux /opt/Qt/Licenses /opt/Qt/Licenses
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install build-essential libglib2.0-dev libglu1-mesa-dev libpulse-dev \
&& apt-get --no-install-recommends -qq -y install fontconfig libasound2 libegl1-mesa libnss3 libpci3 libxcomposite1 libxcursor1 libxi6 libxrandr2 libxtst6 && apt-get -qq clean
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install libfontconfig1-dev libfreetype6-dev libxrender-dev libxkbcommon-dev && apt-get -qq clean
RUN $GOPATH/bin/qtsetup prep
RUN $GOPATH/bin/qtsetup check

View file

@ -1,10 +1,13 @@
FROM ubuntu:16.04
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install ca-certificates git
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install dbus fontconfig libx11-6 libx11-xcb1
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install build-essential libglib2.0-dev libglu1-mesa-dev libpulse-dev \
&& apt-get --no-install-recommends -qq -y install fontconfig libasound2 libegl1-mesa libnss3 libpci3 libxcomposite1 libxcursor1 libxi6 libxrandr2 libxtst6
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install libdbus-1-dev libssl-dev
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install libdbus-1-dev libssl-dev libxkbcommon-dev
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install libfontconfig1-dev libfreetype6-dev libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libx11-xcb-dev libxcb-glx0-dev
RUN apt-get -qq update && apt-get --no-install-recommends -qq -y install libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxkbcommon-dev
RUN git clone -q --depth 1 -b 5.12 --recursive https://code.qt.io/qt/qt5.git /opt/qt5
RUN cd /opt/qt5 && ./configure -prefix /opt/Qt/5.12.0/gcc_64 -confirm-license -opensource -static -qt-zlib -qt-libpng -qt-libjpeg -dbus -opengl -optimize-size -skip qtwebengine -skip qtfeedback -nomake tests -nomake examples && make && make install
RUN cd /opt/qt5 && ./configure -prefix /opt/Qt/5.12.0/gcc_64 -confirm-license -opensource -static -qt-zlib -qt-libpng -qt-libjpeg -xcb -dbus-runtime -openssl-runtime -opengl -optimize-size -skip qtwebengine -skip qtfeedback -nomake tests -nomake examples && make && make install