From 845e1386f25736fe0db6df9bb1e9feac5ed6b5c6 Mon Sep 17 00:00:00 2001 From: Marko Semet Date: Sat, 1 Dec 2018 02:47:15 +0100 Subject: [PATCH] Gen raw platform/sdk --- RawPlatform-x84_64.yaml | 21 --------------------- RawPlattform/RawPlatform.yaml | 14 ++++++++++++++ RawPlattform/RawSdk.yaml | 14 ++++++++++++++ RawPlattform/add-libs.yaml | 17 +++++++++++++++++ RawPlattform/genLibs.py | 22 ++++++++++++++++++++++ RawPlattform/genPlatform.sh | 6 ++++++ RawPlattform/genSdk.sh | 6 ++++++ RawSdk-x84_64.yaml | 22 ---------------------- tools/add-libs.yaml | 9 --------- tools/{is-x86_64.yaml => is-any-x86.yaml} | 1 + tools/ld-links.py | 20 -------------------- tools/ld-update.yaml | 8 -------- 12 files changed, 80 insertions(+), 80 deletions(-) delete mode 100644 RawPlatform-x84_64.yaml create mode 100644 RawPlattform/RawPlatform.yaml create mode 100644 RawPlattform/RawSdk.yaml create mode 100644 RawPlattform/add-libs.yaml create mode 100755 RawPlattform/genLibs.py create mode 100755 RawPlattform/genPlatform.sh create mode 100644 RawPlattform/genSdk.sh delete mode 100644 RawSdk-x84_64.yaml delete mode 100644 tools/add-libs.yaml rename tools/{is-x86_64.yaml => is-any-x86.yaml} (89%) delete mode 100755 tools/ld-links.py delete mode 100644 tools/ld-update.yaml diff --git a/RawPlatform-x84_64.yaml b/RawPlatform-x84_64.yaml deleted file mode 100644 index 79cc342..0000000 --- a/RawPlatform-x84_64.yaml +++ /dev/null @@ -1,21 +0,0 @@ -build-runtime: true -writable-sdk: true - -id: de.marko10_000.winebarrels.RawPlatform -branch: wb-raw-uno - -sdk: org.gnome.Platform -runtime: org.gnome.Platform -runtime-version: 3.30 - - -add-extensions: - org.freedesktop.Platform.Compat.i386: - directory: lib/i386 - remove-after-build: false - bundle: false - version: 18.08 - -modules: - - tools/is-x86_64.yaml - - tools/add-libs.yaml diff --git a/RawPlattform/RawPlatform.yaml b/RawPlattform/RawPlatform.yaml new file mode 100644 index 0000000..07fb05f --- /dev/null +++ b/RawPlattform/RawPlatform.yaml @@ -0,0 +1,14 @@ +build-runtime: true +writable-sdk: true + +id: de.marko10_000.winebarrels.RawPlatform +branch: wb-raw-uno + +sdk: org.gnome.Platform +runtime: org.gnome.Platform +runtime-version: 3.30 + + +modules: + - ../tools/is-any-x86.yaml + - add-libs.yaml diff --git a/RawPlattform/RawSdk.yaml b/RawPlattform/RawSdk.yaml new file mode 100644 index 0000000..721b30a --- /dev/null +++ b/RawPlattform/RawSdk.yaml @@ -0,0 +1,14 @@ +build-runtime: true +writable-sdk: true + +id: de.marko10_000.winebarrels.RawSdk +branch: wb-raw-uno + +sdk: org.gnome.Sdk +runtime: org.gnome.Sdk +runtime-version: 3.30 + + +modules: + - ../tools/is-any-x86.yaml + - add-libs.yaml diff --git a/RawPlattform/add-libs.yaml b/RawPlattform/add-libs.yaml new file mode 100644 index 0000000..ff28645 --- /dev/null +++ b/RawPlattform/add-libs.yaml @@ -0,0 +1,17 @@ +name: addLibs +sources: + - type: archive + path: libs.tar.gz +buildsystem: simple +build-commands: + - mv lib lib32bit + - cp -ra lib32bit /usr + - echo /usr/lib32bit/ >> /etc/ld.so.conf + - echo /usr/lib32bit/i386-linux-gnu >> /etc/ld.so.conf +cleanup: + - /lib32bit/i386-linux-gnu/ruby + - "/lib32bit/python*" + - /lib32bit/locale + - "/lib32bit/perl*" +only-arches: + - x86_64 diff --git a/RawPlattform/genLibs.py b/RawPlattform/genLibs.py new file mode 100755 index 0000000..9775a96 --- /dev/null +++ b/RawPlattform/genLibs.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python3 + + +import os +import shutil +import subprocess +import tempfile +import sys + + +def getLibs(name, branch, arch): + buildDir = tempfile.gettempdir() + "/" + "".join(map(lambda x: hex(x)[2:], os.urandom(32))) + print("Build dir to get libs: " + buildDir) + try: + subprocess.check_call(["flatpak", "build-init", "--arch=" + arch, buildDir, "tmp.tmp.Tmp", name, name, branch]) + subprocess.check_call(["sh", "-c", "flatpak build " + repr(buildDir) + " tar -caz /usr/lib > libs.tar.gz"]) + finally: + shutil.rmtree(buildDir) + + +if __name__ == '__main__': + getLibs(sys.argv[1], sys.argv[2], "i386") diff --git a/RawPlattform/genPlatform.sh b/RawPlattform/genPlatform.sh new file mode 100755 index 0000000..0270a6f --- /dev/null +++ b/RawPlattform/genPlatform.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +flatpak install --user flathub org.gnome.Platform/i386/3.30 && flatpak update --user org.gnome.Platform/i386/3.30 +sh -c "cd `dirname $0`; ./genLibs.py org.gnome.Platform 3.30" +flatpak-builder --user --install-deps-from=flathub build `dirname $0`/RawPlatform.yaml +rm `dirname $0`/libs.tar.gz diff --git a/RawPlattform/genSdk.sh b/RawPlattform/genSdk.sh new file mode 100644 index 0000000..ed576b6 --- /dev/null +++ b/RawPlattform/genSdk.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +flatpak install --user flathub org.gnome.Sdk/i386/3.30 && flatpak update --user org.gnome.Sdk/i386/3.30 +sh -c "cd `dirname $0`; ./genLibs.py org.gnome.Sdk 3.30" +flatpak-builder --user --install-deps-from=flathub build `dirname $0`/RawPlatform.yaml +rm `dirname $0`/libs.tar.gz diff --git a/RawSdk-x84_64.yaml b/RawSdk-x84_64.yaml deleted file mode 100644 index 5283bca..0000000 --- a/RawSdk-x84_64.yaml +++ /dev/null @@ -1,22 +0,0 @@ -build-runtime: true -writable-sdk: true - -id: de.marko10_000.winebarrels.RawSdk -id-platform: de.marko10_000.winebarrels.RawPlatform -branch: wb-raw-uno - -sdk: org.gnome.Sdk -runtime: org.gnome.Sdk -runtime-version: 3.30 - - -add-extensions: - org.freedesktop.Platform.Compat.i386: - directory: lib/i386 - remove-after-build: false - bundle: false - version: 18.08 - -modules: - - tools/is-x86_64.yaml - - tools/add-libs.yaml diff --git a/tools/add-libs.yaml b/tools/add-libs.yaml deleted file mode 100644 index 3a7a625..0000000 --- a/tools/add-libs.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: addLibs -buildsystem: simple -build-commands: - - mkdir /usr/lib/i386 - - mkdir /usr/lib/gl_i386 - - echo /usr/lib/i386 >> /etc/ld.so.conf - - echo /usr/lib/gl-i386 >> /etc/ld.so.conf -only-arches: - - x86_64 diff --git a/tools/is-x86_64.yaml b/tools/is-any-x86.yaml similarity index 89% rename from tools/is-x86_64.yaml rename to tools/is-any-x86.yaml index 1b451ce..441b027 100644 --- a/tools/is-x86_64.yaml +++ b/tools/is-any-x86.yaml @@ -3,4 +3,5 @@ buildsystem: simple build-commands: - false skip-arches: + - i386 - x86_64 diff --git a/tools/ld-links.py b/tools/ld-links.py deleted file mode 100755 index ab23903..0000000 --- a/tools/ld-links.py +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env python3 -import os -import sys -import re - - -_match = re.compile("^(?P.*/[^.]*)\\.[0-9]*\\.so$") - - -def link_when_match(path): - tmp = _match.match(path) - if tmp: - tmp = tmp.groupdict() - os.symlink(path, tmp["path"] + ".so") - print("Link: " + tmp["path"] + ".so") - - -if __name__ == '__main__': - for i in os.listdir(sys.argv[1]): - link_when_match(os.path.join(sys.argv[1], i)) diff --git a/tools/ld-update.yaml b/tools/ld-update.yaml deleted file mode 100644 index ef8625a..0000000 --- a/tools/ld-update.yaml +++ /dev/null @@ -1,8 +0,0 @@ -name: ld-update -sources: - - type: file - path: ld-links.py -buildsystem: simple -build-commands: - - ls -la /usr/lib/i386 - - ./ld-links.py /usr/lib/i386