From 40b6ecd547eeaa83142a436977703a4e714f5d53 Mon Sep 17 00:00:00 2001 From: Marko Semet Date: Sun, 11 Oct 2020 20:16:22 +0200 Subject: [PATCH] Update gtk 20.08 --- BasePlatform/v2/.gitignore | 6 +- BasePlatform/v2/Base-x86_64.yaml | 9 + BasePlatform/v2/RawPlatform-x86_64.yaml | 70 ++----- BasePlatform/v2/RawSdk-x86_64.yaml | 70 ++----- BasePlatform/v2/build.base.sh | 3 +- BasePlatform/v2/build.raw.sh | 117 +++++++----- BasePlatform/v2/platform/gcc-base.yaml | 79 +------- BasePlatform/v2/raw/cleanup.yaml | 5 + BasePlatform/v2/raw/docs-sdk.yaml | 12 -- BasePlatform/v2/raw/docs.yaml | 13 +- BasePlatform/v2/raw/libs.yaml | 2 +- BasePlatform/v2/raw/locale.yaml | 9 +- BasePlatform/v2/raw/move.sh | 15 ++ BasePlatform/v2/raw/sdk.yaml | 3 +- BasePlatform/v2/sdk/cross.yaml | 241 +++++++++++++++++------- BasePlatform/v2/sdk/gcc.patch | 12 -- BasePlatform/v2/sdk/mingw.yaml | 28 ++- BasePlatform/v2/sdk/removeinc.sh | 12 ++ BasePlatform/v2/versions.sh | 2 +- 19 files changed, 374 insertions(+), 334 deletions(-) create mode 100644 BasePlatform/v2/raw/cleanup.yaml delete mode 100644 BasePlatform/v2/raw/docs-sdk.yaml create mode 100644 BasePlatform/v2/raw/move.sh delete mode 100644 BasePlatform/v2/sdk/gcc.patch create mode 100644 BasePlatform/v2/sdk/removeinc.sh diff --git a/BasePlatform/v2/.gitignore b/BasePlatform/v2/.gitignore index fccbace..20ce061 100644 --- a/BasePlatform/v2/.gitignore +++ b/BasePlatform/v2/.gitignore @@ -1,3 +1,3 @@ -/docs.tar -/i386.tar -/locale.tar \ No newline at end of file +/docs.tar.gz +/i386.tar.gz +/locale.tar.gz \ No newline at end of file diff --git a/BasePlatform/v2/Base-x86_64.yaml b/BasePlatform/v2/Base-x86_64.yaml index fa1eff1..d6e4cec 100644 --- a/BasePlatform/v2/Base-x86_64.yaml +++ b/BasePlatform/v2/Base-x86_64.yaml @@ -20,6 +20,12 @@ inherit-extensions: - org.freedesktop.Platform.VAAPI.Intel - org.freedesktop.Platform.openh264 +build-options: + env: + - SOURCE_DATE_EPOCH=1 + - FLATPAK_BUILDER_N_JOBS=1 + - HOME=/tmp + modules: - name: test-arch buildsystem: simple @@ -29,7 +35,10 @@ modules: - x86_64 - platform/platform.yaml - sdk/sdk.yaml + - raw/cleanup.yaml +prepare-platform-commands: + - rm -rf /usr/lib64 cleanup-platform: - /include - "/lib/x86_64-linux-gnu/*.o" diff --git a/BasePlatform/v2/RawPlatform-x86_64.yaml b/BasePlatform/v2/RawPlatform-x86_64.yaml index f818ca2..23d7c12 100644 --- a/BasePlatform/v2/RawPlatform-x86_64.yaml +++ b/BasePlatform/v2/RawPlatform-x86_64.yaml @@ -6,13 +6,23 @@ branch: "v2" sdk: org.gnome.Platform runtime: org.gnome.Platform -runtime-version: "3.36" +runtime-version: "3.38" separate-locales: false + +inherit-extensions: + - org.freedesktop.Platform.GL + - org.freedesktop.Platform.GStreamer + - org.freedesktop.Platform.Icontheme + - org.freedesktop.Platform.openh264 + - org.freedesktop.Platform.Timezones + - org.freedesktop.Platform.VAAPI.Intel + - org.gtk.Gtk3theme + add-extensions: org.freedesktop.Platform.GL32: version: '1.4' - versions: 19.08;1.4 + versions: 20.08;1.4 directory: lib32/GL subdirectories: true no-autodownload: true @@ -21,55 +31,12 @@ add-extensions: merge-dirs: vulkan/icd.d;glvnd/egl_vendor.d;OpenCL/vendors;lib/dri;lib/d3d;vulkan/explicit_layer.d download-if: active-gl-driver enable-if: active-gl-driver - org.freedesktop.Platform.GL: - versions: 19.08;1.4 - version: "1.4" - directory: lib/x86_64-linux-gnu/GL - subdirectories: true - no-autodownload: true - autodelete: false - add-ld-path: lib - merge-dirs: vulkan/icd.d;glvnd/egl_vendor.d;OpenCL/vendors;lib/dri;lib/d3d;vulkan/explicit_layer.d - download-if: active-gl-driver - enable-if: active-gl-driver - org.freedesktop.Platform.Timezones: - versions: "19.08" - version: "19.08" - directory: share/zoneinfo - org.freedesktop.Platform.GStreamer: - versions: "19.08" - version: "19.08" - directory: lib/extensions/gstreamer-1.0 - subdirectories: true - no-autodownload: true - org.freedesktop.Platform.Icontheme: - versions: "19.08;1.0" - version: "1.0" - directory: share/runtime/share/icons - subdirectories: true - no-autodownload: true - org.gtk.Gtk3theme: - versions: "19.08;3.22" - version: "3.22" - directory: share/runtime/share/themes - subdirectories: true - subdirectory-suffix: gtk-3.0 - no-autodownload: true - download-if: active-gtk-theme - org.freedesktop.Platform.VAAPI.Intel: - versions: "19.08" - version: "19.08" - directory: lib/x86_64-linux-gnu/dri/intel-vaapi-driver - autodelete: false - no-autodownload: true - add-ld-path: lib - download-if: have-intel-gpu - org.freedesktop.Platform.openh264: - versions: "2.0" - version: "2.0" - directory: lib/x86_64-linux-gnu/openh264 - add-ld-path: extra - autodelete: false + +build-options: + env: + - SOURCE_DATE_EPOCH=1 + - FLATPAK_BUILDER_N_JOBS=1 + - HOME=/tmp modules: - name: test-arch @@ -79,6 +46,7 @@ modules: skip-arches: - x86_64 - raw/platform.yaml + - raw/cleanup.yaml cleanup: - /lib/debug diff --git a/BasePlatform/v2/RawSdk-x86_64.yaml b/BasePlatform/v2/RawSdk-x86_64.yaml index 8fd9137..92f8838 100644 --- a/BasePlatform/v2/RawSdk-x86_64.yaml +++ b/BasePlatform/v2/RawSdk-x86_64.yaml @@ -6,13 +6,23 @@ branch: "v2" sdk: org.gnome.Sdk runtime: org.gnome.Sdk -runtime-version: "3.36" +runtime-version: "3.38" separate-locales: false +inherit-extensions: + - org.freedesktop.Platform.GL + - org.freedesktop.Platform.GStreamer + - org.freedesktop.Platform.Icontheme + - org.freedesktop.Platform.openh264 + - org.freedesktop.Platform.Timezones + - org.freedesktop.Platform.VAAPI.Intel + - org.freedesktop.Sdk.Extension + - org.gtk.Gtk3theme + add-extensions: org.freedesktop.Platform.GL32: version: '1.4' - versions: 19.08;1.4 + versions: 20.08;1.4 directory: lib32/GL subdirectories: true no-autodownload: true @@ -21,55 +31,12 @@ add-extensions: merge-dirs: vulkan/icd.d;glvnd/egl_vendor.d;OpenCL/vendors;lib/dri;lib/d3d;vulkan/explicit_layer.d download-if: active-gl-driver enable-if: active-gl-driver - org.freedesktop.Platform.GL: - versions: 19.08;1.4 - version: "1.4" - directory: lib/x86_64-linux-gnu/GL - subdirectories: true - no-autodownload: true - autodelete: false - add-ld-path: lib - merge-dirs: vulkan/icd.d;glvnd/egl_vendor.d;OpenCL/vendors;lib/dri;lib/d3d;vulkan/explicit_layer.d - download-if: active-gl-driver - enable-if: active-gl-driver - org.freedesktop.Platform.Timezones: - versions: "19.08" - version: "19.08" - directory: share/zoneinfo - org.freedesktop.Platform.GStreamer: - versions: "19.08" - version: "19.08" - directory: lib/extensions/gstreamer-1.0 - subdirectories: true - no-autodownload: true - org.freedesktop.Platform.Icontheme: - versions: "19.08;1.0" - version: "1.0" - directory: share/runtime/share/icons - subdirectories: true - no-autodownload: true - org.gtk.Gtk3theme: - versions: "19.08;3.22" - version: "3.22" - directory: share/runtime/share/themes - subdirectories: true - subdirectory-suffix: gtk-3.0 - no-autodownload: true - download-if: active-gtk-theme - org.freedesktop.Platform.VAAPI.Intel: - versions: "19.08" - version: "19.08" - directory: lib/x86_64-linux-gnu/dri/intel-vaapi-driver - autodelete: false - no-autodownload: true - add-ld-path: lib - download-if: have-intel-gpu - org.freedesktop.Platform.openh264: - versions: "2.0" - version: "2.0" - directory: lib/x86_64-linux-gnu/openh264 - add-ld-path: extra - autodelete: false + +build-options: + env: + - SOURCE_DATE_EPOCH=1 + - FLATPAK_BUILDER_N_JOBS=1 + - HOME=/tmp modules: - name: test-arch @@ -80,6 +47,7 @@ modules: - x86_64 - raw/platform.yaml - raw/sdk.yaml + - raw/cleanup.yaml cleanup: - /lib/debug diff --git a/BasePlatform/v2/build.base.sh b/BasePlatform/v2/build.base.sh index a62c875..a028d6a 100755 --- a/BasePlatform/v2/build.base.sh +++ b/BasePlatform/v2/build.base.sh @@ -1,5 +1,4 @@ #! /usr/bin/env bash # [] -CONF_PATH="$(dirname "$0")" && -exec "$CONF_PATH/../../tools/build_when_required.sh" "$CONF_PATH/Base-x86_64.yaml" "x86_64" "$1" "$2" \ No newline at end of file +exec "$(dirname "$0")/../../tools/build_when_required.sh" "$(dirname "$0")/Base-x86_64.yaml" "x86_64" "$1" "$2" \ No newline at end of file diff --git a/BasePlatform/v2/build.raw.sh b/BasePlatform/v2/build.raw.sh index 1ab74bc..e46d197 100755 --- a/BasePlatform/v2/build.raw.sh +++ b/BasePlatform/v2/build.raw.sh @@ -1,56 +1,77 @@ #! /usr/bin/env bash +# Args: [] -CONF_PATH=`dirname $0` +CONF_PATH="$(dirname "$0")" if [ -z "$BUILD_DIR_64BIT" ]; then BUILD_DIR_64BIT=build64 fi -source "$(dirname "$0")/versions.sh" && -if [ -z "$2" ]; then - if [ -z "$NO_PLATFORM" ]; then - if [ -z "$NO_REBUILD_LOCALE" ]; then - echo EXPORT: runtime/org.gnome.Platform.Compat.i386/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Platform.Compat.i386/x86_64/$GNOME_VERSION > "$CONF_PATH/i386.tar" || exit 1 - echo EXPORT: runtime/org.gnome.Platform.Locale/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Platform.Locale/x86_64/$GNOME_VERSION > "$CONF_PATH/locale.tar" || exit 2 - fi - echo BUILD: Runtime - flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 "$BUILD_DIR_64BIT" "$CONF_PATH/RawPlatform-x86_64.yaml" || exit 3 - fi - if [ -z "$NO_SDK" ]; then - if [ -z "$NO_REBUILD_LOCALE" ]; then - echo EXPORT: runtime/org.gnome.Sdk.Compat.i386/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Sdk.Compat.i386/x86_64/$GNOME_VERSION > "$CONF_PATH/i386.tar" || exit 1 - echo EXPORT: runtime/org.gnome.Sdk.Locale/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Sdk.Locale/x86_64/$GNOME_VERSION > "$CONF_PATH/locale.tar" || exit 4 - echo EXPORT: runtime/org.gnome.Sdk.Docs/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Sdk.Docs/x86_64/$GNOME_VERSION > "$CONF_PATH/docs.tar" || exit 5 - fi - echo BUILD: Sdk - flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 "$BUILD_DIR_64BIT" "$CONF_PATH/RawSdk-x86_64.yaml" || exit 6 - fi -else - if [ -z "$NO_PLATFORM" ]; then - if [ -z "$NO_REBUILD_LOCALE" ]; then - echo EXPORT: runtime/org.gnome.Platform.Compat.i386/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Platform.Compat.i386/x86_64/$GNOME_VERSION > "$CONF_PATH/i386.tar" || exit 1 - echo EXPORT: runtime/org.gnome.Platform.Locale/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Platform.Locale/x86_64/$GNOME_VERSION > "$CONF_PATH/locale.tar" || exit 2 - fi - echo BUILD: Runtime - flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 --gpg-sign=winebarrels@marko10-000.de "--repo=$2" "$BUILD_DIR_64BIT" "$CONF_PATH/RawPlatform-x86_64.yaml" || exit 3 - fi - if [ -z "$NO_SDK" ]; then - if [ -z "$NO_REBUILD_LOCALE" ]; then - echo EXPORT: runtime/org.gnome.Sdk.Compat.i386/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Sdk.Compat.i386/x86_64/$GNOME_VERSION > "$CONF_PATH/i386.tar" || exit 1 - echo EXPORT: runtime/org.gnome.Sdk.Locale/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Sdk.Locale/x86_64/$GNOME_VERSION > "$CONF_PATH/locale.tar" || exit 4 - echo EXPORT: runtime/org.gnome.Sdk.Docs/x86_64/$GNOME_VERSION - ostree export --repo ~/.local/share/flatpak/repo runtime/org.gnome.Sdk.Docs/x86_64/$GNOME_VERSION > "$CONF_PATH/docs.tar" || exit 5 - fi - echo BUILD: Sdk - flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 --gpg-sign=winebarrels@marko10-000.de "--repo=$2" "$BUILD_DIR_64BIT" "$CONF_PATH/RawSdk-x86_64.yaml" || exit 6 - fi +if [ -z "$FLATPKAK_REPO" ]; then + FLATPKAK_REPO="$(echo ~/.local/share/flatpak/repo)" fi + +local_export_ostree() { + # Args: + ( + while read i + do + IFS=':' read i1 i2 <<< "$i" + if [ "$1" == "$i2" ] + then + echo EXPORT: "$i2" + ostree export --repo "$FLATPKAK_REPO" "$i2" | pigz > "$2" || exit 1 + exit 0 + fi + done <<< "$(ostree refs --repo "$FLATPKAK_REPO")" + exit 1 + ) || exit 1 +} + +locals_platform() { + if [ -z "$NO_REBUILD_LOCALE" ]; then + local_export_ostree runtime/org.gnome.Platform.Compat.i386/x86_64/$GNOME_VERSION "$CONF_PATH/i386.tar.gz" || exit 1 + local_export_ostree runtime/org.gnome.Platform.Locale/x86_64/$GNOME_VERSION "$CONF_PATH/locale.tar.gz" || exit 1 + fi +} + +locals_sdk() { + if [ -z "$NO_REBUILD_LOCALE" ]; then + local_export_ostree runtime/org.gnome.Sdk.Compat.i386/x86_64/$GNOME_VERSION "$CONF_PATH/i386.tar.gz" || exit 1 + local_export_ostree runtime/org.gnome.Sdk.Locale/x86_64/$GNOME_VERSION "$CONF_PATH/locale.tar.gz" || exit 1 + local_export_ostree runtime/org.gnome.Sdk.Docs/x86_64/$GNOME_VERSION "$CONF_PATH/docs.tar.gz" || exit 1 + fi +} + +source "$(dirname "$0")/versions.sh" && +TMP_DIR="$(mktemp -d)/." && +cp -ra "$CONF_PATH/." "$TMP_DIR" && +CONF_PATH="$TMP_DIR" && +( + if [ -z "$2" ]; then + if [ -z "$NO_PLATFORM" ]; then + locals_platform && + echo BUILD: Runtime && + flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 "$BUILD_DIR_64BIT" "$CONF_PATH/RawPlatform-x86_64.yaml" || exit 3 + fi + if [ -z "$NO_SDK" ]; then + locals_sdk && + echo BUILD: Sdk && + flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 "$BUILD_DIR_64BIT" "$CONF_PATH/RawSdk-x86_64.yaml" || exit 6 + fi + else + if [ -z "$NO_PLATFORM" ]; then + locals_platform && + echo BUILD: Runtime && + flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 --gpg-sign=winebarrels@marko10-000.de "--repo=$2" "$BUILD_DIR_64BIT" "$CONF_PATH/RawPlatform-x86_64.yaml" || exit 3 + fi + if [ -z "$NO_SDK" ]; then + locals_sdk && + echo BUILD: Sdk && + flatpak-builder $1 --rebuild-on-sdk-change --arch=x86_64 --gpg-sign=winebarrels@marko10-000.de "--repo=$2" "$BUILD_DIR_64BIT" "$CONF_PATH/RawSdk-x86_64.yaml" || exit 6 + fi + fi +) +RESULT="$!" +rm -rf "$(realpath "$TMP_DIR")" +exit "$RESULT" \ No newline at end of file diff --git a/BasePlatform/v2/platform/gcc-base.yaml b/BasePlatform/v2/platform/gcc-base.yaml index 06ec9c7..60220e0 100644 --- a/BasePlatform/v2/platform/gcc-base.yaml +++ b/BasePlatform/v2/platform/gcc-base.yaml @@ -1,76 +1,11 @@ name: gcc-base-meta modules: - # GCC libs - - name: cross-gmp - sources: - - type: archive - url: https://ftp.gnu.org/gnu/gmp/gmp-6.2.0.tar.lz - sha256: 3f33f127bcb6b2c3601676cd3281df45824b148cbf688b73c0fc8248793667d9 - config-opts: - - --disable-static - - --enable-assert - - --enable-cxx - - --enable-fat - - --enable-maintainer-mode - - --enable-shared - - --with-gnu-ld - builddir: true - build-options: - cflags: -flto - cxxflags: -flto - post-install: - - make -j$FLATPAK_BUILDER_N_JOBS check || true - - name: cross-mpfr - sources: - - type: archive - url: https://ftp.gnu.org/gnu/mpfr/mpfr-4.0.2.tar.xz - sha256: 1d3be708604eae0e42d578ba93b390c2a145f17743a744d8f3f8c2ad5855a38a - config-opts: - - --disable-static - - --enable-assert - - --enable-dependency-tracking - - --enable-maintainer-mode - - --enable-shared-cache - - --enable-shared - - --enable-thread-safe - - --enable-warnings - - --with-gnu-ld - builddir: true - build-options: - cflags: -flto - cxxflags: -flto - post-install: - - make -j$FLATPAK_BUILDER_N_JOBS check || true - - name: cross-mpc - sources: - - type: archive - url: https://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz - sha256: 6985c538143c1208dcb1ac42cedad6ff52e267b47e5f970183a3e75125b43c2e - config-opts: - - --disable-static - - --enable-dependency-tracking - - --enable-maintainer-mode - - --enable-shared - - --with-gnu-ld - builddir: true - build-options: - cflags: -flto - cxxflags: -flto - post-install: - - make -j$FLATPAK_BUILDER_N_JOBS check || true - - name: cross-libs-fix1 - buildsystem: simple - build-commands: - - libtool --finish /usr/lib/x86_64-linux-gnu - only-arches: - - x86_64 - # Binutils - name: mingw-binutils-32bit sources: &BINUTILS_SOURCES - type: archive - url: https://ftp.gnu.org/gnu/binutils/binutils-2.34.tar.lz - sha256: 5cec79823ef596817aa57a3f470a1afa9827bf14e3583a4e445dc046cc38d29c + url: https://ftp.gnu.org/gnu/binutils/binutils-2.35.1.tar.lz + sha256: b197db77e8e42ba04b968c5958e2cb1f8051537be09966b5bd37a1fe4f0a06a8 config-opts: - --target=i686-w64-mingw32 - --disable-werror @@ -130,7 +65,7 @@ modules: post-install: - make -k -j$FLATPAK_BUILDER_N_JOBS check || true cleanup-platform: - - /bin + - "*" only-arches: - x86_64 @@ -138,9 +73,13 @@ modules: - name: cross-prepare-rsync sources: - type: archive - url: https://download.samba.org/pub/rsync/src/rsync-3.1.3.tar.gz - sha256: 55cc554efec5fdaad70de921cd5a5eeb6c29a95524c715f3bbf849235b0800c0 + url: https://download.samba.org/pub/rsync/src/rsync-3.2.3.tar.gz + sha256: becc3c504ceea499f4167a260040ccf4d9f2ef9499ad5683c179a697146ce50e no-autogen: true + config-opts: + - --disable-xxhash + - --disable-zstd + - --disable-lz4 cleanup-platform: - "*" - name: cross-prepare-glibc diff --git a/BasePlatform/v2/raw/cleanup.yaml b/BasePlatform/v2/raw/cleanup.yaml new file mode 100644 index 0000000..83eb22f --- /dev/null +++ b/BasePlatform/v2/raw/cleanup.yaml @@ -0,0 +1,5 @@ +name: cleanup-python +buildsystem: simple +build-commands: + - find /usr/ -type f \( -iname '*.pyc' -or -iname '*.pyo' \) -delete + - find /usr/ -type d -name __pycache__ -delete \ No newline at end of file diff --git a/BasePlatform/v2/raw/docs-sdk.yaml b/BasePlatform/v2/raw/docs-sdk.yaml deleted file mode 100644 index 3363b3b..0000000 --- a/BasePlatform/v2/raw/docs-sdk.yaml +++ /dev/null @@ -1,12 +0,0 @@ -name: docs-sdk -sources: - - type: archive - path: ../docs.tar - dest: docs -buildsystem: simple -build-commands: - - rm -v /usr/share/ri && cp -rav docs/ri /usr/share && rm -rvf docs/ri - - rm -v /usr/share/cmake-3.15/Help && mkdir /usr/share/cmake-3.15/Help && cp -rav docs/cmake-3.15/* /usr/share/cmake-3.15/Help && rm -rvf docs/cmake-3.15 - - cp -rav docs /usr/share/runtime -only-arches: - - x86_64 \ No newline at end of file diff --git a/BasePlatform/v2/raw/docs.yaml b/BasePlatform/v2/raw/docs.yaml index e37a0e0..da151d2 100644 --- a/BasePlatform/v2/raw/docs.yaml +++ b/BasePlatform/v2/raw/docs.yaml @@ -1,13 +1,14 @@ -name: docs +name: docs-sdk sources: - type: archive - path: ../docs.tar + path: ../docs.tar.gz dest: docs + - type: file + path: move.sh buildsystem: simple build-commands: - - rm -v /usr/share/doc && cp -rav docs/doc /usr/share && rm -rvf docs/doc - - rm -v /usr/share/info && cp -rav docs/info /usr/share && rm -rvf docs/info - - rm -v /usr/share/man && cp -rav docs/man /usr/share && rm -rvf docs/man - - rm -v /usr/share/gtk-doc/html && cp -rav docs/gtk-doc/html /usr/share/gtk-doc && rm -rvf docs/gtk-doc + - cp -ra docs /usr/share/runtime + - chmod +x ./move.sh && ./move.sh /usr/share/runtime/docs + - rm -rf /usr/share/runtime/runtime only-arches: - x86_64 \ No newline at end of file diff --git a/BasePlatform/v2/raw/libs.yaml b/BasePlatform/v2/raw/libs.yaml index 9d57d9d..22994cc 100644 --- a/BasePlatform/v2/raw/libs.yaml +++ b/BasePlatform/v2/raw/libs.yaml @@ -1,7 +1,7 @@ name: libs sources: - type: archive - path: ../i386.tar + path: ../i386.tar.gz dest: lib32 buildsystem: simple build-commands: diff --git a/BasePlatform/v2/raw/locale.yaml b/BasePlatform/v2/raw/locale.yaml index b62c4c8..1c78654 100644 --- a/BasePlatform/v2/raw/locale.yaml +++ b/BasePlatform/v2/raw/locale.yaml @@ -1,13 +1,14 @@ name: locales sources: - type: archive - path: ../locale.tar + path: ../locale.tar.gz dest: locale + - type: file + path: ./move.sh buildsystem: simple build-commands: - - cp -rav locale /usr/share/runtime - - cd /usr/share/locale && for i in *; do if [ -L "$i" ]; then (mkdir "_$i"; cp -rav $i/* "_$i"; rm -v "$i"; mv -v "_$i" "$i"); fi done - - cd /usr/lib/locale && for i in *; do if [ -L "$i" ]; then (mkdir "_$i"; cp -rav $i/* "_$i"; rm -v "$i"; mv -v "_$i" "$i"); fi done + - cp -ra locale /usr/share/runtime + - chmod +x ./move.sh && ./move.sh /usr/share/runtime/locale - rm -rf /usr/share/runtime/locale only-arches: - x86_64 diff --git a/BasePlatform/v2/raw/move.sh b/BasePlatform/v2/raw/move.sh new file mode 100644 index 0000000..fabcc1d --- /dev/null +++ b/BasePlatform/v2/raw/move.sh @@ -0,0 +1,15 @@ +#! /usr/bin/env bash + +find /usr -type l -print | while read i +do + target="$(realpath -ms "$i")" && + source="$(realpath -mP "$i")" && + if [ "$(expr substr "$target" 1 "${#1}")" != "$1" ] + then + if [ "$(expr substr "$source" 1 "${#1}")" = "$1" ] + then + rm "$target" && + cp -raf "$source" "$target" || echo "INGORED: $i" + fi + fi +done \ No newline at end of file diff --git a/BasePlatform/v2/raw/sdk.yaml b/BasePlatform/v2/raw/sdk.yaml index 2c1371b..23b8448 100644 --- a/BasePlatform/v2/raw/sdk.yaml +++ b/BasePlatform/v2/raw/sdk.yaml @@ -1,5 +1,4 @@ name: meta-sdk modules: - docs.yaml - - fix-libs.yaml - - docs-sdk.yaml \ No newline at end of file + - fix-libs.yaml \ No newline at end of file diff --git a/BasePlatform/v2/sdk/cross.yaml b/BasePlatform/v2/sdk/cross.yaml index 4cd3b1e..3046d85 100644 --- a/BasePlatform/v2/sdk/cross.yaml +++ b/BasePlatform/v2/sdk/cross.yaml @@ -4,15 +4,27 @@ only-arches: modules: - name: cross-gcc-pass1 sources: &GCC_SOURCES - - &GCC_SOURCE - type: archive - url: https://ftp.gnu.org/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.xz - sha256: 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1 - - type: patch - path: ./gcc.patch + - type: archive + url: https://ftp.gnu.org/gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz + sha256: b8dd4368bb9c7f0b98188317ee0254dd8cc99d1e3a18d0ff146c855fe16c1d8c + - type: archive + url: https://ftp.gnu.org/gnu/gmp/gmp-6.2.0.tar.lz + sha256: 3f33f127bcb6b2c3601676cd3281df45824b148cbf688b73c0fc8248793667d9 + dest: gmp + - type: archive + url: https://ftp.gnu.org/gnu/mpfr/mpfr-4.1.0.tar.xz + sha256: 0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f + dest: mpfr + - type: archive + url: https://ftp.gnu.org/gnu/mpc/mpc-1.2.0.tar.gz + sha256: e90f2d99553a9c19911abdb4305bf8217106a957e3994436428572c8dfe8fda6 + dest: mpc + - type: file + path: removeinc.sh - type: shell commands: - - ln -s /usr/bin/cpp /lib/cpp + - sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + - sed -i 's@m64=\.\./lib64@m64=\.\./lib/x86_64-linux-gnu@' gcc/config/i386/t-linux64 config-opts: - --host=x86_64-unknown-linux - --build=x86_64-unknown-linux @@ -45,10 +57,9 @@ modules: build-options: no-debuginfo: true no-debuginfo-compression: true - post-install: - - rm -v /lib/cpp cleanup-platform: &GCC_CLEANUP_PLATFORM - /bin + - /lib/gcc - /libexec/gcc - /share - name: cross-delete-old-gcc @@ -60,8 +71,8 @@ modules: sources: &GLIBC_SOURCE_32BIT - &GLBIC_SOURCE type: archive - url: https://ftp.gnu.org/gnu/glibc/glibc-2.30.tar.xz - sha256: e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af + url: https://ftp.gnu.org/gnu/glibc/glibc-2.32.tar.xz + sha256: 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836 - type: shell commands: - echo slibdir=/usr/lib32 >> configparms @@ -90,55 +101,107 @@ modules: make-install-args: - install_root=/usr/tmp - install - cflags: -D_FORTIFY_SOURCE=0 -O3 + cflags: -O3 cflags-override: true - cxxflags: -D_FORTIFY_SOURCE=0 -O3 + cxxflags: -O3 cxxflags-override: true + no-debuginfo: true + no-debuginfo-compression: true post-install: &GLIBC_POST_INSTALL_32BIT - rm -rvf /usr/tmp/usr/bin /usr/tmp/usr/sbin /usr/tmp/usr/lib /usr/tmp/usr/share - find "/usr/tmp/usr/include" -type f -not -name '*-32.h' -delete - cp -raPv /usr/tmp/usr/* /usr/ && rm -rf /usr/tmp builddir: true - - name: cross-glibc-64bit-pass1 - sources: &GLIBC_SOURCE_64BIT - - *GLBIC_SOURCE - - type: shell - commands: - - echo slibdir=/usr/lib/x86_64-linux-gnu >> configparms - - echo rtlddir=/usr/lib/x86_64-linux-gnu >> configparms - - echo complocaledir=/usr/lib/locale >> configparms - config-opts: &GLIBC_CONFIG_64BIT - - --host=x86_64-unknown-linux - - --build=x86_64-unknown-linux - - --target=x86_64-unknown-linux - - --disable-werror - - --enable-bind-now - - --enable-cet - - --enable-multi-arch - - --enable-obsolete-nsl - - --enable-shared - - --enable-stack-protector=strong - - --enable-stackguard-randomization - - --enable-static - - --enable-static-pie - - --enable-tunables - - is_selinux_enabled=false - build-options: &GLIBC_BUILD_OPTIONS_64BIT + - name: cross-fix-static-coreutils + sources: + - type: archive + url: https://ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz + sha256: 4458d8de7849df44ccab15e16b1548b285224dbba5f08fac070c1c0e0bcc4cfa + builddir: true + config-opts: + - --enable-single-binary=shebangs + build-options: + make-args: + - SHARED=0 make-install-args: - - install_root=/usr/tmp + - DESTDIR=/usr/tmp - install - cflags: -D_FORTIFY_SOURCE=0 -O3 + cflags: -static + cxxflags: -static + post-install: + - cp /usr/bin/cp . && ./cp -rav /usr/tmp/usr/. /usr/. && rm -rf /usr/tmp + modules: + - name: cross-glibc-64bit-pass0 + sources: &GLIBC_SOURCE_64BIT + - *GLBIC_SOURCE + - type: shell + commands: + - echo slibdir=/usr/lib/x86_64-linux-gnu >> configparms + - echo rtlddir=/usr/lib/x86_64-linux-gnu >> configparms + - echo complocaledir=/usr/lib/locale >> configparms + config-opts: &GLIBC_CONFIG_64BIT + - --host=x86_64-unknown-linux + - --build=x86_64-unknown-linux + - --target=x86_64-unknown-linux + - --disable-werror + - --enable-bind-now + - --enable-cet + - --enable-multi-arch + - --enable-obsolete-nsl + - --enable-shared + - --enable-stack-protector=strong + - --enable-stackguard-randomization + - --enable-static + - --enable-static-pie + - --enable-tunables + - is_selinux_enabled=false + builddir: true + build-options: + make-install-args: + - DESTDIR=/usr/tmp + - install + cflags: -O3 + cflags-override: true + cxxflags: -O3 + cxxflags-override: true + no-debuginfo: true + no-debuginfo-compression: true + post-install: + - cp -rav /usr/tmp/usr/lib/x86_64-linux-gnu/*.a /usr/lib/x86_64-linux-gnu/ && rm -rfv /usr/tmp + - name: cross-lib64-merge + buildsystem: simple + build-commands: + - find /usr/lib64 -type f -print | xargs -I{} sh -c 'ln -s "$(readlink -f "/usr/lib/x86_64-linux-gnu/{}")" "{}"' + - rm -rfv /usr/lib64 && ln -s lib/x86_64-linux-gnu /usr/lib64 + - name: cross-glibc-64bit-pass1 + sources: *GLIBC_SOURCE_64BIT + config-opts: *GLIBC_CONFIG_64BIT + builddir: true + build-options: &GLIBC_BUILD_OPTIONS_64BIT + make-install-args: + - DESTDIR=/usr/tmp + - install + cflags: -O3 cflags-override: true - cxxflags: -D_FORTIFY_SOURCE=0 -O3 + cxxflags: -O3 cxxflags-override: true + no-debuginfo: true + no-debuginfo-compression: true post-install: &GLIBC_POST_INSTALL_64BIT - mv -v /usr/tmp/usr/sbin/* /usr/tmp/usr/bin && rm -rf /usr/tmp/usr/sbin - cp -rav /usr/tmp/usr/. /usr/ && cp -rav /usr/tmp/etc/. /etc/ && rm -rfv /usr/tmp - builddir: true + - name: cross-pre-gcc-clean + sources: + - type: file + path: removeinc.sh + buildsystem: simple + build-commands: + - chmod +x removeinc.sh && ./removeinc.sh /usr/lib/x86_64-linux-gnu/include + - chmod +x removeinc.sh && ./removeinc.sh /usr/lib32/include - name: cross-test buildsystem: simple build-commands: &TESTS - - echo "int main() { return 0; }" > test.c + - echo -e '#include \nint main() { return 0; }' > test.c - gcc test.c - ./a.out - gcc -m64 test.c @@ -149,24 +212,63 @@ modules: env: PATH: "/usr/tools/usr/bin:/usr/bin" - name: cross-stdcpp-pass - sources: - - *GCC_SOURCE - - type: shell - commands: - - sed -e '/m64=/s/lib64/lib/' -i.orig gcc/config/i386/t-linux64 + sources: *GCC_SOURCES config-opts: - --host=x86_64-unknown-linux - --build=x86_64-unknown-linux - --target=x86_64-unknown-linux - - --prefix=/usr - - --disable-werror + - --disable-nls + - --enable-lto - --enable-multilib - - --enable-shared - - --enable-static subdir: libstdc++-v3 builddir: true + build-options: + cflags-override: true + cxxflags-override: true + no-debuginfo: true + no-debuginfo-compression: true post-install: - make -j$FLATPAK_BUILDER_N_JOBS check + - name: cross-autogen + sources: + - type: archive + url: https://ftp.gnu.org/gnu/autogen/rel5.18.16/autogen-5.18.16.tar.xz + sha256: f8a13466b48faa3ba99fe17a069e71c9ab006d9b1cfabe699f8c60a47d5bb49a + - type: shell + commands: + - sed -i 's@def_bf\[ MAXNAMELEN@def_bf\[ MAXNAMELEN + 4@' getdefs/getdefs.c + config-opts: + - --disable-dependency-tracking + - --disable-error-on-warning + cleanup: + - "*" + modules: + - name: cross-guile2 + sources: + - type: archive + url: https://ftp.gnu.org/gnu/guile/guile-2.2.7.tar.lz + sha256: 5de7c4d28fa25c232512a4d1e76e6152a721dde568a6b1310971e1ea49e18c46 + config-opts: + - --disable-error-on-warning + - --disable-shared + - --enable-static + builddir: true + build-options: + cflags: -DHAVE_GC_IS_HEAP_PTR -DHAVE_GC_MOVE_DISAPPEARING_LINK + cleanup: + - "*" + modules: + - name: cross-bdw-gc + sources: + - type: archive + url: https://github.com/ivmai/bdwgc/releases/download/v8.0.4/gc-8.0.4.tar.gz + sha256: 436a0ddc67b1ac0b0405b61a9675bca9e075c8156f4debd1d06f3a56c7cd289d + config-opts: + - --disable-shared + - --enable-static + - --enable-threads=posix + cleanup: + - "*" - name: cross-gcc-pass2 sources: *GCC_SOURCES config-opts: &GCC_CONFIG @@ -177,7 +279,7 @@ modules: - --enable-bootstrap - --enable-default-pie - --enable-default-ssp - - --enable-languages=c,c++,lto + - --enable-languages=c,c++,d,lto - --enable-libstdcxx-time=yes - --enable-libstdcxx-filesystem-ts=yes - --enable-linker-build-id @@ -200,13 +302,13 @@ modules: no-debuginfo: true no-debuginfo-compression: true post-install: &GCC_POST_INSTALL - - make -j$FLATPAK_BUILDER_N_JOBS check || true - - rm -v /lib/cpp + - cp -rad /usr/tmp/usr/* /usr/ && rm -rf /usr/tmp # Fixes strange bug + - chmod +x ../removeinc.sh && ../removeinc.sh /usr/lib/x86_64-linux-gnu/include + - chmod +x ../removeinc.sh && ../removeinc.sh /usr/lib32/include cleanup-platform: *GCC_CLEANUP_PLATFORM - name: cross-test2 buildsystem: simple build-commands: - - cp -rad /usr/tmp/usr/* /usr/ && rm -rf /usr/tmp # Fixes strange bug - echo "int main() { return 0; }" > test.c - gcc test.c - ./a.out @@ -229,24 +331,37 @@ modules: - name: cross-gcc sources: *GCC_SOURCES config-opts: *GCC_CONFIG - build-options: *GCC_BUILD_OPTIONS + build-options: + make-install-args: + - DESTDIR=/usr/tmp + - install builddir: true post-install: *GCC_POST_INSTALL cleanup-platform: *GCC_CLEANUP_PLATFORM - - name: cross-move-gcc - buildsystem: simple - build-commands: - - cp -rad /usr/tmp/usr/* /usr/ && rm -rf /usr/tmp # Fixes strange bug - name: cross-glibc-32bit sources: *GLIBC_SOURCE_32BIT config-opts: *GLIBC_CONFIG_32BIT - build-options: *GLIBC_BUILD_OPTIONS_32BIT + build-options: + make-install-args: + - install_root=/usr/tmp + - install + cflags: -O3 + cflags-override: true + cxxflags: -O3 + cxxflags-override: true post-install: *GLIBC_POST_INSTALL_32BIT builddir: true - name: cross-glibc-64bit sources: *GLIBC_SOURCE_64BIT config-opts: *GLIBC_CONFIG_64BIT - build-options: *GLIBC_BUILD_OPTIONS_64BIT + build-options: + make-install-args: + - DESTDIR=/usr/tmp + - install + cflags: -O3 + cflags-override: true + cxxflags: -O3 + cxxflags-override: true post-install: *GLIBC_POST_INSTALL_64BIT builddir: true - name: cross-test3 diff --git a/BasePlatform/v2/sdk/gcc.patch b/BasePlatform/v2/sdk/gcc.patch deleted file mode 100644 index e2ee1ba..0000000 --- a/BasePlatform/v2/sdk/gcc.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru gcc-9.2.0_/gcc/config/i386/t-linux64 gcc-9.2.0/gcc/config/i386/t-linux64 ---- gcc-9.2.0_/gcc/config/i386/t-linux64 2019-01-01 13:31:55.000000000 +0100 -+++ gcc-9.2.0/gcc/config/i386/t-linux64 2019-12-31 00:49:48.876777126 +0100 -@@ -33,6 +33,6 @@ - comma=, - MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) - MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) --MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu) --MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu) -+MULTILIB_OSDIRNAMES = m64=../lib/x86_64-linux-gnu$(call if_multiarch,:x86_64-linux-gnu) -+MULTILIB_OSDIRNAMES+= m32=../lib32$(call if_multiarch,:i386-linux-gnu) - MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32) diff --git a/BasePlatform/v2/sdk/mingw.yaml b/BasePlatform/v2/sdk/mingw.yaml index c588447..b58cfba 100644 --- a/BasePlatform/v2/sdk/mingw.yaml +++ b/BasePlatform/v2/sdk/mingw.yaml @@ -4,8 +4,8 @@ modules: - name: mingw-headers-32bit sources: &MINGW_SOURCES - type: archive - url: https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v7.0.0.tar.bz2 - sha256: aa20dfff3596f08a7f427aab74315a6cb80c2b086b4a107ed35af02f9496b628 + url: https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v8.0.0.tar.bz2 + sha256: 44c740ea6ab3924bc3aa169bad11ad3c5766c5c8459e3126d44eabb8735a5762 subdir: mingw-w64-headers config-opts: - --target=i686-w64-mingw32 @@ -36,14 +36,26 @@ modules: - name: mingw-gcc-pass1-32bit sources: &GCC_SOURCES - type: archive - url: https://ftp.gnu.org/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.xz - sha256: 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1 + url: https://ftp.gnu.org/gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz + sha256: b8dd4368bb9c7f0b98188317ee0254dd8cc99d1e3a18d0ff146c855fe16c1d8c + - type: archive + url: https://ftp.gnu.org/gnu/gmp/gmp-6.2.0.tar.lz + sha256: 3f33f127bcb6b2c3601676cd3281df45824b148cbf688b73c0fc8248793667d9 + dest: gmp + - type: archive + url: https://ftp.gnu.org/gnu/mpfr/mpfr-4.1.0.tar.xz + sha256: 0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f + dest: mpfr + - type: archive + url: https://ftp.gnu.org/gnu/mpc/mpc-1.2.0.tar.gz + sha256: e90f2d99553a9c19911abdb4305bf8217106a957e3994436428572c8dfe8fda6 + dest: mpc config-opts: &GCC_CONF_32BIT - --target=i686-w64-mingw32 - --disable-multilib - --disable-shared - --enable-cet=auto - - --enable-languages=c,c++,lto + - --enable-languages=c,c++,d,lto - --enable-libstdcxx-time=yes - --enable-libstdcxx-filesystem-ts=yes - --enable-lto @@ -69,7 +81,7 @@ modules: - --disable-multilib - --disable-shared - --enable-cet=auto - - --enable-languages=c,c++,lto + - --enable-languages=c,c++,d,lto - --enable-libstdcxx-time=yes - --enable-libstdcxx-filesystem-ts=yes - --enable-lto @@ -205,7 +217,7 @@ modules: - --disable-multilib - --disable-shared - --enable-cet=auto - - --enable-languages=c,c++,lto + - --enable-languages=c,c++,d,lto - --enable-libstdcxx-time=yes - --enable-libstdcxx-filesystem-ts=yes - --enable-lto @@ -230,7 +242,7 @@ modules: - --disable-multilib - --disable-shared - --enable-cet=auto - - --enable-languages=c,c++,lto + - --enable-languages=c,c++,d,lto - --enable-libstdcxx-time=yes - --enable-libstdcxx-filesystem-ts=yes - --enable-lto diff --git a/BasePlatform/v2/sdk/removeinc.sh b/BasePlatform/v2/sdk/removeinc.sh new file mode 100644 index 0000000..9f67eeb --- /dev/null +++ b/BasePlatform/v2/sdk/removeinc.sh @@ -0,0 +1,12 @@ +#! /usr/bin/env bash + +cd "$1" && +find . | while read i +do + if [ -f "/usr/include/$i" ] + then + rm -v "$i" + else + echo "SKIP: $i" + fi +done \ No newline at end of file diff --git a/BasePlatform/v2/versions.sh b/BasePlatform/v2/versions.sh index 1ecc8bd..8ed7ad0 100644 --- a/BasePlatform/v2/versions.sh +++ b/BasePlatform/v2/versions.sh @@ -1 +1 @@ -export GNOME_VERSION=3.36 \ No newline at end of file +export GNOME_VERSION=3.38 \ No newline at end of file